De blockchain_get_address.js
// Importa o cliente Dinamo HSM
const {hsm} = require("@dinamonetworks/hsm-dinamo");
// Define os parâmetros de conexão com o HSM
const options = {
host: "127.0.0.1",
authUsernamePassword: {
username: "master",
password: "12345678"
}
};
async function getKeyAddress() {
// Connecta ao HSM
const conn = await hsm.connect(options);
// Nome da chave
const keyName = "myKeyToGetAddress";
// Cria uma chave
const key = await conn.blockchain.create(
keyName, // Nome da chave
hsm.enums.BLOCKCHAIN_KEYS.BIP32_XPRV, // Tipo da chave
true, // Se a chave é exportável
true, // Se é temporária
hsm.enums.VERSION_OPTIONS.BIP32_MAIN_NET // Versão
);
// Recupera o endereço da chave
const address = await conn.blockchain.getAddress(
hsm.enums.ADDRESS_TYPE.BTC_P2PKH, // Tipo de endereço
hsm.enums.ADDRESS_VERSION.BTC_A1_MAIN_NET, // Versão
hsm.enums.ADDRESS_HRP.UNUSED, // HRP (Human Readable Part) da chave
keyName // Nome da chave
);
// Endereço da chave
console.log(address);
// Desconecta do HSM
await conn.disconnect();
}
// Execute a função getKeyAddress
getKeyAddress();