NET API
HSM Dinamo
Cargando...
Buscando...
No se han encontrado entradas
Claves

Descripción detallada

Gestión del ciclo de vida de las claves criptográficas en HSM.

Consulte la documentación técnica del HSM.

Funciones

IntPtr GenerateKey (cadena KeyId, DinamoClient.KEY_ALG Alg, bool Exportable)
 Genera una clave permanente en el HSM.
 
IntPtr GenerateKey (cadena KeyId, DinamoClient.KEY_ALG Alg, bool Exportable, bool Temporal)
 Generar llave.
 
IntPtr GetUserKey (cadena KeyId)
 Devuelve el Handler de una clave (DestroyUserKey debe ser llamado después de la asignación).
 
void DestroyKey (IntPtr hKey)
 Suelte la palanca de la llave.
 
int GetKeyAlgId (cadena strKeyId)
 Devuelve el algoritmo de una clave.
 
int GetKeyAlgId (IntPtr hKey)
 Devuelve el tipo de una clave.
 
int GetKeyPadding (IntPtr hKey)
 Devuelve el tipo de relleno de una clave.
 
int GetUserKeyLen (cadena KeyId)
 Devuelve el tamaño de una clave.
 
int GetUserKeyLen (IntPtr hKey)
 Devuelve el tamaño de una clave.
 
bool IsKeyExist (cadena KeyId)
 
bool HasObject (cadena Id)
 Verifica la existencia de un objeto.
 
void GetMapInfo (cadena ObjectId, cadena Obj1Id, cadena Obj2Id)
 Recupera información cartográfica (compatibilidad con versiones anteriores)
 
void GetMapInfo (cadena ObjectId, cadena Obj1Id, int Obj1TypeId, cadena Obj2Id, int Obj2TypeId)
 Recupera información cartográfica.
 
List< CertAssociationListCertAssociations (bool onlyWithAssociation=false)
 Lista los certificados y sus claves privadas asociadas.
 
bool IsKeyReadLock (cadena KeyId)
 Comprueba si la clave es exportable.
 
bool IsKeyReadLock (IntPtr hKey)
 Comprueba si la clave es exportable.
 
bool IsKeyEncrypted (cadena KeyId)
 Comprueba que la clave está encriptada.
 
bool IsKeyEncrypted (IntPtr hKey)
 Comprueba que la clave está encriptada.
 
void BlockObject (cadena szObjectName, bool bBlock)
 Cambia el estado de bloqueo de un objeto.
 
bool IsObjectBlocked (cadena szObjectName)
 Recupera el estado bloqueado de un objeto.
 
void GenerateMap (cadena MapId, cadena Obj1Id, ALG Obj1Type, cadena Obj2Id, ALG Obj2Type)
 
void RemoveObject (cadena ObjectId)
 Elimina un objeto del HSM.
 
void RemoveObjectIfExists (cadena ObjectId)
 Elimina un objeto del HSM, si existe.
 
cadena[] ListObjects ()
 Enumera los objetos del usuario HSM actual.
 
Int32 ListCallback (cadena szName, ref DinamoApi.DBLOB pParam, Int32 bFinal)
 
cadena[] ListObjects( tipoALG )
 
byte[] ReadFile (cadena FileId)
 
Int32 WriteLocalFileCallback (IntPtr pbData, Int32 cbData, ref DinamoApi.DBLOB_FILE pParam, Int32 bFinal)
 
void WriteFile (cadena FileId, byte[] byFileData)
 Importa objetos en el HSM. Certificados, PKCS#7, Claves.
 
Int32 ReadLocalFileCallback (IntPtr pbData, ref Int32 pcbData, IntPtr pParam, out Int32 pbFinal)
 
byte[] ExportKey (IntPtr hKey, IntPtr hKeyEncryptionKey, BLOB_TYPE BlobType)
 
IntPtr ImportKey (string KeyId, IntPtr hKeyEncryptionKey, byte[] byKeyBlob, BLOB_TYPE BlobType, KEY_ALG AlgId)
 
IntPtr ImportKey (string KeyId, IntPtr hKeyEncryptionKey, byte[] byKeyBlob, BLOB_TYPE BlobType, KEY_ALG AlgId, bool Exportable, bool Temporary)
 
