本页目录
btcGetAddress
Bitcoin:获取地址
派生并返回指定路径的地址。showOnOneKey 为 true 时,用户必须在设备上确认地址。
const result = await HardwareSDK.btcGetAddress(connectId, deviceId, params);参数
导出单个地址
path- 必需string | Array<number>SDK 校验的最小长度为1。 路径格式showOnOneKey- 可选boolean。是否在设备上显示地址,默认为true。coin- 可选string决定 coins.json 文件中指定的网络定义。可以使用币种的shortcut、name或label。如果未设置coin,API 将尝试从path获取网络定义。multisig- 可选 MultisigRedeemScriptType,赎回脚本信息(仅用于多签地址)scriptType- 可选 InputScriptType,地址脚本类型
导出批量地址
bundle- 对象数组,每个对象包含path、showOnOneKey、coin字段。
获取不同类型的地址
不同的 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 | 主网以 bc1q 开头;测试网以 tb1q 开头 |
| Taproot BIP86 | m/86’/0’/x’/x/x | 主网以 bc1p 开头;测试网以 tb1p 开头 |
示例
显示第一个比特币账户的第三个地址:
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 }, // address 1
{ path: "m/49'/0'/0'/0/1", showOnOneKey: false }, // address 2
{ path: "m/49'/0'/0'/0/2", showOnOneKey: false } // address 3
]
});返回结果
单个地址响应
{
success: true,
payload: {
address: string, // displayed address
path: string // serialized BIP32 path
}
}批量地址响应
{
success: true,
payload: [
{ address: string, path: string }, // address 1
{ address: string, path: string }, // address 2
{ address: string, path: string }, // address 3
]
}错误
{
success: false,
payload: {
error: string, // error message
code?: string | number // error code
}
}最后更新于