HarmonyOS 鸿蒙Next 加密程序崩溃

发布于 1周前 作者 phonegap100 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 加密程序崩溃

//加密
function tcpEncrypt(value: string, iv: string, key: string): Uint8Array {
let cipher = cryptoFramework.createCipher(‘AES128|CBC|NoPadding’);
let siv = genIvParamsSpec(iv);
let symKey = genSymKeyByData(StrUtil.strToUint8Array(key));
cipher.initSync(cryptoFramework.CryptoMode.ENCRYPT_MODE, symKey, siv);
let plainText: cryptoFramework.DataBlob = { data: new Uint8Array(buffer.from(value, ‘utf-8’).buffer) };
let cipherData = cipher.doFinalSync(plainText);这一行崩溃
return cipherData.data;
}

崩溃日志:

Device info:HUAWEI Mate 60 Pro

Build info:ALN-AL00 5.0.0.31(SP66DEVC00E32R4P7log)

Fingerprint:64e7df727a31d63afdfc934aa8f6512c23eb6f349aed7ba44761e685fa6cd869

Module name:com.yedone.demo

Version:1.0.0

VersionCode:1000000

PreInstalled:No

Foreground:Yes

Pid:41288

Uid:20020022

Reason:Error

Error name:Error

Error message:do final fail!

Error code:

Stacktrace:

at tcpEncrypt (entry/src/main/ets/utils/Aes.ets:116:20)

at tcpEncryptData (entry/src/main/ets/utils/Aes.ets:14:10)

at toBuffer (entry/src/main/ets/utils/SQHeaderEx.ets:81:33)

at send (entry/src/main/ets/utils/TcpSocket.ets:96:20)

at getTcpPublicKey (entry/src/main/ets/utils/CommonUtil.ets:60:5)

at anonymous (entry/src/main/ets/utils/TcpSocket.ets:42:7)


更多关于HarmonyOS 鸿蒙Next 加密程序崩溃的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于HarmonyOS 鸿蒙Next 加密程序崩溃的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


针对您提到的HarmonyOS 鸿蒙Next加密程序崩溃的问题,以下是一些可能的解决方案要点:

  1. 检查加密算法实现:首先确认加密算法的实现在鸿蒙系统上是否存在不兼容或错误。由于鸿蒙系统对安全性能有严格要求,某些加密算法的实现可能需要特定的系统调用或库支持。

  2. 内存管理:加密程序通常涉及大量数据处理,确保内存分配和释放正确无误。鸿蒙系统对内存管理有独特机制,不当的内存操作可能导致程序崩溃。

  3. 异常处理:增强程序的异常处理能力,确保在加密过程中遇到错误时能够妥善处理,避免程序崩溃。

  4. 系统日志:查看鸿蒙系统的日志,获取程序崩溃时的详细错误信息,这有助于定位问题原因。

  5. 版本兼容性:确认您的加密程序是否与当前鸿蒙系统版本兼容。鸿蒙系统不断更新,新版本可能引入了与旧版本不兼容的变更。

  6. 资源竞争:如果程序是多线程的,检查是否存在资源竞争问题,如多个线程同时访问加密资源导致冲突。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部