HarmonyOS中HmacSHA1加签算法实现?
kotlin:
fun genHMAC(data: ByteArray, key: ByteArray): ByteArray? {
var result: ByteArray? = null
try {
//根据给定的字节数组构造一个密钥,第二参数指定一个密钥算法的名称
val signinKey = SecretKeySpec(key, "HmacSHA1")
//生成一个指定 Mac 算法 的 Mac 对象
val mac: Mac = Mac.getInstance("HmacSHA1")
//用给定密钥初始化 Mac 对象
mac.init(signinKey)
//完成 Mac 操作
val rawHmac: ByteArray = mac.doFinal(data)
result = bytesToHexStr(rawHmac).toByteArray()
} catch (e: NoSuchAlgorithmException) {
e.printStackTrace()
} catch (e: InvalidKeyException) {
e.printStackTrace()
}
return result
}
HMAC-SHA1 签名生成时java版本与ArkTS版本生成的结果不一致,请问下ArkTS版本这里如何使用HMAC-SHA1 签名
具体参考代码如下: