rif-id-mnemonic
RIF Identity - Mnemonic
npm i @rsksmart/rif-id-mnemonic
Features
- BIP-39 complaint random mnemonic key generation given sentence size
- BIP-39 mnemonic to BIP-32 seed
- BIP-32 seed to BIP-44 compliant RSK multi-account base HD Key
Usage
Generate a mnemonic:
import { generateMnemonic } from '@rsksmart/rif-id-mnemonic'
const mnemonic = generateMnemonic(12)
Get a private key:
import { mnemonicToSeed, seedToRSKHDKey } from '@rsksmart/rif-id-mnemonic'
const seed = await mnemonicToSeed(mnemonic)
const hdKey = seedToRSKHDKey(seed)
const privateKey = hdKey.derive(0).privateKey?.toString('hex')
Or sync:
import { mnemonicToSeedSync, seedToRSKHDKey } from '@rsksmart/rif-id-mnemonic'
const seed = mnemonicToSeedSync(mnemonic)
const hdKey = seedToRSKHDKey(seed)
const privateKey = hdKey.derive(0).privateKey?.toString('hex')
Test
From base repo directory run npm test
or any of the described test script variants.
References