NET API
HSM Dinamo
Loading...
Looking for...
No entries found
eft_gen_pin.cs

Example of PIN generation.

See Note on examples.
using System;
using System.IO;
using Dinamo.Hsm;
namespace EFTGenPIN
{
class Program
{
static void Main(string[] args)
{
string address = "127.0.0.1";
string user = "master";
string pass = "12345678";
/*
Connects to HSM
*/
hsm.Connect(address, user, pass);
/*
Import test key
*/
string pgk = "pgk";
byte[] keyData = {0x12, 0x22, 0x22, 0x22, 0x22, 0x22, 0x23,
0x12, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x23,
0x12, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x23};
IntPtr keyHandle = hsm.ImportKey(pgk, IntPtr.Zero, keyData,
DinamoClient.BLOB_TYPE.PLAINTEXTKEY_BLOB,
DinamoClient.KEY_ALG.ALG_3DES_168);
/*
Generates a PIN
*/
string pan ="4123456789012345";
int outPinLen = 4;
DinamoClient.PinComponents pinData = hsm.GenPIN(pgk, pan,
outPinLen, null);
Console.WriteLine("pin: {0} offset: {1}", pinData.pin, pinData.offset);
/*
Release handle, remove key and disconnect
*/
hsm.DestroyKey(keyHandle);
hsm.RemoveObject(pgk);
hsm.Disconnect();
}
}
}
Class that encapsulates the PIN generation components.
Definition DinamoClient.cs:4399
offset string
Definition DinamoClient.cs:4401
string pin
Definition DinamoClient.cs:4400
API class for accessing HSM functionalities Dinamo. In this class you can program using...
Definition DinamoClient.cs:93
KEY_ALG
Definition DinamoClient.cs:227
BLOB_TYPE
Definition DinamoClient.cs:449
PinComponents GenPIN(string pgk, string pan, GenPINOperation operation, int pinLen, string inPin)
It generates PINs from PAN (Personal Account Number) and key name data (...
Definition DinamoClient.cs:4426
GenPINOperation
PIN operation options.
Definition DinamoClient.cs:4388
void DestroyKey(IntPtr hKey)
Release key handle.
Definition DinamoClient.cs:1953
IntPtr ImportKey(string KeyId, IntPtr hKeyEncryptionKey, byte[] byKeyBlob, BLOB_TYPE BlobType, KEY_ALG AlgId)
Definition DinamoClient.cs:2668
void RemoveObject(string ObjectId)
Removes an object from the HSM.
Definition DinamoClient.cs:2397
void Connect(string User, string Password)
Establishes an encrypted connection to the HSM using the load balance settings.
Definition DinamoClient.cs:562
void Disconnect(bool flagClose)
Terminates the connection to the HSM.
Definition DinamoClient.cs:814
Namespace denoting a set of functions for accessing the HSM Dinamo and their respective exceptions.
Definition DinamoClient.cs:12