Ejemplo de cifrado y descifrado simétrico mediante HSM.
usando System;
using System.Collections.Generic;
usando System.Text;
namespace TesteNF
{
clase Programa
{
static void Main(string[] args)
{
"maestro",
"12345678" );
cadena keyId = "aes256";
byte[] iv =
new byte[
DinamoApi.
AES_IV_LEN]{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
byte[] originalData = Encoding.ASCII.GetBytes("asdfasdfasdfasdfas");
Array.Copy(originalData, dataToEncrypt, originalData.Length);
int dataToEncryptLen = originalData.Length;
IntPtr.Cero,
cierto,
iv,
dataToEncrypt,
ref dataToEncryptLen,
dataToEncrypt.Length);
IntPtr.Cero,
cierto,
iv,
dataToEncrypt,
ref dataToEncryptLen );
Console.Out.WriteLine("Dado decriptado:\n {0}", System.Text.Encoding.Default.GetString(dataToEncrypt));
Consola.In.ReadLine();
}
}
}
Clase de bajo nivel para acceder al HSM. Para utilizar esta clase es necesario entender más ...
Definición DinamoApi.cs:15
const Int32 AES_IV_LEN
Definición DinamoApi.cs:903
Clase API para acceder a las funcionalidades del HSM Dinamo. En esta clase se puede programar utilizando...
Definición DinamoClient.cs:93
MODO_TIPO
Definición DinamoClient.cs:430
TIPO_APOYO
Definición DinamoClient.cs:437
void Encrypt(IntPtr hKey, bool Final, byte[] byData, ref int DataLen, int BufferLen)
Cifra bloques o archivos pasando la referencia de la clave. Utiliza el modo predeterminado / relleno,...
Definición DinamoClient.cs:3163
void Decrypt(cadena strKeyId, IntPtr hHash, bool Final, byte[] byData, ref int DataLen)
Desencripta un hash, datos generales o un archivo.
Definición DinamoClient.cs:3504
void Conectar(cadena Usuario, cadena Contraseña)
Establece una conexión cifrada con el HSM utilizando los ajustes de equilibrio de carga.
Definición DinamoClient.cs:562
Espacio de nombres que denota un conjunto de funciones para acceder al HSM Dinamo y sus respectivas excepciones.
Definición DinamoClient.cs:12