void ImportPKCS12File (cadena FilePath, cadena Password, cadena KeyId, cadena CertId, bool Exportable)
 Importa una clave/certificado desde un archivo en formato PKCS#12 al HSM.
 
Int32 ImportPKCS12 (cadena FilePath, cadena Password, cadena KeyId, cadena CertId, bool Exportable)
 
void ImportPKCS12 (byte[] Pkcs12, cadena Contraseña, cadena KeyId, cadena CertId, bool Exportable)
 Importa una clave/certificado desde un búfer en formato PKCS#12 al HSM.
 
void ImportPKCS12 (byte[] Pkcs12, cadena Contraseña, cadena KeyId, Int32 KeyAttr, cadena CertId, cadena PubKeyId, Int32 Reservado)
 Importa una clave/certificado desde un búfer en formato PKCS#12 al HSM.
 
byte[] PKCS8ExportKey (cadena szKeyId, cadena szSecret)
 
byte[] SPBExportPKCS12 (cadena szISPB, cadena szSecret)
 
byte[] ExportPKCS12 (cadena KeyId, cadena CertId, cadena Secret)
 Exporta una clave y un certificado HSM en formato PKCS#12.
 
byte[] ExportPKCS12 (cadena KeyId, cadena CertId, cadena Secret, Int32 Flags)
 Exporta una clave y un certificado HSM en formato PKCS#12.
 
void PKCS8ImportKey (cadena szKeyId, cadena szSecret, int dwKeyAlg, int dwAttrib, byte[] bKeyEnvelope)
 
void SPBImportPKCS12 (cadena szKeyId, cadena szSecret, cadena szDomain, int dwKeyAlg, int dwAttrib, cadena file)
 

Funciones

GenerarClave() [1/2]

IntPtr GenerateKey ( string KeyId,
DinamoClient.KEY_ALG Alg,
bool Exportable )
inline

Genera una clave permanente en el HSM.

Parámetros
KeyIdIdentificador de la clave. Este identificador no debe contener espacios ni caracteres especiales. Los caracteres en mayúsculas y minúsculas distinguen entre mayúsculas y minúsculas. Un identificador de objeto en HSM puede tener una longitud máxima, en caracteres, de DinamoApi.MAX_OBJ_NAME_LEN. Al crear claves en la partición de otro usuario (se requiere permiso), el nombre debe estar completamente cualificado con un FQN(Full Qualified Name: partition_id/obj_id); la longitud máxima de un FQN es DinamoApi.MAX_OBJ_ID_FQN_LEN-1.
AlgDinamoAlgoritmo que debe utilizarse. .Hsm.DinamoClient.KEY_ALG
ExportableBandera que indica la generación de una clave exportable.
Devolución
Mango del objeto clave generado.
Excepciones
DinamoExceptionLanza una excepción en caso de error.
Ejemplos
oathb lock_object.cs, dukpt .cs, generate_hmac.cs, .cs y rsa_enc_dec.cs.

GenerarClave() [2/2]

IntPtr GenerateKey ( string KeyId,
DinamoClient.KEY_ALG Alg,
bool Exportable,
bool Temporary )
inline

Generar llave.

Parámetros
KeyIdIdentificador de la clave. Este identificador no debe contener espacios ni caracteres especiales. Los caracteres en mayúsculas y minúsculas distinguen entre mayúsculas y minúsculas. Un identificador de objeto en HSM puede tener una longitud máxima, en caracteres, de DinamoApi.MAX_OBJ_NAME_LEN. Al crear claves en la partición de otro usuario (se requiere permiso), el nombre debe estar completamente cualificado con un FQN(Full Qualified Name: partition_id/obj_id); la longitud máxima de un FQN es DinamoApi.MAX_OBJ_ID_FQN_LEN-1.
AlgDinamoAlgoritmo de clave. .Hsm.DinamoClient.KEY_ALG
ExportableBandera para generar la clave exportable.
TemporaryBandera para generar una clave temporal. Esta clave tiene un ciclo de vida para la duración de la sesión.
Devolución
Mango de llave.
Excepciones
DinamoExceptionLanza una excepción en caso de error.

GetUserKey()

IntPtr GetUserKey ( string KeyId)
inline

Devuelve el Handler de una clave (DestroyUserKey debe ser llamado después de la asignación).

