3.6.3 • Published 1 month ago
@secux/protocol-device
Licence
Apache-2.0
Version
3.6.3
Deps
1
Size
669 kB
Vulns
0
Weekly
0
@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() ⇒
SecuxDevice.prepareGetVersion() ⇒ communicationData
Get version information command.
Returns: communicationData - data for sending to device
SecuxDevice.resolveVersion(response) ⇒ VersionInfo
Resolve version information from device.
Returns: VersionInfo - object
| Param | Type | Description |
|---|---|---|
| response | communicationData |
data from device |
SecuxDevice.prepareGetWalletInfo() ⇒ communicationData
Get wallet information command.
Returns: communicationData - data for sending to device
SecuxDevice.resolveWalletInfo(response) ⇒ WalletInfo
Resolve wallet information from device.
Returns: WalletInfo - object
| Param | Type | Description |
|---|---|---|
| response | communicationData |
data from device |
SecuxDevice.prepareShowAddress(path, [option]) ⇒ communicationData
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