@secux/protocol-device
SecuX Hardware Wallet device protocol API
Usage
import { SecuxDevice } from "@secux/protocol-device";
First, create instance of ITransport
Examples
- Get version infomation of SecuX Hardware Wallet
const data = SecuxDevice.prepareGetVersion();
const response = await device.Exchange(data);
const info = SecuxDevice.resolveVersion(response);
console.log(info.transportVersion);
console.log(info.seFwVersion);
console.log(info.mcuFwVersion);
console.log(info.bootloaderVersion);
- Get wallet information of SecuX Hardware Wallet
const data = SecuxDevice.prepareGetWalletInfo();
const response = await device.Exchange(data);
const info = SecuxDevice.resolveWalletInfo(response);
console.log(info.walletName);
- Show address on SecuX Hardware Wallet
// show Bitcoin address, and need user confirm
const data = SecuxDevice.prepareShowAddress("m/44'/0'/0'/0/0", {
needToConfirm: true,
chainId: 0
});
const response = await device.Exchange(data);
SecuxDevice.resolveResponse(response);
// show Ethereum address without user confirmation
const data = SecuxDevice.prepareShowAddress("m/44'/60'/0'/0/0", {
needToConfirm: false,
chainId: 1
});
const response = await device.Exchange(data);
SecuxDevice.resolveResponse(response);
API Reference
SecuX protocol for device management
Kind: global class
-
SecuxDevice
-
.prepareGetVersion() ⇒
communicationData
-
.resolveVersion(response) ⇒
VersionInfo
-
.prepareGetWalletInfo() ⇒
communicationData
-
.resolveWalletInfo(response) ⇒
WalletInfo
-
.prepareShowAddress(path, [option]) ⇒
communicationData
- .resolveResponse(response)
-
.prepareGetVersion() ⇒
communicationData
SecuxDevice.prepareGetVersion() ⇒ Get version information command.
Returns: communicationData
- data for sending to device
VersionInfo
SecuxDevice.resolveVersion(response) ⇒ Resolve version information from device.
Returns: VersionInfo
- object
Param | Type | Description |
---|---|---|
response | communicationData |
data from device |
communicationData
SecuxDevice.prepareGetWalletInfo() ⇒ Get wallet information command.
Returns: communicationData
- data for sending to device
WalletInfo
SecuxDevice.resolveWalletInfo(response) ⇒ Resolve wallet information from device.
Returns: WalletInfo
- object
Param | Type | Description |
---|---|---|
response | communicationData |
data from device |
communicationData
SecuxDevice.prepareShowAddress(path, [option]) ⇒ Show address command.
Returns: communicationData
- data for sending to device
Param | Type | Description |
---|---|---|
path | string |
BIP32 |
[option] | AddressOption |
SecuxDevice.resolveResponse(response)
Resolve response from device.
Param | Type | Description |
---|---|---|
response | communicationData |
data from device |
VersionInfo
Properties
Name | Type |
---|---|
transportVersion | number |
seFwVersion | string |
mcuFwVersion | string |
bootloaderVersion | string |
WalletInfo
Properties
Name | Type |
---|---|
walletIndex | number |
walletName | string |
walletStatus | number |
© 2018-21 SecuX Technology Inc.
authors:
andersonwu@secuxtech.com