@ohos/crypto-js简介
@ohos/crypto-js是一个根据crypto-js库移植的鸿蒙三方库,适配源库4.2.0版本,提供了一系列加密算法和安全工具,主要用于执行各种消息摘要计算和对称加解密操作。
@ohos/crypto-js与cryptoFramework规格对比
算法类别 |
算法名称 |
@ohos/crypto-js |
cryptoFramework |
消息摘要 |
MD5 |
支持 |
支持 |
SHA-1 |
支持 |
支持 |
|
SHA-2 |
支持 |
支持 |
|
SHA-3 |
支持 |
不支持 |
|
RIPEMD160 |
支持 |
不支持 |
|
SM3 |
不支持 |
支持 |
|
消息认证码 |
HMAC |
支持 |
支持 |
密钥派生 |
PBKDF2 |
支持 |
支持 |
EVPKDF |
支持 |
不支持 |
|
对称加解密 |
AES |
支持 |
支持 |
DES |
支持 |
不支持 |
|
TripleDES |
支持 |
支持 |
|
RC4 |
支持 |
不支持 |
|
Rabbit |
支持 |
不支持 |
|
Rabbit-legacy |
支持 |
不支持 |
|
SM4 |
不支持 |
支持 |
|
非对称加解密 |
RSA |
不支持 |
支持 |
SM2 |
不支持 |
支持 |
@ohos/crypto-js不支持国密算法和非对称加解密算法,国密算法可以使用三方库@yyz116/sm-crypto
消息摘要算法
MD5算法
MD5(Message-Digest Algorithm 5)是一种广泛使用的散列函数,用于生成128位(32个十六进制数字)的消息摘要。
demo展示
代码实现
根据数据量,可以分段也可以不分段,该算法库目前没有对单次加密的数据量设置大小限制。
建议对于大数据量的对称加解密,采用多次分段的方式传入数据。
- 一次性加密
调用CryptoJS.MD5接口,传入明文,生成密文。
// MD5加密
let mdOutput = CryptoJS.MD5('Message').toString()
- 分段加密
根据数据量,可以分段也可以不分段