跳到主要内容

cardanoGetPublicKey

使用要求

  • 固件版本要求
    • UKey Lite 24 / UKey Lite 25: 1.1.0
    • UKey Core 26: 1.1.0

Cardano:获取公钥

根据指定的 BIP32-Ed25519 路径导出扩展公钥,并把结果返回给调用方。用户需要在 Ukey Wallet 上确认导出。

const result = await HardwareSDK.cardanoGetPublicKey(
connectId,
deviceId,
params,
);

参数

可选通用参数

导出单个公钥

  • path - 必需 string | Array<number>,字符串数组最小长度限制为 1更多信息
  • showOnUKey - 可选 boolean,决定是否在设备上显示地址;默认值为 true
  • derivationType - 可选 CardanoDerivationType 枚举,用于指定派生类型;默认值为 ICARUS=1

导出批量公钥

  • bundle - Array 数组对象,包含 pathshowOnUKey 字段。

示例

获取第二个 Cardano 账户的公钥:

HardwareSDK.cardanoGetPublicKey(connectId, deviceId, {
path: "m/1852'/1815'/1'/0/1",
showOnUKey: true,
});

批量获取多个 Cardano 账户的公钥:

HardwareSDK.cardanoGetPublicKey(connectId, deviceId, {
bundle: [
{ path: "m/1852'/1815'/3'/0/0" }, // 第4个派生账户路径
{ path: "m/1852'/1815'/4'/0/0" }, // 第5个派生账户路径
{ path: "m/1852'/1815'/5'/0/0" }, // 第6个派生账户路径
],
});

返回结果

只有一个公钥的结果

{
success: true,
payload: {
path: Array<number>, // 派生路径
serializedPath: string, // 序列化路径
publicKey: string, // 返回的公钥
node: HDPubNode, // 扩展公钥节点
}
}

错误

{
success: false,
payload: {
error: string, // 错误消息
code: number // 错误码
}
}