API .Net HSM Dinamo
API Proprietária .Net do HSM Dinamo
export_import_tr31.cs

Exemplo de exportação e importação de chave no formato TR-31.

Veja Nota sobre os exemplos.
using Dinamo.Hsm;
using System;
using System.Text;
using System.IO;
namespace TR31ExportImport
{
class Program
{
private static String strAddr = "127.0.0.1";
private static String strUsrId = "master";
private static String strPwd = "12345678";
static void Main(string[] args)
{
String szKbpk = "kbpk";
String szKey = "key";
DinamoClient api = new DinamoClient();
try {
/*
Conecta no HSM
*/
api.Connect(strAddr, strUsrId, strPwd);
/*
Exporta a chave no formato TR-31
*/
byte[] keyBlock = api.ExportTR31(szKbpk, szKey,
DinamoClient.EftExportUsage.EFT_ME_TR31_EXP_USAGE_AUTO,
DinamoClient.EftExportMode.EFT_ME_TR31_EXP_MODE_AUTO,
DinamoClient.EftExportExpType.EFT_ME_TR31_EXP_AUTO);
Console.Out.WriteLine(BitConverter.ToString(keyBlock));
Console.Out.WriteLine("Chave exportada com sucesso!");
/*
Importa a chave no formato TR-31
*/
String szImportedKey = "imp_key";
api.ImportTR31(szKbpk, szImportedKey, true, false, keyBlock);
Console.Out.WriteLine("Chave importada com sucesso!");
} catch (DinamoException e) {
Console.Out.WriteLine(e.Message);
} finally{
/*
Desconecta do HSM
*/
api.Disconnect();
}
}
}
}
Namespace que denota um conjunto de funções para acesso ao HSM Dinamo e suas respectivas exceptions.
Definition: DinamoClient.cs:12
Definition: DinamoClient.cs:12