Parámetros
KeyIdIdentificador clave
Devolución
Manejador de objeto de usuario
Excepciones
DinamoExceptionLanza una excepción en caso de error.

DestroyKey()

void DestroyKey ( IntPtr hKey)
inline

Suelte la palanca de la llave.

Parámetros
hKeyMango de llave.
Excepciones
DinamoExceptionLanza una excepción en caso de error.
Ejemplos
block_object.cs, eft_gen_pin .cs, eft_gen_verify_cvv.cs, eft_verify_pinblock. cs y rsa_enc_dec.cs.

GetKeyAlgId() [1/2]

int GetKeyAlgId ( string strKeyId)
inline

Devuelve el algoritmo de una clave.

Parámetros
strKeyIdNombre de usuario
Devolución
Identificador del algoritmo.
Excepciones
DinamoExceptionLanza una excepción en caso de error.

GetKeyAlgId() [2/2]

int GetKeyAlgId ( IntPtr hKey)
inline

Devuelve el tipo de una clave.

Parámetros
hKeyTirador de llave
Devolución
Tipo de llave
Excepciones
DinamoExceptionLanza una excepción en caso de error.

GetKeyPadding()

int GetKeyPadding ( IntPtr hKey)
inline

Devuelve el tipo de relleno de una clave.

Parámetros
hKeyTirador de llave
Devolución
Tipo de relleno de teclas
Excepciones
DinamoExceptionLanza una excepción en caso de error.

GetUserKeyLen() [1/2]

int GetUserKeyLen ( string KeyId)
inline

Devuelve el tamaño de una clave.

Parámetros
KeyIdIdentificación de claves
Devolución
Tamaño de la clave en bits
Excepciones
DinamoExceptionLanza una excepción en caso de error.

GetUserKeyLen() [2/2]

int GetUserKeyLen ( IntPtr hKey)
inline

Devuelve el tamaño de una clave.

Parámetros
hKeyTirador de llave
Devolución
Tamaño de la clave en bits
Excepciones
DinamoExceptionLanza una excepción en caso de error.

IsKeyExist()

bool IsKeyExist ( string KeyId)
inline
Obsoleto
Esta API está descatalogada. Utilice hasObject().
Ejemplos
oath.cs.

TieneObjeto()

bool HasObject ( string Id)
inline

Verifica la existencia de un objeto.

Parámetros
IdIdentificador del objeto en el HSM.
Devolución
Verdadero si el objeto existe
Excepciones
DinamoExceptionLanza una excepción en caso de error.

GetMapInfo() [1/2]

void GetMapInfo ( string ObjectId,
ref string Obj1Id,
ref string Obj2Id )
inline

Recupera información cartográfica (compatibilidad con versiones anteriores)

Parámetros
ObjectIdNombre del mapa
Obj1IdNombre del objeto en la primera ranura
Obj2IdNombre del objeto en la segunda ranura
Excepciones
DinamoExceptionLanza una excepción en caso de error.

GetMapInfo() [2/2]

void GetMapInfo ( string ObjectId,
ref string Obj1Id,
ref int Obj1TypeId,
ref string Obj2Id,
ref int Obj2TypeId )
inline

Recupera información cartográfica.

Parámetros
ObjectIdNombre del mapa
Obj1IdNombre del objeto en la primera ranura
Obj1TypeIdTipo de objeto en la primera ranura
Obj2IdNombre del objeto en la segunda ranura
Obj2TypeIdTipo de objeto en la segunda ranura
Excepciones
DinamoExceptionLanza una excepción en caso de error.

ListCertAssociations()

List< CertAssociation > ListCertAssociations ( bool onlyWithAssociation = false)
inline

Lista los certificados y sus claves privadas asociadas.

Parámetros
onlyWithAssociationVerdadero si sólo desea certificados con claves asociadas
Devolución
Devuelve una lista de asociaciones de certificados con sus respectivas claves privadas.
Excepciones
DinamoExceptionLanza una excepción en caso de error.
Ejemplos
list_association.cs.

IsKeyReadLock() [1/2]

bool IsKeyReadLock ( string KeyId)
inline

Comprueba si la clave es exportable.

Parámetros
KeyIdNombre clave
Devolución
True si la clave es exportable
Excepciones
DinamoExceptionLanza una excepción en caso de error.

IsKeyReadLock() [2/2]

