API JavaScript HSM Dinamo
    theme_preparing_search_index
    // Importa o cliente Dinamo HSM
    const { hsm } = require("@dinamonetworks/hsm-dinamo");
    const crypto = require("node:crypto");

    // Define os parâmetros de conexão com o HSM
    const options = {
    host: "127.0.0.1",
    authUsernamePassword: {
    username: "master",
    password: "12345678",
    },
    };

    async function eddsaVerify() {
    // Connecta ao HSM
    const conn = await hsm.connect(options);

    // Dados a serem assinados
    const data = "Data to be signed";
    const hash = crypto.createHash("sha256");
    const hashedData = await hash.update(data).digest();

    // Nome da chave
    const keyName = "myEddsaVerifyKey";

    // Cria a chave EdDSA
    const keyCreated = await conn.key.create(
    keyName, // Nome da chave
    hsm.enums.ECX_ASYMMETRIC_SWITCHES.ALG_ECX_ED25519, // Algoritmo da chave
    true, // Se é exportável
    true // Se é temporária
    );

    // Efetua a assinatura EdDSA
    const signature = await conn.cryptography.eddsaSign(
    keyName, // Nome da chave
    hashedData // Dados a serem assinados
    );

    // Verica a assinatura
    const valid = await conn.cryptography.eddsaVerify(
    keyName,
    hashedData,
    signature
    );

    // Verifica se a assinatura é válida
    if (valid) {
    console.log("Valid signature");
    } else {
    console.log("Invalid signature");
    }

    // Desconecta do HSM
    await conn.disconnect();
    }

    // Execute a função eddsaVerify
    eddsaVerify();