btcGetAddress
Bitcoin:获取地址
显示指定 BIP32 路径派生的地址,并返回给调用者。用户需要在 OneKey 上确认导出。
const result = await HardwareSDK.btcGetAddress(connectId, deviceId, params);参数
导出单个地址
path- 必需string | Array<number>最小长度为 3。更多信息showOnOneKey- 可选boolean决定是否在设备上显示地址。默认设置为truecoin- 可选string决定 coins.json 文件中指定的网络定义。可以使用币种的shortcut、name或label。如果未设置coin,API 将尝试从path获取网络定义。multisig- 可选 MultisigRedeemScriptType,赎回脚本信息(仅用于多签地址)scriptType- 可选 InputScriptType,地址脚本类型
导出批量地址
bundle- 包含path、showOnOneKey、coin字段的对象Array
获取不同类型的地址
不同的 BTC 地址类型需要不同的派生路径参数。
| 类型 | 路径 | 示例 |
|---|---|---|
| Legacy BIP44 | m/44’/0’/x’/x/x | 以 “1” 开头,由 26 到 35 个字符组成 |
| Nested SegWit BIP49 | m/49’/0’/x’/x/x | 以 “3” 开头,由 26 到 35 个字符组成 |
| Native SegWit BIP84 | m/84’/0’/x’/x/x | 以 “bc1” 或 “tb1” 开头,由 41 到 62 个字符组成 |
| Taproot BIP86 | m/86’/0’/x’/x/x | 以 “bc1” 开头,由 41 到 62 个字符组成 |
示例
显示第一个比特币账户的第三个地址:
HardwareSDK.btcGetAddress(connectId, deviceId, {
path: "m/49'/0'/0'/0/2",
coin: "btc"
});返回第一个比特币账户的批量地址,不在设备上显示:
HardwareSDK.btcGetAddress(connectId, deviceId, {
bundle: [
{ path: "m/49'/0'/0'/0/0", showOnOneKey: false }, // 地址 1
{ path: "m/49'/0'/0'/0/1", showOnOneKey: false }, // 地址 2
{ path: "m/49'/0'/0'/0/2", showOnOneKey: false } // 地址 3
]
});返回结果
只有一个地址的结果
{
success: true,
payload: {
address: string, // 显示的地址
path: Array<number> // 强化路径
}
}批量地址的结果
{
success: true,
payload: [
{ address: string, path: Array<number> }, // 地址 1
{ address: string, path: Array<number> }, // 地址 2
{ address: string, path: Array<number> }, // 地址 3
]
}错误
{
success: false,
payload: {
error: string, // 错误信息
code: number // 错误码
}
}Last updated on