@conflux-dev/conflux-address-js
v2.0.1
Published
The encoder and decoder for Conflux Network address
Downloads
5,861
Readme
conflux-address-js
The simple encoder and decoder for Conflux address.
Check CIP-37 for the protocols.
Install
$ npm install @conflux-dev/conflux-address-js
Opt-in for performance
To gain a address conversion performance boost, you can install @conflux-dev/conflux-address-rust
in your project. Which will be used to replace the purejs version and can gain a 10-100
performance boost.
$ npm install --save-optional @conflux-dev/conflux-address-rust
Usage
Encoding
const confluxAddr = require('@conflux-dev/conflux-address-js')
const hexBuffer = Buffer.from('106d49f8505410eb4e671d51f7d96d2c87807b09', 'hex')
const netId = 1029 // Conflux main-net
console.log(confluxAddr.encode(hexBuffer, netId))
// cfx:aajg4wt2mbmbb44sp6szd783ry0jtad5bea80xdy7p
console.log(confluxAddr.encode(hexBuffer, netId, true)) // verbose mode to generate address with type
// CFX:TYPE.USER:AAJG4WT2MBMBB44SP6SZD783RY0JTAD5BEA80XDY7P
Decoding
const confluxAddr = require('@conflux-dev/conflux-address-js')
console.log(confluxAddr.decode('cfx:aajg4wt2mbmbb44sp6szd783ry0jtad5bea80xdy7p'))
/*
{ hexAddress:
<Buffer 10 6d 49 f8 50 54 10 eb 4e 67 1d 51 f7 d9 6d 2c 87 80 7b 09>,
netId: 1029,
type: 'user' }
*/
console.log(confluxAddr.decode('CFX:TYPE.USER:AAJG4WT2MBMBB44SP6SZD783RY0JTAD5BEA80XDY7P'))
/*
{ hexAddress:
<Buffer 10 6d 49 f8 50 54 10 eb 4e 67 1d 51 f7 d9 6d 2c 87 80 7b 09>,
netId: 1029,
type: 'user' }
*/
API
encode
: Low level encode methoddecode
: Low level decode methodisValidCfxAddress
: Return a boolean value indicating whether the address is validverifyCfxAddress
: Check whether a address is valid, if not will throw an errorhasNetworkPrefix
: Check a string whether has an network prefixsimplifyCfxAddress
: Return a non verbose addressshortenCfxAddress
: Return a shorten addressisZeroAddress
: Check whether a address is zero addressisInternalContractAddress
: Check where a address is Conflux InternalContract addressisValidHexAddress
: Check whether a address is valid hex addressisValidCfxHexAddress
: Check where a address is valid Conflux hex address