API Java
HSM Dinamo
Cargando...
Buscando...
No se han encontrado entradas
Módulo Blockchain

Descripción detallada

Operaciones de apoyo a la seguridad de las estructuras basadas en Blockchain.

Véase Documentación técnica de HSM sobre detalles de funcionamiento, especificaciones utilizadas, licencias e nombre comercial del módulo.

Operaciones de apoyo a la seguridad de las estructuras basadas en Blockchain. Más...

Funciones

byte[] bchainSignHash (byte bType, byte bHashMode, byte[] pbHash, String strPk) throws TacException
 Firma un hash utilizando el módulo blockchain.
 
byte[] bchainEdDsaSign (byte bType, String szCtxStr, byte[] pbData, String strPk) throws TacException
 Genera una firma EdDsa utilizando el módulo blockchain.
 
void bchainVerify (byte bSigType, byte bHashMode, byte[] pbHash, byte[] pbSig, byte bInPbkType, byte[] pbInPbk) throws TacException
 Verifica una firma utilizando el módulo blockchain.
 
void bchainEdDsaVerify (byte bType, String szCtxStr, byte[] pbData, byte bPbkType, byte[] pbPbk, byte[] pbSig) throws TacException
 Verifica una firma EdDsa utilizando el módulo blockchain.
 
byte[] bchainGetPubKey (byte bType, String jszId) throws TacException
 Recuperar una clave pública a partir de una clave privada utilizando el módulo blockchain.
 
byte[] bchainGetAddress (byte bType, byte bVer, String szHrp, String szPk) throws TacException
 Recupera la dirección de una clave utilizando el módulo blockchain.
 
BchainKeyInfo bchainGetKeyInfo (String szId) throws TacException
 Recupera las propiedades de una clave utilizando el módulo blockchain.
 
byte[] bchainHashData (byte bMode, byte[] pbData) throws TacException
 Calcula un hash utilizando el módulo blockchain.
 
BchainKeyInfo bchainCreateCkdBip32 (byte bVer, int dwIndex, int dwAttributes, String szPar, String szDst) throws TacException
 Deriva una clave secundaria BIP32 XPrv en el módulo blockchain.
 
BchainKeyInfo bchainCreateCkdEd25519 (byte bCkdType, byte bVer, int dwIndex, int dwAttributes, String szPar, String szDst) throws TacException
 Deriva una clave secundaria Ed25519 XPrv según el estándar BIP32/SLIP-0010 en el módulo blockchain.
 
BchainKeyInfo bchainCreateCkdP256 (byte bCkdType, byte bVer, int dwIndex, int dwAttributes, String szPar, String szDst) throws TacException
 Deriva una clave secundaria P-256 XPrv según el estándar BIP32/SLIP-0010 en el módulo blockchain.
 
void bchainCreateXPrv (byte bType, int dwAttributes, String szId, byte[] pbData) throws TacException
 Crea una clave XPrv en el módulo blockchain.
 
void bchainCreateXPrv (byte bType, byte bVer, int dwAttributes, String szId) throws TacException
 Crea una clave XPrv sin datos de semilla en el módulo blockchain.
 
void bchainCreateXPrvBip32Seed (byte bVer, int dwAttributes, String szId, byte[] pbSeed) throws TacException
 Crea una clave XPrv a partir de una semilla BIP32 en el módulo blockchain.
 
void bchainCreateXPrvBip39Seed (byte bVer, int dwAttributes, String szId, String szSeed, String szPwd) throws TacException
 Crea una clave XPrv a partir de una semilla BIP39 en el módulo blockchain.
 

Funciones

bchainSignHash()

byte[] bchainSignHash ( byte bType,
byte bHashMode,
byte[] pbHash,
String strPk ) throws TacException

Firma un hash utilizando el módulo blockchain.

