Socket
Book a DemoInstallSign in
Socket

@iov/keycontrol

Package Overview
Dependencies
Maintainers
4
Versions
90
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@iov/keycontrol

Keyrings and Keycontroller for safe cryptography

latest
Source
npmnpm
Version
2.5.0
Version published
Maintainers
4
Created
Source

@iov/keycontrol

npm version

Keycontrol manages all private keys and keeps them safe.

KeyBase Diagram

Please stick to using the public API even if you are importing from JavaScript, where private is not enforced.

Getting started

Please see the following documents for how to get started using the @iov/keycontrol classes:

API Documentation

https://iov-one.github.io/iov-core-docs/latest/iov-keycontrol/

As you see above, everything goes through the UserProfile, which is the main entry point into this package.

The main wallet types you can add are

  • Ed25519Wallet, which stores arbitrary Ed25519 keypairs.
  • Ed25519HdWallet, which generates HD keys à la SLIP-0010 (BIP-0032), with an arbitrary path (not chain-dependent).
  • LedgerSimpleAddressWallet which allows you to connect to a Ledger device for signing BNS transaction.

HD derivation paths

Ed25519HdWallet and Secp256k1HdWallet use SLIP-0010 HD key derivation. The class HdPaths can be used to generate derivation paths.

CoinDerivation path for
account index a = 0,1,…
Code
IOVm/44'/234'/a'HdPaths.iov(a)
Ethereumm/44'/60'/0'/0/aHdPaths.ethereum(a)
Liskm/44'/134'/a'HdPaths.bip44(134, a)
RISEm/44'/1120'/a'HdPaths.bip44(1120, a)
Stellarm/44'/148'/a'HdPaths.bip44(148, a)

License

This package is part of the IOV-Core repository, licensed under the Apache License 2.0 (see NOTICE and LICENSE).

FAQs

Package last updated on 17 Jun 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts