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

Exemplo de tokenização com o módulo SVault utilizando geração de token e recuperação de secret.

Veja Nota sobre os exemplos.
using System;
using System.IO;
using Dinamo.Hsm;
namespace Tokenization
{
class Program
{
static void Main(string[] args)
{
string address = "10.0.0.1";
string user = "master";
string pass = "12345678";
DinamoClient hsm = new DinamoClient();
//Conecta ao HSM
hsm.Connect(address, user, pass);
/*
*
* Teste de dígito.
*
*/
string mk = "aes256"; //Nome da chave no HSM
string cpf = "26122200468"; //CPF para ser tokenizado
SVaultGenTokenResponse svaultResponse = hsm.GenSVaultDigitToken(DinamoApi.D_SVAULT_CKS_CPF,
DinamoApi.D_SVAULT_F_MASK_SECRET,
mk,
cpf);
Console.WriteLine("Token (cpf): {0}", svaultResponse.Token);
/*
* Recupera o secret.
*/
string mask = "";
string secret = hsm.GetSVaultSecret(mk, mask, svaultResponse.TokenBlob);
Console.WriteLine("Secret (cpf): {0}", secret);
/*
* Aplica máscara que encobre com o caracter "*" os 3 primeiros e os 3 últimos dígitos do CPF.
* */
mask = "***\0\0\0***";
string maskedSecret = hsm.GetSVaultSecret(mk,
mask,
svaultResponse.TokenBlob);
Console.WriteLine("Masked secret (cpf): {0}", maskedSecret);
/*
*
* Teste de string.
*
*/
string text = "Este é um teste";
svaultResponse = hsm.GenSVaultStringToken(DinamoApi.D_SVAULT_F_MASK_SECRET,
mk,
text);
Console.WriteLine("Token (string): {0}", svaultResponse.Token);
/*
* Recupera o secret.
*/
mask = "";
secret = hsm.GetSVaultSecret(mk, mask, svaultResponse.TokenBlob);
Console.WriteLine("Secret (string): {0}", secret);
/*
* Aplica máscara sobre a string.
* */
mask = "***é***\0\0\0";
maskedSecret = hsm.GetSVaultSecret(mk,
mask,
svaultResponse.TokenBlob);
Console.WriteLine("Masked secret (string): {0}", maskedSecret);
hsm.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