Parámetros
bTypeTipo de suscripción que se va a generar. Puede ser uno de los valores siguientes.
Valor Significado
TacNDJavaLib.DN_BCHAIN_SIG_DER_ECDSA Firma DER, en el formato v || DER. SECG!SEC1 DER estricto con S baja como se describe en BIP62/66, BIP146, EIP2. Con 'v' de un tamaño de 1 byte. v' es el bit de paridad de 'r' y puede tener los valores 0 ó 1.
TacNDJavaLib.DN_BCHAIN_SIG_RAW_ECDSA Firma RAW, en el formato v || r || s. v' tiene un tamaño de 1 byte y 'r' y 's' tienen un tamaño de 32 bytes cada uno. v' es el bit de paridad de 'r' y puede tener los valores 0 o 1.
TacNDJavaLib.DN_BCHAIN_SIG_BIP340 Firma BIP340 - Schnorr 64 bytes.
bHashModeTipo hash.
Valor Significado
TacNDJavaLib.DN_BCHAIN_HASH_BTC_H160 Bitcoin H160.
TacNDJavaLib.DN_BCHAIN_HASH_RIPEMD160 RIPEMD160.
TacNDJavaLib.DN_BCHAIN_HASH_SHA256 SHA256
TacNDJavaLib.DN_BCHAIN_HASH_BTC_SHA256_2X Bitcoin SHA256 2x.
TacNDJavaLib.DN_BCHAIN_HASH_KECCAK256 KECCAK256.
TacNDJavaLib.DN_BCHAIN_HASH_BLAKE2B224 Blake2b 224.
TacNDJavaLib.DN_BCHAIN_HASH_BLAKE2B256 Blake2b 256.
pbHashHash a firmar.
strPkIdentificador de la clave privada.
Devolución
Firma en el formato especificado en bType.
Excepciones
TacException

◆ bchainEdDsaSign()

byte[] bchainEdDsaSign ( byte bType,
String szCtxStr,
byte[] pbData,
String strPk ) throws TacException

Genera una firma EdDsa utilizando el módulo blockchain.

Parámetros
bTypeTipo de suscripción que se va a generar. Puede ser uno de los valores siguientes.
Valor Significado
TacNDJavaLib.DN_BCHAIN_EDDSA_SIG_PURE EdDsa Pure Signature.
TacNDJavaLib.DN_BCHAIN_EDDSA_SIG_ALGORAND Firma del algoritmo EdDsa.
TacNDJavaLib.DN_BCHAIN_EDDSA_SIG_XRP EdDsa XRP Ledger/Firma Ripple.
TacNDJavaLib.DN_BCHAIN_EDDSA_SIG_SOL Firma EdDsa Solana.
TacNDJavaLib.DN_BCHAIN_EdDSA_SIG_XLM Firma EdDsa Stellar.
TacNDJavaLib.DN_BCHAIN_EdDSA_SIG_ADA Firma EdDsa Cardano.
TacNDJavaLib.DN_BCHAIN_EdDSA_SIG_DOT Firma EdDsa Polkadot.
TacNDJavaLib.DN_BCHAIN_EdDSA_SIG_XTZ Firma EdDsa Tezos codificada en b58.
TacNDJavaLib.DN_BCHAIN_EdDSA_SIG_XTZ_PH Firma EdDsa Tezos utilizando blake2b-256.
szCtxStrCadena de contexto tal y como se define en RFC-8032. Utilizar TacNDJavaLib.DN_BCHAIN_EDDSA_CSTR_UNUSED cuando no sea aplicable.
pbDataDatos a firmar.
strPkNombre de la clave privada.
Devolución
Firma en el formato especificado en bType.
Excepciones
TacException

◆ bchainVerify()

void bchainVerify ( byte bSigType,
byte bHashMode,
byte[] pbHash,
byte[] pbSig,
byte bInPbkType,
byte[] pbInPbk ) throws TacException

Verifica una firma utilizando el módulo blockchain.

