TypeScript library for working with ICP public keys.
This library contains TypeScript translations of the following functions:
ic_secp256k1::PublicKey::derive_subkey_with_chain_code()
- COMING:
ic_ed25519::PublicKey::derive_subkey_with_chain_code()
npm install @dfinity/ic-pub-key
To derive one public key from another:
npx @dfinity/ic-pub-key derive ecdsa secp256k1 --pubkey 02b84ff3f88329a887657d0309bd1a1af9e37601e5d1a535d6fe7d42e37f79f40a --chaincode 212891bc032f28d369bacf39dc369feb516eced9a3d83498246aead1546f8cd1 --derivationpath fee/fie/foo/fum
The command line also includes tools for working with the Chain Fusion Signer. For example, to get the Ethereum address of a principal on the chain fusion signer:
npx @dfinity/ic-pub-key signer eth address -u nggqm-p5ozz-i5hfv-bejmq-2gtow-4dtqw-vjatn-4b4yw-s5mzs-i46su-6ae
Or to get the Bitcoin mainnet address of a principal on the chain fusion signer:
npx @dfinity/ic-pub-key signer btc address -u nggqm-p5ozz-i5hfv-bejmq-2gtow-4dtqw-vjatn-4b4yw-s5mzs-i46su-6ae -n mainnet