HarmonyOS 加解密 demo

HarmonyOS  加解密 demo

HarmonyOS
2024-08-13 15:13:36
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

AES|ECB|PKCS7 demo:

//加密 
async function aesEncrypt(text:string,puKey:string): Promise<string>{ 
  let globalResult = "" 
  try { 
    let cipherAlgName = 'AES128|ECB|PKCS7'; 
    let globalCipher = cryptoFramework.createCipher(cipherAlgName); 
    let symAlgName = 'AES128'; 
    let symKeyGenerator = cryptoFramework.createSymKeyGenerator(symAlgName); 
    let dataUint8Array = base.decodeSync(puKey) 
    let keyBlob: cryptoFramework.DataBlob = { data: dataUint8Array } 
    let promiseSymKey = await symKeyGenerator.convertKey(keyBlob) 
    await globalCipher.init(cryptoFramework.CryptoMode.ENCRYPT_MODE, promiseSymKey, null); 
    let result = await globalCipher.doFinal({data:stringToUint8Array(text)}) 
    globalResult = base.encodeToStringSync(result.data); 
  } catch (err) { 
    console.log(err.message) 
  } 
  return globalResult; 
} 
// 解密 
async function aesDecrypt(text: string, key: string) { 
  let globalResult = "" 
  try { 
    let cipherAlgName = 'AES128|ECB|PKCS7'; 
    let globalCipher = cryptoFramework.createCipher(cipherAlgName); 
    let symAlgName = 'AES128'; 
    let symKeyGenerator = cryptoFramework.createSymKeyGenerator(symAlgName); 
    let dataUint8Array = base.decodeSync(key) 
    let keyBlob: cryptoFramework.DataBlob = { data: dataUint8Array } 
    let promiseSymKey = await symKeyGenerator.convertKey(keyBlob) 
    await globalCipher.init(cryptoFramework.CryptoMode.DECRYPT_MODE, promiseSymKey, null); 
    let plainText: cryptoFramework.DataBlob = { data: base.decodeSync(text) } 
    let result = await globalCipher.doFinal(plainText) 
    globalResult = uint8ArrayToString(result.data); 
    console.log("解密后的明文==》" + globalResult) 
  } catch (err) { 
    console.log(err.message) 
  } 
}
分享
微博
QQ
微信
回复
2024-08-13 21:04:16
相关问题
加解密HmacSha1 、HmacSha256、aes参考Demo
1922浏览 • 1回复 待解决
HarmonyOS 请提供RAS加解密的文档
239浏览 • 1回复 待解决
加解密算法库框架使用
762浏览 • 1回复 待解决
多种加密方式实现加解密
892浏览 • 1回复 待解决
HarmonyOS 文档中没有查找到DES加解密
251浏览 • 1回复 待解决
RSA导入外部密钥实现加解密
669浏览 • 1回复 待解决
HarmonyOS 如何进行DES加解密
327浏览 • 1回复 待解决
HarmonyOS 有RSA加解密相关吗
294浏览 • 0回复 待解决
HarmonyOS AES加解密与java无法通用
340浏览 • 1回复 待解决
求大佬告知如何进行des加解密
1804浏览 • 1回复 待解决
如何进行不同规格的AES加解密
647浏览 • 1回复 待解决
SM4采用OFB模式进行加解密
741浏览 • 1回复 待解决
加解密问题的定位指导
237浏览 • 1回复 待解决
HarmonyOS Sm2和DES加解密问题
264浏览 • 1回复 待解决
如何使用SM4的CBC模式加解密
722浏览 • 1回复 待解决
使用32字节秘钥加解密后报错
1535浏览 • 1回复 待解决
如何使用国密SM2算法进行加解密
3052浏览 • 1回复 待解决