Parámetros
bSigTypeTipo de suscripción. Puede ser uno de los siguientes valores.
Valor Significado
TacNDJavaLib.DN_BCHAIN_SIG_DER_ECDSA Firma DER, en el formato v || DER.
TacNDJavaLib.DN_BCHAIN_SIG_RAW_ECDSA Firma RAW, en formato v || r || s.
TacNDJavaLib.DN_BCHAIN_SIG_BIP340 Firma BIP340 - Schnorr 64 bytes.
bHashModeTipo de hash. Puede ser uno de los siguientes valores.
Valor Significado
TacNDJavaLib.DN_BCHAIN_HASH_BTC_H160 Bitcoin H160.
TacNDJavaLib.DN_BCHAIN_HASH_RIPEMD160 RIPEMD160.
TacNDJavaLib.DN_BCHAIN_HASH_SHA256 SHA256.
TacNDJavaLib.DN_BCHAIN_HASH_BTC_SHA256_2X Bitcoin SHA256 2x.
TacNDJavaLib.DN_BCHAIN_HASH_KECCAK256 KECCAK256.
TacNDJavaLib.DN_BCHAIN_HASH_BLAKE2B224 Blake2b 224.
TacNDJavaLib.DN_BCHAIN_HASH_BLAKE2B256 Blake2b 256.
pbHashHash calculado según la información de bHashMode.
pbSigLa firma debe verificarse de acuerdo con lo indicado en bSigType.
bInPbkTypeFormato de la clave pública. Puede ser uno de los valores siguientes.
Valor Significado
TacNDJavaLib.DN_BCHAIN_PBK_SEC1_UNCOMP ECDSA SEC1 sin comprimir.
TacNDJavaLib.DN_BCHAIN_PBK_SEC1_COMP ECDSA SEC1 comprimido.
TacNDJavaLib.DN_BCHAIN_PBK_BIP340 Schnorr, BIP-340.
TacNDJavaLib.DN_BCHAIN_PBK_ED25519 Ed25519.
pbInPbkClave pública utilizada para la verificación.
Excepciones
TacException

◆ bchainEdDsaVerify()

void bchainEdDsaVerify ( byte bType,
String szCtxStr,
byte[] pbData,
byte bPbkType,
byte[] pbPbk,
byte[] pbSig ) throws TacException

Verifica una firma EdDsa utilizando el módulo blockchain.

Parámetros
bTypeTipo de firma a verificar. Puede ser uno de los valores siguientes.
Valor Significado
TacNDJavaLib.DN_BCHAIN_EDDSA_SIG_PURE EdDsa Pure Signature.
TacNDJavaLib.DN_BCHAIN_EDDSA_SIG_ALGORAND Firma del algoritmo EdDsa.
TacNDJavaLib.DN_BCHAIN_EDDSA_SIG_XRP EdDsa XRP Ledger/Firma Ripple.
TacNDJavaLib.DN_BCHAIN_EDDSA_SIG_SOL Firma EdDsa Solana.
TacNDJavaLib.DN_BCHAIN_EdDSA_SIG_XLM Firma EdDsa Stellar.
TacNDJavaLib.DN_BCHAIN_EdDSA_SIG_ADA Firma EdDsa Cardano.
TacNDJavaLib.DN_BCHAIN_EdDSA_SIG_DOT Firma EdDsa Polkadot.
TacNDJavaLib.DN_BCHAIN_EdDSA_SIG_XTZ Firma EdDsa Tezos codificada en b58.
TacNDJavaLib.DN_BCHAIN_EdDSA_SIG_XTZ_PH Firma EdDsa Tezos utilizando blake2b-256.
szCtxStrCadena de contexto tal y como se define en RFC-8032. Utilizar TacNDJavaLib.DN_BCHAIN_EDDSA_CSTR_UNUSED cuando no sea aplicable.
pbDataDatos por verificar.
bPbkTypeFormato de la clave pública. Puede ser uno de los valores siguientes.
Valor Significado
TacNDJavaLib.DN_BCHAIN_PBK_ED25519 Ed25519.
TacNDJavaLib.DN_BCHAIN_PBK_AT_ALGORAND Algoritmo.
TacNDJavaLib.DN_BCHAIN_PBK_BIP32_XPUB BIP32 XPub.
TacNDJavaLib.DN_BCHAIN_PBK_AT_SOL Solana.
TacNDJavaLib.DN_BCHAIN_PBK_AT_XLM Lumens estelares.
TacNDJavaLib.DN_BCHAIN_PBK_ADA_VK Cardano CIP-0016 / CIP-0005.
TacNDJavaLib.DN_BCHAIN_PBK_AT_SS58 SS58.
TacNDJavaLib.DN_BCHAIN_PBK_TON TEP-2 «Fácil de usar»/«blindado».
pbPbkClave pública utilizada para la verificación.
pbSigFirma a verificar.
Excepciones
TacException

bchainGetPubKey()

