UserCryptoManager
用户加密模块
支持情况:
方法
getLatestUserKey
获取最新的用户加密密钥
支持情况:
(option: Option) => Promise<SuccessCallbackResult>
参数 | 类型 |
---|---|
option | Option |
示例代码
const userCryptoManager = Taro.getUserCryptoManager()
userCryptoManager.getLatestUserKey({
success: res => {
const { encryptKey, iv, version, expireTime } = res
console.log(encryptKey, iv, version, expireTime)
}
})
getRandomValues
获取密码学安全随机数
支持情况:
(option: Option) => void
参数 | 类型 |
---|---|
option | Option |
示例代码
Taro.getUserCryptoManager().getRandomValues({
length: 6 // 生成 6 个字节长度的随机数,
success: res => {
console.log(Taro.arrayBufferToBase64(res.randomValues)) // 转换为 base64 字符串后打印
}
})
参数
getLatestUserKey
Option
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
success | (res: SuccessCallbackResult) => void | 否 | 接口调用成功的回调函数 |
fail | (res: TaroGeneral.CallbackResult) => void | 否 | 接口调用失败的回调函数 |
complete | (res: SuccessCallbackResult) => void | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
SuccessCallbackResult
参数 | 类型 | 说明 |
---|---|---|
encryptKey | string | 用户加密密钥 |
iv | string | 密钥初始向量 |
version | number | 密钥版本 |
expireTime | number | 密钥过期时间 |
getRandomValues
Option
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
length | number | 是 | 整数,生成随机数的字节数,最大 1048576 |
success | (res: SuccessCallbackResult) => void | 否 | 接口调用成功的回调函数 |
fail | (res: TaroGeneral.CallbackResult) => void | 否 | 接口调用失败的回调函数 |
complete | (res: SuccessCallbackResult) => void | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
SuccessCallbackResult
参数 | 类型 | 说明 |
---|---|---|
randomValues | ArrayBuffer | 随机数内容,长度为传入的字节数 |
API 支持度
API | 微信小程序 | H5 | React Native | Harmony |
---|---|---|---|---|
UserCryptoManager | ✔️ | |||
UserCryptoManager.getLatestUserKey | ✔️ | |||
UserCryptoManager.getRandomValues | ✔️ |