HarmonyOS 鸿蒙Next cryptoFramework "AES/GCM/NoPadding" 的 aad 和 authTag
HarmonyOS 鸿蒙Next cryptoFramework “AES/GCM/NoPadding” 的 aad 和 authTag
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/crypto-sm4-sym-encrypt-decrypt-gcm-V5
使用AES GCM 解密是需要aad 和 authTag两个参数。
但是用其它语言AES/GCM加解密的时候只需要key和iv,比如kotlin:
val cipher = Cipher.getInstance(“AES/GCM/NoPadding”)
cipher.init(Cipher.DECRYPT_MODE, secretKeySpec, ivParameterSpec)
val decryptedByteValue = cipher.doFinal(xxx)
那么aad 和 authTag是哪里来的,用cryptoFramework怎么实现只有key和iv解密?
更多关于HarmonyOS 鸿蒙Next cryptoFramework "AES/GCM/NoPadding" 的 aad 和 authTag的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
authTag 是在doFinal获取
aad 是八位的iv
authTag is obtained by doFinal() in encryption and passed in params of init() in decryption
更多关于HarmonyOS 鸿蒙Next cryptoFramework "AES/GCM/NoPadding" 的 aad 和 authTag的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙系统中,cryptoFramework提供了对多种加密算法的支持,其中包括AES/GCM模式。AES/GCM(Galois/Counter Mode)是一种基于分组密码的认证加密模式,它结合了数据加密和认证,确保了数据的机密性、完整性和真实性。
对于AES/GCM/NoPadding配置,aad(Additional Authenticated Data,附加认证数据)是指在加密过程中不需要加密但需要进行认证的数据部分。这部分数据在加密和解密过程中都会被验证,以确保其未被篡改。
authTag(认证标签)是AES/GCM加密过程中生成的一个固定长度的标签,用于验证加密数据的完整性和真实性。在解密过程中,系统会验证authTag以确保数据在传输过程中没有被篡改或损坏。
在HarmonyOS的cryptoFramework中,使用AES/GCM/NoPadding时,你需要明确指定aad和authTag的处理方式。通常,这涉及到在加密时设置aad,并在解密时提供正确的authTag以供验证。
请注意,正确处理aad和authTag对于确保AES/GCM的安全性至关重要。如果aad或authTag处理不当,可能会导致加密数据的安全性受到威胁。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html