Blockchain
O módulo Blockchain implementa diversas operações específicas para processamento de criptografia de redes blockchain e especificações BIP, EIP e SLIP.
A assinatura ECDSA por exemplo é especializada para evitar signature malleability, com a a restrição de LOW-S
.
Exemplos de operações disponíveis no módulo Blockchain:
Geração de chaves Extended Private Key (XPrv) no padrão BIP32.
Derivação de chaves filha (Child Key Derivation) nos padrões BIP32 e SLIP10.
Recuperação de endereço.
Assinaturas digitais ECDSA, nos padrões SECG strict DER (BIP62/66 e BIP 146) e Schnorr no padrão BIP340;
Assinaturas digitais EdDSA curva 25519.
Verificação de assinatura.
Importação e exportação de chaves via diversos formatos (WIF, Hex, Sec1, Xpriv etc).
Recuperação da chave pública com diversos formatos (BIP32 Xpub, Sec1 com e sem compressão, Schnorr BIP340 etc).
Split e Recover de segredos com esquema M de N usando SSS (Shamir's Secret Sharing).
Operações com a curva
alt_bn128
, de acordo com a EIP-196.
O módulo blockchain não trata ou monta os detalhes da transação de cada rede em particular; isto deve estar a cargo da aplicação. A função do HSM é proteger a chave privada em ambiente seguro, gerar e retornar uma assinatura conforme os parâmetros passados pela aplicação chamadora.
Redes compatíveis
A seguir a lista das redes cuja criptografia é compatível com o HSM:
Os algoritmos listados são os atualmente implementados no HSM que permitem a assinatura de transações na rede e não necessariamente cobrem todas as opções definidas na especificação da rede. Em caso de dúvida sinta-se à vontade para procurar o suporte da Dinamo Networks e esclarecer suas dúvidas.
Logo | Nome | Símbolo | Alg. Assinatura no HSM | Curva | Obs |
---|---|---|---|---|---|
BTC | ECDSA | secp256k1 | |||
ETH | ECDSA | secp256k1 | |||
USDT | ECDSA | secp256k1 | token em diversas redes (ex.: Ethereum, Algorand) | ||
BNB | ECDSA | secp256k1 | |||
USDC | ECDSA | secp256k1 | token | ||
SOL | EdDSA | edwards25519 | |||
XRP | ECDSA, EdDSA | secp256k1, edwards25519 | |||
LUNC | ECDSA | secp256k1 | |||
ADA | EdDSA | edwards25519 | |||
AVAX | ECDSA | secp256k1 | |||
DOGE | ECDSA | secp256k1 | |||
BUSD | ECDSA | secp256k1 | token | ||
DOT | ECDSA, EdDSA | secp256k1, edwards25519 | |||
SHIB | ECDSA | secp256k1 | token | ||
WBTC | ECDSA, EdDSA | secp256k1, edwards25519 | token | ||
MATIC | ECDSA | secp256k1 | |||
CRO | ECDSA | secp256k1 | |||
DAI | ECDSA | secp256k1 | token | ||
NEAR | ECDSA | secp256k1 | |||
LTC | ECDSA | secp256k1 | |||
TRX | ECDSA | secp256k1 | |||
APE | ECDSA | secp256k1 | token | ||
ATOM | ECDSA | secp256k1 | |||
BCH | ECDSA | secp256k1 | |||
ALGO | EdDSA | edwards25519 | |||
BRZ | ECDSA | secp256k1 | token | ||
CREAL | ECDSA | secp256k1 | token | ||
CUSD | ECDSA | secp256k1 | token | ||
AXS | ECDSA | secp256k1 | token/coin | ||
FTM | ECDSA | secp256k1 | |||
UNI | ECDSA | secp256k1 | token | ||
XLM | EdDSA | edwards25519 | |||
XTZ | ECDSA, EdDSA | secp256k1, edwards25519 | |||
CELO | ECDSA | secp256k1 | token/coin | ||
TON | EdDSA | edwards25519 | |||
LINK | ECDSA | secp256k1 | token |
A implementação do HSM está de acordo com os padrões definidos na documentação listada abaixo:
BIP32 - Hierarchical Deterministic Wallets
BIP62 - Dealing with malleability
BIP66 - Strict DER signatures
BIP340 - Schnorr Signatures for secp256k1
SLIP10 - 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
Last updated