Keystore file
password string
privateKey
decrypt phrase
This method will map the current Account object to V3Keystore object.
encrypt Phrase
Using this function to get Harmony format address
private key string
address with length = 40
public key string
address with length = 40
getDerivedKey
NOTE: only scrypt and pbkdf2 are supported.
the passphrase
the key derivation function to be used
params for the kdf
private key String
isValidChecksumAddress
takes hex-encoded string and returns boolean if address is checksumed
Uses JS-native CSPRNG to generate a specified number of bytes.
bytes number to generate
ramdom hex string
raw address
checksumed address
Generated using TypeDoc
@harmony-js/crypto
This package provides a collection of apis related to address management, kestore, encoding, and encrypt/decrypt.
Installation
npm install @harmony-js/crypto
Usage
const { encode, decode, randomBytes, toBech32, fromBech32, HarmonyAddress, generatePrivateKey, getPubkeyFromPrivateKey, getAddressFromPublicKey, getAddressFromPrivateKey, encryptPhrase, decryptPhrase } = require('@harmony-js/crypto'); const { isPrivateKey, isAddress, isPublicKey } = require('@harmony-js/utils');
Address apis
const bytes = randomBytes(20); const addr = new HarmonyAddress(bytes); console.log(addr.checksum); console.log(addr.bech32); console.log(HarmonyAddress.isValidBech32(addr.bech32));
RLP apis
const encoded = '0x89010101010101010101'; const decoded = '0x010101010101010101'; console.log(encode(decoded)); console.log(decode(encoded));
Keystore apis
const prv = generatePrivateKey(); const pub = getPubkeyFromPrivateKey(prv); const addr = getAddressFromPublicKey(pub); const addrPrv = getAddressFromPrivateKey(prv); console.log(isPrivateKey(prv)); console.log(isPublicKey(pub)); console.log(isAddress(addr)); console.log(isAddress(addrPrv));
Encrypt/decrypt apis
const { Wallet } = require('@harmony-js/account'); const myPhrase = new Wallet().newMnemonic(); console.log(myPhrase); const pwd = '1234'; encryptPhrase(myPhrase, pwd).then((value) => { console.log(value); decryptPhrase(JSON.parse(value), pwd).then(value => { console.log(value); }); });