API .NET
HSM Dinamo
Carregando...
Procurando...
Nenhuma entrada encontrado
bchain_eddsa_sign.cs

Exemplo de geração de chave e assinatura EdDsa usando o módulo blockchain.

Veja Nota sobre os exemplos.
using Dinamo.Hsm;
using System;
using System.Text;
using System.IO;
namespace BchainEddsaSign
{
class Program
{
private static String addr = "127.0.0.1";
private static String userId = "test";
private static String userPwd = "12345678";
static void Main(string[] args)
{
String keyId = "key";
try {
/*
Conecta no HSM
*/
api.Connect(addr, userId, userPwd);
Console.Out.WriteLine("Conectado com sucesso!");
/*
Gera a chave EdDsa marcada para uso no módulo blockchain.
*/
api.BchainGenerateKey(DinamoClient.KEY_ALG.ALG_ECX_ED25519, keyId, false, false);
Console.Out.WriteLine("Chave gerada com sucesso!");
byte[] data = Encoding.UTF8.GetBytes("Dinamo Networks");
/*
Assina os dados usando a chave EdDsa gerada.
*/
data, keyId);
Console.Out.WriteLine("Assinatura gerada com sucesso!");
Console.Out.WriteLine("Assinatura: " + BitConverter.ToString(signature).Replace("-", ""));
} catch (DinamoException e) {
Console.Out.WriteLine(e.Message);
} finally{
/*
Desconecta do HSM
*/
api.Disconnect();
Console.Out.WriteLine("Desconectado com sucesso!");
}
}
}
}
Classe de baixo nível para acesso ao HSM. Para utilizar essa classe é necessário o entendimento mais ...
Definição DinamoApi.cs:15
const byte DN_BCHAIN_EDDSA_SIG_PURE
Definição DinamoApi.cs:2575
const string DN_BCHAIN_EDDSA_CSTR_UNUSED
Definição DinamoApi.cs:2572
Classe de API para acesso às funcionalidades do HSM Dinamo. Nessa classe é possível programar utiliza...
Definição DinamoClient.cs:93
KEY_ALG
Definição DinamoClient.cs:227
Classe de Excecao para erros do Dinamo.
Definição DinamoException.cs:10
override string Message
Definição DinamoException.cs:42
void BchainGenerateKey(Dinamo.Hsm.DinamoClient.KEY_ALG dwAlg, string szId, bool isExportable, bool isTemporary)
Gera uma chave marcada para uso no módulo blockchain.
Definição DinamoClient.cs:7281
byte[] BchainEdDsaSign(byte bType, string szCtxStr, byte[] pbData, string szId)
Gera uma assinatura EdDsa usando o módulo blockchain.
Definição DinamoClient.cs:7256
void RemoveObjectIfExists(string ObjectId)
Remove um objeto do HSM, se existir.
Definição DinamoClient.cs:2410
void Connect(string User, string Password)
Estabelece uma conexão cifrada com o HSM utilizando as configurações de load balance.
Definição DinamoClient.cs:562
void Disconnect(bool flagClose)
Encerra a conexão com o HSM.
Definição DinamoClient.cs:814
Namespace que denota um conjunto de funções para acesso ao HSM Dinamo e suas respectivas exceptions.
Definição DinamoClient.cs:12