byte[] bchainGetPubKey ( byte bType,
String jszId ) throws TacException

Recuperar una clave pública a partir de una clave privada utilizando el módulo blockchain.

Parámetros
bTypeFormato de la clave pública a exportar. Puede ser uno de los valores siguientes.
Valor Significado
TacNDJavaLib.DN_BCHAIN_PBK_SEC1_UNCOMP ECDSA SEC1 sin comprimir.
TacNDJavaLib.DN_BCHAIN_PBK_SEC1_COMP ECDSA SEC1 comprimido.
TacNDJavaLib.DN_BCHAIN_PBK_BIP340 Schnorr, BIP-340.
TacNDJavaLib.DN_BCHAIN_PBK_ED25519 Ed25519.
TacNDJavaLib.DN_BCHAIN_PBK_AT_ALGORAND Algoritmo.
TacNDJavaLib.DN_BCHAIN_PBK_BIP32_XPUB BIP32 XPub.
TacNDJavaLib.DN_BCHAIN_PBK_AT_SOL Solana.
TacNDJavaLib.DN_BCHAIN_PBK_AT_XLM Lumens estelares.
TacNDJavaLib.DN_BCHAIN_PBK_ADA_VK Cardano CIP-0016 / CIP-0005.
TacNDJavaLib.DN_BCHAIN_PBK_AT_SS58 SS58.
TacNDJavaLib.DN_BCHAIN_PBK_TON TEP-2 «Fácil de usar»/«blindado».
TacNDJavaLib.DN_BCHAIN_PBK_E_UNCOMP SEC1_UNCOMP sin el prefijo 0x04 (X || Y). Solo alt_bn128 (EIP 196/197).
jszIdIdentificador de la clave privada.
Devolución
Clave pública en el formato especificado en bType.
Excepciones
TacException

◆ bchainGetAddress()

byte[] bchainGetAddress ( byte bType,
byte bVer,
String szHrp,
String szPk ) throws TacException

Recupera la dirección de una clave utilizando el módulo blockchain.

