HarmonyOS 鸿蒙Next AES加密失败,报The input string contains unsupported characters

发布于 1周前 作者 itying888 来自 鸿蒙OS

HarmonyOS 鸿蒙Next AES加密失败,报The input string contains unsupported characters

这边给JsonString进行AES加密失败,报The input string contains unsupported characters

报错信息:

06-05 16:44:40.003   11338-11338  A03D00/JSAPP                    E     Err: Code is -1, message is The input string contains unsupported characters

加密jsonStr为:

06-05 16:43:59.667   11338-11338  A03D00/JSAPP                     I     其他请求功能加密前的字段. {“nonceStr”:“20240605164332851849504473831000”,“txnTm”:“20240605164332”,“osVersion”:“phone/HUAWEI/HUAWEI/ALN/3.0.0.22(Canary3)/ALN-AL00/ALN-AL00/12/default/default”,“appVersion”:“1.0.0”,“appChlNo”:“04”,“txnCode”:“001.ApplyEncryptCode”,“chlNo”:“001”,“dvImei”:“221b486f-2d6f-4eff-9df2-0fdcf08e93a0”,“loginNo”:“13904421823”,“osType”:“01”}

有大佬帮忙看下吗?谢谢


更多关于HarmonyOS 鸿蒙Next AES加密失败,报The input string contains unsupported characters的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复
Uint8Array 类型是二进制数组,报错是输入不匹配,请检查一下是不是解码后的数据类型不匹配。

jsonstring非base64编码后数据,直接使用new Uint8Array(buffer.from(jsonstring, 'utf-8').buffer)转换为Uint8Array对象

更多关于HarmonyOS 鸿蒙Next AES加密失败,报The input string contains unsupported characters的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next AES加密失败,报“The input string contains unsupported characters”通常是由于输入字符串中包含AES加密不支持的字符集或格式。AES加密要求输入数据必须是字节序列,而某些特殊字符或编码格式在转换为字节序列时可能导致错误。

解决此问题,请确保输入字符串符合AES加密的输入要求:

  1. 字符编码:确认输入字符串的字符编码(如UTF-8),并在加密前将其正确转换为字节序列。

  2. 数据清洗:检查输入字符串中是否包含非法字符或控制字符,这些字符在加密过程中可能不被支持。

  3. 输入格式:确保输入字符串不包含任何影响字节序列转换的格式问题,如多余的空格、换行符等。

  4. 加密库使用:确认使用的AES加密库或API版本与HarmonyOS鸿蒙Next兼容,并遵循其使用规范。

如果以上步骤确认无误,但问题依旧存在,可能是加密库或系统环境存在特定限制。此时,建议直接联系鸿蒙官方技术支持团队,但基于当前要求,不直接推荐此路径。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部