密钥导出(ArkTS)
本文介绍了如何导出非对称密钥的公钥,支持ECC/RSA/ED25519/X25519/SM2类型(轻量级设备仅支持RSA)。开发步骤包括:1. 设置密钥别名;2. 调用exportKeyItem接口;3. 获取DER格式的公钥数据(符合X.509标准)。示例代码演示了通过UniversalKeystoreKit导出公钥的具体实现方法。
·
文章目录


业务需要获取持久化存储的非对称密钥的公钥时使用,当前支持ECC/RSA/ED25519/X25519/SM2的公钥导出。
说明
轻量级设备仅支持RSA公钥导出。
开发步骤
-
指定密钥别名keyAlias,密钥别名最大长度为128字节。
-
调用接口exportKeyItem,传入参数keyAlias和options。options为预留参数,当前可传入空。
-
返回值为HuksReturnResult类型对象,获取的公钥明文在outData字段中,以标准的X.509规范的DER格式封装,具体请参考公钥材料格式。
import { huks } from '@kit.UniversalKeystoreKit';
/* 1. 设置密钥别名 */
let keyAlias = 'keyAlias';
/* option对象传空 */
let emptyOptions: huks.HuksOptions = {
properties: []
};
try {
/* 2. 导出密钥 */
huks.exportKeyItem(keyAlias, emptyOptions, (error, data) => {
if (error) {
console.error(`callback: exportKeyItem failed, ` + error);
} else {
console.info(`callback: exportKeyItem success, data = ${JSON.stringify(data)}`);
}
});
} catch (error) {
console.error(`callback: exportKeyItem input arg invalid, ` + JSON.stringify(error));
}

更多推荐



所有评论(0)