Parámetros
bTypeTipo de dirección. Puede ser uno de los siguientes valores.
Valor Significado
TacNDJavaLib.DN_BCHAIN_AT_BTC_P2PKH Dirección P2PKH. bVer: DN_BCHAIN_VER_BTC_A1_MAIN_NET/A3_MAIN_NET/AMN_TEST_NET/HTR_MAINNET/HTR_TESTNET; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_BTC_P2SH Dirección P2SH BIP13. bVer: igual que P2PKH; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_BTC_P2WPKH Dirección BIP173, versión 0. bVer: DN_BCHAIN_VER_BTC_B32_WITVER; szHrp: DN_BCHAIN_HRP_BTC_MAIN_NET o DN_BCHAIN_HRP_BTC_TEST_NET.
TacNDJavaLib.DN_BCHAIN_AT_BTC_P2WSH Dirección BIP173, versión 0. bVer: igual que P2PKH; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_ETH_EOA Dirección ETH EOA. bVer: DN_BCHAIN_VER_UNUSED; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_ETH_EOA_MC_CKS Dirección ETH EOA MC CKS. EIP55. bVer: DN_BCHAIN_VER_UNUSED; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_ETH_EOA_ICAP Dirección ETH EOA ICAP. bVer: DN_BCHAIN_VER_UNUSED; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_ALGORAND Dirección Algorand. bVer: DN_BCHAIN_VER_UNUSED; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_TRON_HEX Dirección TRON en formato hexadecimal. bVer: DN_BCHAIN_VER_UNUSED; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_TRON_B58 Dirección TRON Base 58. bVer: DN_BCHAIN_VER_UNUSED; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_XRP Dirección del XRP Ledger/Ripple. bVer: DN_BCHAIN_VER_XRP_CLASSIC; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_SOL Dirección Solana. bVer: DN_BCHAIN_VER_UNUSED; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_XLM Dirección Stellar SEP-23. bVer: DN_BCHAIN_VER_UNUSED; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_ADA_PKH Dirección Cardano CIP-0019. bVer: DN_BCHAIN_VER_ADA_MAINNET o DN_BCHAIN_VER_ADA_TESTNET; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_ADA_SH Dirección Cardano CIP-0019 SH. bVer: DN_BCHAIN_VER_ADA_MAINNET o DN_BCHAIN_VER_ADA_TESTNET; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_LUNC Dirección Terra Classic. bVer: DN_BCHAIN_VER_UNUSED; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_SS58 Dirección SS58. bVer: DN_BCHAIN_VER_SS58_POLKADOT o DN_BCHAIN_VER_SS58_GEN_SUBST; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_XTZ Dirección Tezos. bVer: DN_BCHAIN_VER_UNUSED; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_TON Dirección Toncoin TEP-2. bVer: DN_BCHAIN_VER_TON_MN_BWORK/MN_MCHAIN/TN_BWORK/TN_MCHAIN; szHrp: DN_BCHAIN_HRP_TON_BNCBLE o DN_BCHAIN_HRP_TON_NBNCBLE.
TacNDJavaLib.DN_BCHAIN_AT_TON_SH Dirección Toncoin TEP-2 SH. bVer: igual que TON; szHrp: igual que TON.
TacNDJavaLib.DN_BCHAIN_AT_ATOM Dirección Atom ADR-028. bVer: DN_BCHAIN_VER_UNUSED; szHrp: DN_BCHAIN_HRP_UNUSED.
TacNDJavaLib.DN_BCHAIN_AT_BTC_P2TR Dirección BTC BIP350, versión 1-16. bVer: DN_BCHAIN_VER_BTC_SEGWIT1/LTC_SEGWIT1; szHrp: DN_BCHAIN_HRP_BTC_MAIN_NET/BTC_TEST_NET/LTC_MAINNET/LTC_TESTNET.
bVerVersión de la dirección según el tipo. Puede ser uno de los valores siguientes.
Valor Significado
TacNDJavaLib.DN_BCHAIN_VER_UNUSED No se utiliza.
TacNDJavaLib.DN_BCHAIN_VER_BTC_A1_MAIN_NET Red principal de Bitcoin A1.
TacNDJavaLib.DN_BCHAIN_VER_BTC_AMN_TEST_NET Red de prueba Bitcoin P2PKH.
TacNDJavaLib.DN_BCHAIN_VER_BTC_A3_MAIN_NET Red principal de Bitcoin A3.
TacNDJavaLib.DN_BCHAIN_VER_BTC_B32_WITVER Bitcoin B32 witver.
TacNDJavaLib.DN_BCHAIN_VER_BTC_SEGWIT0 Bitcoin SEGWIT0.
TacNDJavaLib.DN_BCHAIN_VER_BTC_SEGWIT1 Bitcoin SEGWIT1.
TacNDJavaLib.DN_BCHAIN_VER_HTR_MAINNET Hathor mainnet.
TacNDJavaLib.DN_BCHAIN_VER_HTR_TESTNET Hathor testnet.
TacNDJavaLib.DN_BCHAIN_VER_HTR_P2SH_MAINNET Red principal Hathor P2SH.
TacNDJavaLib.DN_BCHAIN_VER_HTR_P2SH_TESTNET Hathor P2SH testnet.
TacNDJavaLib.DN_BCHAIN_VER_XRP_CLASSIC XRP Ledger/Ripple Classic.
TacNDJavaLib.DN_BCHAIN_VER_LTC_AL_MAINNET Litecoin AL mainnet.
TacNDJavaLib.DN_BCHAIN_VER_LTC_Amn_TESTNET Litecoin Amn testnet.
TacNDJavaLib.DN_BCHAIN_VER_LTC_AM_MAINNET Litecoin AM red principal.
TacNDJavaLib.DN_BCHAIN_VER_LTC_AQ_TESTNET Litecoin AQ testnet.
TacNDJavaLib.DN_BCHAIN_VER_ADA_MAINNET Cardano mainnet.
TacNDJavaLib.DN_BCHAIN_VER_ADA_TESTNET Cardano testnet.
TacNDJavaLib.DN_BCHAIN_VER_SS58_POLKADOT Polkadot SS58.
TacNDJavaLib.DN_BCHAIN_VER_SS58_GEN_SUBST Sustrato genérico SS58.
TacNDJavaLib.DN_BCHAIN_VER_TON_MN_BWORK Monedero Toncoin v4r2; red principal; cadena de trabajo básica.
TacNDJavaLib.DN_BCHAIN_VER_TON_MN_MCHAIN Monedero Toncoin v4r2; red principal; cadena maestra.
TacNDJavaLib.DN_BCHAIN_VER_TON_TN_BWORK Monedero Toncoin v4r2; red de pruebas; cadena de trabajo básica.
TacNDJavaLib.DN_BCHAIN_VER_TON_TN_MCHAIN Monedero Toncoin v4r2; testnet; cadena maestra.
szHrpHRP (Human Readable Part). Puede ser uno de los siguientes valores.
Valor Significado
TacNDJavaLib.DN_BCHAIN_HRP_UNUSED No se utiliza.
TacNDJavaLib.DN_BCHAIN_HRP_BTC_MAIN_NET Bitcoin mainnet.
TacNDJavaLib.DN_BCHAIN_HRP_BTC_TEST_NET Bitcoin testnet.
TacNDJavaLib.DN_BCHAIN_HRP_LTC_MAINNET Red principal Litecoin.
TacNDJavaLib.DN_BCHAIN_HRP_LTC_TESTNET Litecoin testnet.
TacNDJavaLib.DN_BCHAIN_HRP_TON_BNCBLE Toncoin rebotable.
TacNDJavaLib.DN_BCHAIN_HRP_TON_NBNCBLE Toncoin no rebotable.
szPkNombre de la clave privada en el HSM.
Devolución
Dirección en el formato especificado en bType.
Excepciones
TacException

