Example of splitting and retrieving a secret using M from N.
using System;
using System.Text;
using System.IO;
namespace MofN
{
class Program
{
private static String addr = "127.0.0.1";
static void Main(string[] args)
{
try {
Console.Out.WriteLine("Conectado anonimamente com sucesso!");
Console.Out.WriteLine("Segredo dividido com sucesso!");
Console.Out.WriteLine("Segredo: " + BitConverter.ToString(splitInfo.pbSecret).Replace("-", ""));
Console.Out.WriteLine("Total de partes: " + splitInfo.dwPartCount);
for (UInt32 i = 0; i < splitInfo.dwPartCount; i++) {
Console.Out.WriteLine("Parte " + (i + 1) + ": " + BitConverter.ToString(splitInfo.pstParts[i].pbPart).Replace("-", ""));
}
parts[0] = splitInfo.pstParts[0];
parts[1] = splitInfo.pstParts[1];
Console.Out.WriteLine("Segredo recuperado com sucesso!");
Console.Out.WriteLine("Segredo recuperado: " + BitConverter.ToString(recoveredSecret).Replace("-", ""));
} finally{
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
Classe de API para acesso às funcionalidades do HSM Dinamo. Nessa classe é possível programar utiliza...
Definição DinamoClient.cs:93
Classe de Excecao para erros do Dinamo.
Definição DinamoException.cs:10
override string Message
Definição DinamoException.cs:42
DinamoApi.DN_M_OF_N_SPLIT_INFO MofNSplit(byte bM, byte bN, byte[] pbSecret)
Faz a divisão M de N de um segredo. De acordo com o padrão de compartilhamento de segredos de Shamir.
Definição DinamoClient.cs:4216
byte[] MofNRecover(DinamoApi.DN_M_OF_N_PART[] parts)
Reconstrói o segredo M de N a partir das partes dos custodiantes. De acordo com o padrão de compartil...
Definição DinamoClient.cs:4239
void Disconnect(bool flagClose)
Encerra a conexão com o HSM.
Definição DinamoClient.cs:814
void ConnectAnonymously(string Address)
Estabelece uma conexão anônima com o HSM.
Definição DinamoClient.cs:722
Namespace que denota um conjunto de funções para acesso ao HSM Dinamo e suas respectivas exceptions.
Definição DinamoClient.cs:12
Definição DinamoApi.cs:2652