OpenHarmony鸿蒙软总线子系统中使用了多种的加密技术,本篇介绍调用mbedtls的数据加密。
调用mbedtls加密的源码位于:
foundation/communication/dsoftbus/adapter/common/mbedtls/softbus_adapter_crypto.c
这个源码单元,调用mbedTLS库实现了各种加密功能,包括AES-GCM加密/解密、Base64编码/解码、SHA-256哈希、随机数生成以及AES-CTR加密/解密。
主要组件和功能
-
AES-GCM 加密/解密:
-
MbedAesGcmEncrypt
:使用AES-GCM加密数据。 -
MbedAesGcmDecrypt
:使用AES-GCM解密数据。 -
SoftBusEncryptData
:加密数据并处理IV(初始化向量)生成。 -
SoftBusDecryptData
:解密数据并处理IV提取。 -
SoftBusEncryptDataWithSeq
:使用包含序列号的IV加密数据。 -
SoftBusDecryptDataWithSeq
:解密包含序列号的数据。
-
-
AES-CTR 加密/解密:
-
GetCtrAlgorithmByKeyLen
:根据密钥长度确定AES-CTR算法。 -
SoftBusEncryptDataByCtr
:使用AES-CTR加密数据。 - <
-