bool IsKeyReadLock ( IntPtr hKey)
inline

Comprueba si la clave es exportable.

Parámetros
hKeyTirador de llave
Devolución
True si la clave es exportable
Excepciones
DinamoExceptionLanza una excepción en caso de error.

IsKeyEncrypted() [1/2]

bool IsKeyEncrypted ( string KeyId)
inline

Comprueba que la clave está encriptada.

Parámetros
KeyIdNombre clave
Devolución
Verdadero si la clave está encriptada
Excepciones
DinamoExceptionLanza una excepción en caso de error.

IsKeyEncrypted() [2/2]

bool IsKeyEncrypted ( IntPtr hKey)
inline

Comprueba que la clave está encriptada.

Parámetros
hKeyTirador de llave
Devolución
Verdadero si la clave está encriptada
Excepciones
DinamoExceptionLanza una excepción en caso de error.

BloqueObjeto()

void BlockObject ( string szObjectName,
bool bBlock )
inline

Cambia el estado de bloqueo de un objeto.

Parámetros
szObjectNameNombre del objeto
bBlocktrue para bloqueado y false para desbloqueado
Excepciones
DinamoExceptionLanza una excepción en caso de error.
Ejemplos
bloque_objeto.cs.

IsObjectBlocked()

bool IsObjectBlocked ( string szObjectName)
inline

Recupera el estado bloqueado de un objeto.

Parámetros
szObjectNameNombre del objeto
Devolución
true si está bloqueado y false si está desbloqueado.
Excepciones
DinamoExceptionLanza una excepción en caso de error.
Ejemplos
bloque_objeto.cs.

GenerarMapa()

void GenerateMap ( string MapId,
string Obj1Id,
ALG Obj1Type,
string Obj2Id,
ALG Obj2Type )
inline

QuitarObjeto()

void RemoveObject ( string ObjectId)
inline

Elimina un objeto del HSM.

Parámetros
ObjectIdNombre del objeto
Excepciones
DinamoExceptionLanza una excepción en caso de error.
Ejemplos
block_object.cs, dukpt.cs, eft_gen_pin.cs, eft_gen_verify_cvv.cs, eft_verify_pinblock .cs, generate_hmac.cs, generate_hmac_lau .cs y rsa_enc_dec.cs.

EliminarObjetoSiExiste()

void RemoveObjectIfExists ( string ObjectId)
inline

Elimina un objeto del HSM, si existe.

Parámetros
ObjectIdNombre del objeto
Excepciones
DinamoExceptionLanza una excepción en caso de error.
Ejemplos
bchain_ckd.cs, bchain_eddsa_sign .cs, bchain_get_address.cs, bchain_get_pub.cs y bchain_sign_hash.cs.

ListObjects() [1/2]

string[] ListObjects ( )
inline

Enumera los objetos del usuario HSM actual.

Devolución
Matriz que contiene los nombres de los objetos.
Excepciones
DinamoExceptionLanza una excepción en caso de error.

ListCallback()

Int32 ListCallback ( string szName,
ref DinamoApi.DBLOB pParam,
Int32 bFinal )
inline

ListObjects() [2/2]

string[] ListObjects ( ALG type)
inline

LeerArchivo()

byte[] ReadFile ( string FileId)
inline
Ejemplos
read_file.cs.

WriteLocalFileCallback()

Int32 WriteLocalFileCallback ( IntPtr pbData,
Int32 cbData,
ref DinamoApi.DBLOB_FILE pParam,
Int32 bFinal )
inline

WriteFile()

void WriteFile ( string FileId,
byte[] byFileData )
inline

Importa objetos en el HSM. Certificados, PKCS#7, Claves.

Parámetros
FileIdIdentificador de la clave. Este identificador no debe contener espacios ni caracteres especiales. Los caracteres en mayúsculas y minúsculas distinguen entre mayúsculas y minúsculas. Un identificador de objeto en HSM puede tener una longitud máxima, en caracteres, de DinamoApi.MAX_OBJ_NAME_LEN. Al crear claves en la partición de otro usuario (se requiere permiso), el nombre debe estar completamente cualificado con un FQN(Full Qualified Name: partition_id/obj_id); la longitud máxima de un FQN es DinamoApi.MAX_OBJ_ID_FQN_LEN-1.
byFileDataen el
Excepciones
DinamoExceptionLanza una excepción en caso de error.