◆ bchainGetKeyInfo()

BchainKeyInfo bchainGetKeyInfo ( String szId) throws TacException

Recupera las propiedades de una clave utilizando el módulo blockchain.

Parámetros
szIdNombre de la clave en el HSM.
Devolución
Información de la clave en una instancia de BchainKeyInfo.
Excepciones
TacException

◆ bchainHashData()

byte[] bchainHashData ( byte bMode,
byte[] pbData ) throws TacException

Calcula un hash utilizando el módulo blockchain.

Parámetros
bModeTipo de hash. Puede ser uno de los siguientes valores.
Valor Significado
TacNDJavaLib.DN_BCHAIN_HASH_BTC_H160 Bitcoin H160.
TacNDJavaLib.DN_BCHAIN_HASH_RIPEMD160 RIPEMD160.
TacNDJavaLib.DN_BCHAIN_HASH_SHA256 SHA256.
TacNDJavaLib.DN_BCHAIN_HASH_BTC_SHA256_2X Bitcoin SHA256 2x.
TacNDJavaLib.DN_BCHAIN_HASH_KECCAK256 KECCAK256.
TacNDJavaLib.DN_BCHAIN_HASH_BLAKE2B224 Blake2b 224.
TacNDJavaLib.DN_BCHAIN_HASH_BLAKE2B256 Blake2b 256.
pbDataDatos que se van a procesar. Tamaño máximo de DN_BCHAIN_MAX_HDATA_LEN (2 MB).
Devolución
Hash calculado según el tipo especificado en bMode.
Excepciones
TacException
Notas
Esta API está disponible para la validación de la implementación. Se recomienda generar el hash mediante software para obtener un mejor rendimiento y aprovechar mejor los recursos del HSM.

◆ bchainCreateCkdBip32()

BchainKeyInfo bchainCreateCkdBip32 ( byte bVer,
int dwIndex,
int dwAttributes,
String szPar,
String szDst ) throws TacException

Deriva una clave secundaria BIP32 XPrv en el módulo blockchain.

Parámetros
bVerVersión de la clave derivada. Puede ser uno de los siguientes valores.
Valor Significado
TacNDJavaLib.DN_BCHAIN_VER_BIP32_MAINNET Mainnet BIP32.
TacNDJavaLib.DN_BCHAIN_VER_BIP32_TESTNET Testnet BIP32.
TacNDJavaLib.DN_BCHAIN_VER_BIP32_HTR_MAINNET Mainnet BIP32 Hathor.
TacNDJavaLib.DN_BCHAIN_VER_BIP32_HTR_TESTNET Testnet BIP32 Hathor.
TacNDJavaLib.DN_BCHAIN_VER_BIP32_FPRV1 Variación de Fireblocks.
dwIndexÍndice de derivación. Claves no reforzadas: 0 a 2^31-1. Claves reforzadas: TacNDJavaLib#DN_BCHAIN_SECURE_BIP32_INDEX_BASE a TacNDJavaLib#DN_BCHAIN_SECURE_BIP32_INDEX_BASE + 2^31-1.
dwAttributesParámetros adicionales de la clave. Véase createKey.
szParNombre de la clave principal en el HSM.
szDstNombre de la clave derivada que se va a crear en el HSM.
Devolución
Información de la clave derivada en una instancia de BchainKeyInfo.
Excepciones
TacException

