@secux/protocol-device
TypeScript icon, indicating that this package has built-in type declarations

3.6.1 • Public • Published

lerna view on npm npm module downloads

@secux/protocol-device

SecuX Hardware Wallet device protocol API

Usage

import { SecuxDevice } from "@secux/protocol-device";

First, create instance of ITransport


Examples

  1. 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);
  1. 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);
  1. 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

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

Dependents (4)

Package Sidebar

Install

npm i @secux/protocol-device

Weekly Downloads

9

Version

3.6.1

License

Apache-2.0

Unpacked Size

725 kB

Total Files

29

Last publish

Collaborators

  • rus7hex