ReadLocalFileCallback()

Int32 ReadLocalFileCallback ( IntPtr pbData,
ref Int32 pcbData,
IntPtr pParam,
out Int32 pbFinal )
inline

ExportKey()

byte[] ExportKey ( IntPtr hKey,
IntPtr hKeyEncryptionKey,
BLOB_TYPE BlobType )
inline
Ejemplos
rsa_enc_dec.cs.

ImportKey() [1/2]

IntPtr ImportKey ( string KeyId,
IntPtr hKeyEncryptionKey,
byte[] byKeyBlob,
BLOB_TYPE BlobType,
KEY_ALG AlgId )
inline

ImportKey() [2/2]

IntPtr ImportKey ( string KeyId,
IntPtr hKeyEncryptionKey,
byte[] byKeyBlob,
BLOB_TYPE BlobType,
KEY_ALG AlgId,
bool Exportable,
bool Temporary )
inline

ImportPKCS12File()

void ImportPKCS12File ( string FilePath,
string Password,
string KeyId,
string CertId,
bool Exportable )
inline

Importa una clave/certificado desde un archivo en formato PKCS#12 al HSM.

Parámetros
FilePathUbicación del archivo PFX físico que se va a importar.
PasswordContraseña para abrir el archivo PFX.
KeyIdNombre que tendrá la clave importada dentro del HSM. Este identificador no debe contener espacios ni caracteres especiales. Los caracteres en mayúsculas y minúsculas distinguen entre mayúsculas y minúsculas. Un identificador de objeto en el HSM puede tener una longitud máxima, en caracteres, de DinamoApi.MAX_OBJ_NAME_LEN. Al crear claves en la partición de otro usuario (se requiere permiso), el nombre debe estar completamente cualificado con un FQN(Full Qualified Name: partition_id/obj_id); la longitud máxima de un FQN es DinamoApi.MAX_OBJ_ID_FQN_LEN-1.
CertIdNombre que tendrá el certificado importado dentro del HSM. Este identificador no debe contener espacios ni caracteres especiales. Los caracteres en mayúsculas y minúsculas distinguen entre mayúsculas y minúsculas. Un identificador de objeto en el HSM puede tener una longitud máxima, en caracteres, de DinamoApi.MAX_OBJ_NAME_LEN. Al crear claves en la partición de otro usuario (se requiere permiso), el nombre debe estar completamente cualificado con un FQN(Full Qualified Name: partition_id/obj_id); la longitud máxima de un FQN es DinamoApi.MAX_OBJ_ID_FQN_LEN-1.
ExportableImporta la clave en formato exportable.
Excepciones
DinamoExceptionLanza una excepción en caso de error.

ImportPKCS12() [1/3]

Int32 ImportPKCS12 ( string FilePath,
string Password,
string KeyId,
string CertId,
bool Exportable )
inline
Obsoleto
Esta API está descatalogada. Utilice ImportPKCS12File().
Ejemplos
import_export_pkcs12.cs.

ImportPKCS12() [2/3]

void ImportPKCS12 ( byte[] Pkcs12,
string Password,
string KeyId,
string CertId,
bool Exportable )
inline

Importa una clave/certificado desde un búfer en formato PKCS#12 al HSM.

Parámetros
Pkcs12PKCS#12.
PasswordContraseña para PKCS#12.
KeyIdNombre que tendrá la clave importada dentro del HSM. Este identificador no debe contener espacios ni caracteres especiales. Los caracteres en mayúsculas y minúsculas distinguen entre mayúsculas y minúsculas. Un identificador de objeto en el HSM puede tener una longitud máxima, en caracteres, de DinamoApi.MAX_OBJ_NAME_LEN. Al crear claves en la partición de otro usuario (se requiere permiso), el nombre debe estar completamente cualificado con un FQN(Full Qualified Name: partition_id/obj_id); la longitud máxima de un FQN es DinamoApi.MAX_OBJ_ID_FQN_LEN-1.
CertIdNombre que tendrá el certificado importado dentro del HSM. Este identificador no debe contener espacios ni caracteres especiales. Los caracteres en mayúsculas y minúsculas distinguen entre mayúsculas y minúsculas. Un identificador de objeto en el HSM puede tener una longitud máxima, en caracteres, de DinamoApi.MAX_OBJ_NAME_LEN. Al crear claves en la partición de otro usuario (se requiere permiso), el nombre debe estar completamente cualificado con un FQN(Full Qualified Name: partition_id/obj_id); la longitud máxima de un FQN es DinamoApi.MAX_OBJ_ID_FQN_LEN-1.
ExportableImporta la clave en formato exportable.
Excepciones
DinamoExceptionLanza una excepción en caso de error.

