Blockchain
The Blockchain module implements several specific operations for processing blockchain network cryptography and BIP, EIP and SLIP specifications.
The ECDSA signature, for example, is specialized to avoid signature malleabilitywith the restriction of LOW-S
.
Examples of operations available in the Blockchain module:
- Extended Private Key (XPrv) generation in the BIP32 standard.
- Child Key Derivation in the BIP32 and SLIP10 standards.
- Address recovery.
- ECDSA digital signatures, in SECG strict DER standards (BIP62/66 and BIP 146) and Schnorr in BIP340 standard;
- Digital signatures EdDSA curve 25519.
- Signature verification.
- Import and export of keys via various formats (WIF, Hex, Sec1, Xpriv etc).
- Recovery of the public key with different formats (BIP32 Xpub, Sec1 with and without compression, Schnorr BIP340 etc).
- Split and Recover secrets with M from N scheme using SSS (Shamir's Secret Sharing).
- Operations with the curve
alt_bn128
according to EIP-196.
Attention
The blockchain module does not handle or assemble the transaction details for each particular network; this must be left to the application. The function of the HSM is to protect the private key in a secure environment, generate and return a signature according to the parameters passed by the calling application.
Compatible networks
Below is the list of networks whose encryption is compatible with HSM:
Info
The algorithms listed are those currently implemented in the HSM that allow transactions to be signed on the network and do not necessarily cover all the options defined in the network specification. If you have any questions, please feel free to contact Dinamo Networks Support with any queries you may have.
The list is not exhaustive.
Then | Name | Symbol | Alg. Signature in HSM | Curve | Obs |
---|---|---|---|---|---|
Bitcoin | BTC | ECDSA | secp256k1 | ||
Ethereum | ETH | ECDSA | secp256k1 | ||
Tether | USDT | ECDSA | secp256k1 | token on various networks (e.g. Ethereum, Algorand) | |
Binance Coin | BNB | ECDSA | secp256k1 | ||
USD Coin | USDC | ECDSA | secp256k1 | token | |
Solana | SUN | EdDSA | edwards25519 | ||
XRP | XRP | ECDSA, EdDSA | secp256k1, edwards25519 | ||
Terra Classic | LUNC | ECDSA | secp256k1 | ||
Cardano | ADA | EdDSA | edwards25519 | ||
Avalanche | AVAX | ECDSA | secp256k1 | ||
Dogecoin | DOGE | ECDSA | secp256k1 | ||
Binance USD | BUSD | ECDSA | secp256k1 | token | |
Polkadot | DOT | ECDSA, EdDSA | secp256k1, edwards25519 | ||
Shiba Inu | SHIB | ECDSA | secp256k1 | token | |
Wrapped Bitcoin | WBTC | ECDSA, EdDSA | secp256k1, edwards25519 | token | |
Polygon | MATIC | ECDSA | secp256k1 | ||
Cronos | CRO | ECDSA | secp256k1 | ||
Dai | DAI | ECDSA | secp256k1 | token | |
NEAR Protocol | NEAR | ECDSA | secp256k1 | ||
Litecoin | LTC | ECDSA | secp256k1 | ||
TRON | TRX | ECDSA | secp256k1 | ||
ApeCoin | EPA | ECDSA | secp256k1 | token | |
Cosmos | ATOM | ECDSA | secp256k1 | ||
Bitcoin Cash | BCH | ECDSA | secp256k1 | ||
Algorand | SOMETHING | EdDSA | edwards25519 | ||
Brazilian Digital Token | BRZ | ECDSA | secp256k1 | token | |
Celo Brazilian Real | CREAL | ECDSA | secp256k1 | token | |
Celo Dollar | CUSD | ECDSA | secp256k1 | token | |
Axie Infinity | AXS | ECDSA | secp256k1 | token/coin | |
Fantom | FTM | ECDSA | secp256k1 | ||
Uniswap | UNI | ECDSA | secp256k1 | token | |
Stellar | XLM | EdDSA | edwards25519 | ||
Tezos | XTZ | ECDSA, EdDSA | secp256k1, edwards25519 | ||
CELO | CELO | ECDSA | secp256k1 | token/coin | |
Toncoin | TON | EdDSA | edwards25519 | ||
Chainlink | LINK | ECDSA | secp256k1 | token | |
Ethereum Classic | ETC | ECDSA | secp256k1 | ||
BRL1 | BRL1 | ECDSA | secp256k1 | token on the Ethereum and Polygon networks |
The HSM implementation complies with the standards defined in the documentation listed below:
- BIP-32 - Hierarchical Deterministic Wallets
- BIP-62 - Dealing with malleability
- BIP-66 - Strict DER signatures
- BIP-340 - Schnorr Signatures for secp256k1
- SLIP-10 - Universal private key derivation from master private key
- EIP-2 - Homestead Hard-fork Changes
- EIP-196 - Precompiled contracts for addition and scalar multiplication on the elliptic curve alt_bn128
- EIP-197 - Precompiled contracts for optimal ate pairing check on the elliptic curve alt_bn128
- BIP-173 - Base32 address format for native v0-16 witness outputs
- BIP-350 - Bech32m format for v1+ witness addresses
- BIP-13 - Address Format for pay-to-script-hash
- SEP-23 - Strkeys
- CIP-19 - Cardano Addresses
- TEP-2 - TON Addresses
- ADR-28 - Public Key Addresses
- BIP-146 - Dealing with signature encoding malleability
- ERC-55 - Mixed-case checksum address encoding
- BIP-39 - Mnemonic code for generating deterministic keys
Blockchain API
Specific API documentation for the Blockchain module, with functions, classes and examples.
-
C/C++
-
Java
-
.NET
-
Javascript