◆ bchainCreateCkdEd25519()

BchainKeyInfo bchainCreateCkdEd25519 ( byte bCkdType,
byte bVer,
int dwIndex,
int dwAttributes,
String szPar,
String szDst ) throws TacException

Deriva una clave secundaria Ed25519 XPrv según el estándar BIP32/SLIP-0010 en el módulo blockchain.

Parámetros
bCkdTypeTipo de derivación. Puede ser uno de los siguientes valores.
Valor Significado
TacNDJavaLib.DN_BCHAIN_BIP32_Ed_KDT_SLIP10 SatoshiLabs SLIP-0010.
TacNDJavaLib.DN_BCHAIN_BIP32_Ed_KDT_FPRV1 Variación de Fireblocks.
bVerVersión de la clave derivada. Consulte la tabla de opciones en bchainCreateCkdBip32(byte, int, int, String, String).
dwIndexÍndice de derivación. Véase la tabla de opciones en bchainCreateCkdBip32(byte, int, int, String, String).
dwAttributesParámetros adicionales de la clave. Véase createKey.
szParNombre de la clave principal en el HSM.
szDstNombre de la clave derivada que se va a crear en el HSM.
Devolución
Información de la clave derivada en una instancia de BchainKeyInfo.
Excepciones
TacException

◆ bchainCreateCkdP256()

BchainKeyInfo bchainCreateCkdP256 ( byte bCkdType,
byte bVer,
int dwIndex,
int dwAttributes,
String szPar,
String szDst ) throws TacException

Deriva una clave secundaria P-256 XPrv según el estándar BIP32/SLIP-0010 en el módulo blockchain.

Parámetros
bCkdTypeTipo de derivación. Puede ser uno de los siguientes valores.
Valor Significado
TacNDJavaLib.DN_BCHAIN_BIP32_P256_KDT_SLIP10 SatoshiLabs SLIP-0010 para P-256.
bVerVersión de la clave derivada. Consulte la tabla de opciones en bchainCreateCkdBip32(byte, int, int, String, String).
dwIndexÍndice de derivación. Véase la tabla de opciones en bchainCreateCkdBip32(byte, int, int, String, String).
dwAttributesParámetros adicionales de la clave. Véase createKey.
szParNombre de la clave principal en el HSM.
szDstNombre de la clave derivada que se va a crear en el HSM.
Devolución
Información de la clave derivada en una instancia de BchainKeyInfo.
Excepciones
TacException

◆ bchainCreateXPrv() [1/2]

void bchainCreateXPrv ( byte bType,
int dwAttributes,
String szId,
byte[] pbData ) throws TacException

Crea una clave XPrv en el módulo blockchain.

Parámetros
bTypeTipo de generación de la clave. Puede ser uno de los siguientes valores.
Valor Significado
TacNDJavaLib.DN_BCHAIN_BTC_MINIKEY Bitcoin minikey. pbData debe ser nulo y dwDataLen debe ser 0.
TacNDJavaLib.DN_BCHAIN_BIP32_SEED_XPRV La semilla BIP32 XPrv. pbData debe contener la estructura DN_BCHAIN_BIP32_SEED_XPRV_DATA serializada.
TacNDJavaLib.DN_BCHAIN_BIP39_SEED_XPRV La semilla BIP39 XPrv. pbData debe contener la estructura serializada DN_BCHAIN_BIP39_SEED_XPRV_DATA.
TacNDJavaLib.DN_BCHAIN_BIP32_XPRV BIP32 XPrv. pbData debe ser la versión (TacNDJavaLib.DN_BCHAIN_VER_BIP32_MAINNET, etc.).
TacNDJavaLib.DN_BCHAIN_BIP32_ED25519_XPRV BIP32 Ed25519 XPrv. pbData debe ser la versión.
TacNDJavaLib.DN_BCHAIN_BIP32_P256_XPRV BIP32 P-256 XPrv. pbData debe ser la versión.
dwAttributesParámetros adicionales de la clave. Véase createKey.
szIdNombre de la clave en el HSM.
pbDataBuffer con los datos de generación de la clave según el tipo especificado en bType. Puede ser nulo para los tipos que no requieren datos.
Excepciones
TacException