ImportPKCS12() [3/3]

void ImportPKCS12 ( byte[] Pkcs12,
string Password,
string KeyId,
Int32 KeyAttr,
string CertId,
string PubKeyId,
Int32 Reserved )
inline

Importa una clave/certificado desde un búfer en formato PKCS#12 al HSM.

Parámetros
Pkcs12PKCS#12.
PasswordContraseña para PKCS#12.
KeyIdNombre que tendrá la clave importada dentro del HSM. Este identificador no debe contener espacios ni caracteres especiales. Los caracteres en mayúsculas y minúsculas distinguen entre mayúsculas y minúsculas. Un identificador de objeto en el HSM puede tener una longitud máxima, en caracteres, de DinamoApi.MAX_OBJ_NAME_LEN. Al crear claves en la partición de otro usuario (se requiere permiso), el nombre debe estar completamente cualificado con un FQN(Full Qualified Name: partition_id/obj_id); la longitud máxima de un FQN es DinamoApi.MAX_OBJ_ID_FQN_LEN-1.
KeyAttrAtributos de la clave que se va a importar en el HSM. Parámetros adicionales de la clave.
Valor Significado
DinamoAPI.EXPORTABLE_KEY La clave puede exportarse desde el HSM.
CertIdNombre que tendrá el certificado importado dentro del HSM. Este identificador no debe contener espacios ni caracteres especiales. Los caracteres en mayúsculas y minúsculas distinguen entre mayúsculas y minúsculas. Un identificador de objeto en el HSM puede tener una longitud máxima, en caracteres, de DinamoApi.MAX_OBJ_NAME_LEN. Al crear claves en la partición de otro usuario (se requiere permiso), el nombre debe estar completamente cualificado con un FQN(Full Qualified Name: partition_id/obj_id); la longitud máxima de un FQN es DinamoApi.MAX_OBJ_ID_FQN_LEN-1.
PubKeyIdNombre que tendrá la clave pública importada dentro del HSM. Puede ser null para no importar el objeto de clave pública.
ReservedReservado para uso futuro. Debe ser 0.
Excepciones
DinamoException

PKCS8ExportKey()

byte[] PKCS8ExportKey ( string szKeyId,
string szSecret )
inline

SPBExportPKCS12()

byte[] SPBExportPKCS12 ( string szISPB,
string szSecret )
inline

ExportPKCS12() [1/2]

byte[] ExportPKCS12 ( string KeyId,
string CertId,
string Secret )
inline

Exporta una clave y un certificado HSM en formato PKCS#12.

Parámetros
KeyIdNombre de la clave a exportar.
CertIdNombre del certificado a exportar.
SecretProtección por contraseña para PKCS#12.
Excepciones
DinamoExceptionLanza una excepción en caso de error.
Ejemplos
import_export_pkcs12.cs.

ExportPKCS12() [2/2]

byte[] ExportPKCS12 ( string KeyId,
string CertId,
string Secret,
Int32 Flags )
inline

Exporta una clave y un certificado HSM en formato PKCS#12.

Parámetros
KeyIdNombre de la clave a exportar.
CertIdNombre del certificado a exportar.
SecretProtección por contraseña para PKCS#12.
FlagsPase 0 o una de las opciones de la tabla siguiente.
Atributo Valor
DN_EXPORT_P12_LEGACY Exporta la clave y el certificado y genera el archivo PKCS#12 en software.
Excepciones
DinamoExceptionLanza una excepción en caso de error.

PKCS8ImportKey()

void PKCS8ImportKey ( string szKeyId,
string szSecret,
int dwKeyAlg,
int dwAttrib,
byte[] bKeyEnvelope )
inline

SPBImportPKCS12()

void SPBImportPKCS12 ( string szKeyId,
string szSecret,
string szDomain,
int dwKeyAlg,
int dwAttrib,
string file )
inline