cosmosGetPublicKey
Use requirement
Firmware version required
Touch: 4.0.0
Classic/Mini: 2.10.0
Cosmos: get public key
Retrieves BIP32 extended public derived by given BIP32 path. User is presented with a description of the requested key and asked to confirm the export.
const result = await HardwareSDK.cosmosGetPublicKey(connectId, deviceId, params);
Params
Exporting single public key
path
— requiredstring | Array<number>
minimum length is1
.curve
— optionalstring
of the elliptic curve algorithm, default issecp256k1
showOnOneKey
— optionalboolean
determines if address will be displayed on device. Default is set totrue
Exporting bundle of public keys
bundle
-Array
of Objects withpath
,showOnOneKey
,curve
fields
Example
Return public key of fifth cosmos account:
HardwareSDK.cosmosGetPublicKey(connectId, deviceId, {
path: "m/44'/118'/0'/0/0",
curve: 'secp256k1',
showOnOneKey: true
});
Return a bundle of public keys for multiple cosmos accounts:
HardwareSDK.cosmosGetPublicKey(connectId, deviceId, {
bundle: [
{ path: "m/44'/118'/0'/0/0" }, // account 1
{ path: "m/44'/118'/1'/0/0" }, // account 2
{ path: "m/44'/118'/2'/0/0" }, // account 3
]
});
Result
Result with only one public key
{
success: true,
payload: {
path: string, // hardended path
publicKey: string
}
}
Read more about BIP32 serialization format
Result with bundle of public keys
{
success: true,
payload: [
{ path: serializedPath, publicKey }, // account 1
{ path: serializedPath, publicKey }, // account 2
{ path: serializedPath, publicKey }, // account 3
]
}
Error
{
success: false,
payload: {
error: string, // error message
code: number // error code
}
}
Last updated
Was this helpful?