◆ bchainCreateXPrv() [2/2]

void bchainCreateXPrv ( byte bType,
byte bVer,
int dwAttributes,
String szId ) throws TacException

Crea una clave XPrv sin datos de semilla en el módulo blockchain.

Se utiliza con los tipos que solo requieren la versión de la clave: TacNDJavaLib.DN_BCHAIN_BIP32_XPRV, TacNDJavaLib.DN_BCHAIN_BIP32_ED25519_XPRV y TacNDJavaLib.DN_BCHAIN_BIP32_P256_XPRV. Para TacNDJavaLib.DN_BCHAIN_BTC_MINIKEY, utilice bVer 0.

Parámetros
bTypeTipo de generación de claves.
bVerVersión de la clave. Utilizada por los tipos TacNDJavaLib.DN_BCHAIN_BIP32_XPRV, TacNDJavaLib.DN_BCHAIN_BIP32_ED25519_XPRV e TacNDJavaLib.DN_BCHAIN_BIP32_P256_XPRV. Para TacNDJavaLib.DN_BCHAIN_BTC_MINIKEY, introduce 0. Puede ser uno de los siguientes valores.
Valor Significado
TacNDJavaLib.DN_BCHAIN_VER_BIP32_MAINNET Mainnet BIP32.
TacNDJavaLib.DN_BCHAIN_VER_BIP32_TESTNET Testnet BIP32.
TacNDJavaLib.DN_BCHAIN_VER_BIP32_HTR_MAINNET Mainnet BIP32 Hathor.
TacNDJavaLib.DN_BCHAIN_VER_BIP32_HTR_TESTNET Testnet BIP32 Hathor.
TacNDJavaLib.DN_BCHAIN_VER_BIP32_FPRV1 Variante de Fireblocks.
dwAttributesParámetros adicionales de la clave. Véase createKey.
szIdNombre de la clave en el HSM.
Excepciones
TacException

◆ bchainCreateXPrvBip32Seed()

void bchainCreateXPrvBip32Seed ( byte bVer,
int dwAttributes,
String szId,
byte[] pbSeed ) throws TacException

Crea una clave XPrv a partir de una semilla BIP32 en el módulo blockchain.

Parámetros
bVerVersión de la clave. Véase la tabla de opciones en bchainCreateXPrv(byte,byte,int,String).
dwAttributesParámetros adicionales de la clave. Véase createKey.
szIdNombre de la clave en el HSM.
pbSeedSemilla BIP32. El tamaño máximo es TacNDJavaLib.DN_BCHAIN_BIP32_SEED_LEN_MAX.
Excepciones
TacException

◆ bchainCreateXPrvBip39Seed()

void bchainCreateXPrvBip39Seed ( byte bVer,
int dwAttributes,
String szId,
String szSeed,
String szPwd ) throws TacException

Crea una clave XPrv a partir de una semilla BIP39 en el módulo blockchain.

Las cadenas szSeed y szPwd deben estar en formato UTF-8 NFKD, de acuerdo con la especificación BIP39.

Parámetros
bVerVersión de la clave. Véase la tabla de opciones en bchainCreateXPrv(byte,byte,int,String).
dwAttributesParámetros adicionales de la clave. Véase createKey.
szIdNombre de la clave en el HSM.
szSeedSemilla BIP39 en UTF-8 NFKD. Tamaño máximo de TacNDJavaLib.DN_BCHAIN_BIP39_SEED_LEN_MAX.
szPwdContraseña BIP39 en UTF-8 NFKD. Puede ser una cadena vacía. El tamaño máximo es TacNDJavaLib.DN_BCHAIN_BIP39_PWD_LEN_MAX.
Excepciones
TacException