Operaciones hash criptográficas simétricas y asimétricas.
Funciones | |
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/relleno por defecto, es decir, MODO CBC y relleno PKCS#5. | |
void | Encrypt (String strKeyId, byte[] byData) |
Cifra un bloque en modo ECB sin relleno. Esta función es útil para PIN BLOCK. El tamaño de la matriz de datos debe ser compatible con el tipo de clave. | |
byte[] | EncryptDefault (String strKeyId, byte[] byData) |
Cifra un bloque utilizando la parametrización HSM estándar. | |
void | Encrypt (string strKeyId, IntPtr hHash, bool Final, byte[] iv, MODE_TYPE mode, PADDING_TYPE padding, byte[] byData, ref int DataLen, int BufferLen) |
Cifra un hash, datos generales o un archivo. | |
void | Encrypt (IntPtr hKey, IntPtr hHash, bool Final, int dwFlags, byte[] iv, MODE_TYPE mode, PADDING_TYPE padding, byte[] byData, ref int DataLen, int BufferLen) |
Cifra un hash, datos generales o un archivo. | |
void | EncryptDefault (IntPtr hKey, IntPtr hHash, bool Final, int dwFlags, byte[] iv, byte[] byData, ref int DataLen, int BufferLen) |
Cifra utilizando la parametrización HSM estándar. | |
int | GetEncryptBuffLen (IntPtr hKey, IntPtr hHash, int DataLen) |
Devuelve el tamaño del búfer de encriptación. | |
byte[] | KEKEncode (String strKeyId, byte[] byKey) |
Cifra una clave simétrica que está fuera del HSM utilizando una RSA dentro del HSM. | |
byte[] | KEKDecode (cadena strKeyId, byte[] byKey) |
Descifra una clave simétrica que está fuera del HSM utilizando una RSA dentro del HSM. | |
void | Decrypt (string strKeyId, IntPtr hHash, bool Final, byte[] byData, ref int DataLen) |
Desencripta un hash, datos generales o un archivo. | |
void | Decrypt (IntPtr hKey, IntPtr hHash, bool Final, byte[] byData, ref int DataLen) |
Desencripta un hash, datos generales o un archivo. | |
void | Decrypt (cadena strKeyId, byte[] byData) |
Descifra un bloque en modo ECB sin relleno. Esta función es útil para PIN BLOCK. El tamaño de la matriz de datos debe ser compatible con el tipo de clave. | |
byte[] | DecryptDefault (cadena strKeyId, byte[] byData) |
Descifra un bloque utilizando la parametrización HSM estándar. | |
void | Decrypt (string strKeyId, IntPtr hHash, bool Final, byte[] iv, MODE_TYPE mode, PADDING_TYPE padding, byte[] byData, ref int DataLen) |
Desencripta un hash, datos generales o un archivo. | |
void | Decrypt (IntPtr hKey, IntPtr hHash, bool Final, int dwFlags, byte[] iv, MODE_TYPE mode, PADDING_TYPE padding, byte[] byData, ref int DataLen) |
Desencripta un hash, datos generales o un archivo. | |
void | DecryptDefault (IntPtr hKey, IntPtr hHash, bool Final, int dwFlags, byte[] iv, byte[] byData, ref int DataLen) |
Descifrado mediante la parametrización HSM estándar. | |
IntPtr | CreateHash(HASH_ALG AlgId) |
Crea un manejador para un hash. | |
byte[] | generateHash(HASH_ALG AlgId, byte[] Datos, int Banderas) |
Genera un HASH en una sola llamada. | |
byte[] | generateHash(HASH_ALG AlgId, byte[] Datos) |
Genera un HASH en una sola llamada. | |
byte[] | generateMAC(HASH_ALG AlgId, String KeyId, byte[] Data, int Flags) |
Genera un MAC en una sola llamada. | |
byte[] | generateMAC(HASH_ALG AlgId, String KeyId, byte[] Data) |
Genera un MAC en una sola llamada. | |
void | initMAC(HASH_ALG AlgId, String KeyId, int Flags) |
Inicializa una operación MAC por partes. Debe finalizarse con endMAC. | |
void | initMAC(HASH_ALG AlgId, String KeyId) |
Inicializa una operación MAC por partes. Debe finalizarse con endMAC. | |
void | updateMAC (byte[] Datos) |
Actualiza una operación MAC con más datos. | |
byte[] | endMAC () |
Finaliza una operación MAC. | |
void | initHash(HASH_ALG AlgId, int Banderas) |
Inicializa una operación HASH por partes. Debe finalizarse con endHash. | |
void | initHash(HASH_ALG AlgId) |
Inicializa una operación HASH por partes. Debe finalizarse con endHash. | |
void | updateHash (byte[] Datos) |
Actualiza una operación HASH con más datos. | |
byte[] | endHash () |
Finaliza una operación HASH. | |
void | HashData (IntPtr hHash, byte[] byData) |
Busca el hash de un dato y lo asocia al manejador del hash. | |
byte[] | Hash(HASH_ALG alg, byte[] data) |
Devuelve el hash de un dato. | |
void | DestroyHash (IntPtr hHash) |
Libera el manejador del recurso hash. | |
void | BatchSign (string strKeyId, byte[] pbBlock, Int32 dwBlockCount, Int32 dwFlags) |
Envía un lote de bloques para su firma en el HSM. | |
void | BatchSign (IntPtr hPrivateKey, byte[] pbBlock, Int32 dwBlockCount, Int32 dwFlags) |
Envía un lote de bloques para su firma en el HSM. | |
byte[] | SignHash (String keyId, byte[] bHash, DinamoClient.HASH_ALG algHash) |
Firma un hash. | |
byte[] | SignHash (String keyId, byte[] bHash, DinamoClient.HASH_ALG algHash, Int32 dwFlags) |
Firma un hash. | |
byte[] | SignHash (String keyId, IntPtr pHash, DinamoClient.HASH_ALG algHash) |
byte[] | SignHash (IntPtr hPrivateKey, IntPtr hHash) |
Firma un hash. | |
byte[] | SignHash (IntPtr hPrivateKey, IntPtr hHash, int dwFlags) |
Firma un hash. | |
bool | VerifySignature (IntPtr hHash, IntPtr hPublicKey, byte[] bySignature) |
Comprueba una firma. | |
void | SetHashValue (IntPtr hHash, byte[] Valor) |
Almacena un hash. | |
byte[] | GetHashValue (IntPtr hHash) |
Devuelve el valor hash. | |
byte[] | GetRandom (Int32 dwReturnLen) |
Devuelve un número aleatorio del generador HSM. | |
DinamoApi.DN_M_OF_N_SPLIT_INFO | MofNSplit (byte bM, byte bN, byte[] pbSecret) |
Divide M de N en secreto. Según el estándar de compartición de secretos de Shamir. | |
byte[] | MofNRecover(DinamoApi.DN_M_OF_N_PART[] parts) |
Reconstruye el secreto M de N a partir de las partes de los custodios. Según el patrón de compartición de secretos de Shamir. | |
|
inline |
Cifra bloques o archivos pasando la referencia de la clave. Utiliza el modo/relleno por defecto, es decir, MODO CBC y relleno PKCS#5.
hKey | Tirador de llave |
Final | Indica si el bloque es el último |
byData | Datos que se van a cifrar. Cuando la función regresa, los datos originales se sobrescriben con el resultado de la operación de encriptación. El tamaño del búfer se especifica mediante el parámetro dwBufLen, el número de bytes que se procesarán se especifica mediante el parámetro pdwDataLen. El tamaño del búfer debe ser suficiente para contener los datos cifrados más el relleno. |
DataLen | Cuando el parámetro de entrada contiene el número de bytes que serán procesados, cuando el parámetro de salida contiene el número de bytes de datos encriptados. Si el búfer asignado no es suficiente para recibir todos los datos encriptados (falta de espacio de relleno, por ejemplo) la función fallará devolviendo D_MORE_DATA. |
BufferLen | Tamaño del búfer: Para las operaciones simétricas que requieren relleno, el búfer debe tener al menos la longitud de los datos más el tamaño del bloque de operaciones del algoritmo que se vaya a utilizar. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Cifra un bloque en modo ECB sin relleno. Esta función es útil para PIN BLOCK. El tamaño de la matriz de datos debe ser compatible con el tipo de clave.
strKeyId | Referencia clave |
byData | Datos que se van a cifrar. Cuando la función regresa, los datos originales se sobrescriben con el resultado de la operación de encriptación. El tamaño del búfer se especifica mediante el parámetro dwBufLen, el número de bytes que se procesarán se especifica mediante el parámetro pdwDataLen. El tamaño del búfer debe ser suficiente para contener los datos cifrados más el relleno. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Cifra un bloque utilizando la parametrización HSM estándar.
Para claves simétricas: MODE_CBC: Cadena de bloques cifrados (CBC) PKCS5_PADDING: El relleno se realiza siguiendo el patrón definido en PKCS#5. IV: Relleno de ceros.
Para claves asimétricas RSA: PKCS1_PADDING: se utiliza el relleno PKCS#1 v1.5.
strKeyId | Referencia clave |
byData | Datos que deben encriptarse. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Cifra un hash, datos generales o un archivo.
strKeyId | Referencia clave | ||||||||||||||
hHash | Puntero a un hash | ||||||||||||||
Final | Indica si el bloque es el último | ||||||||||||||
iv | Vector de inicialización utilizado con los algoritmos de bloque según su modo de funcionamiento de cifrado simétrico. El tamaño del vector de inicialización depende del algoritmo simétrico utilizado, ya que tiene la misma longitud que la operación de bloque. Más detalles en el apartado Observaciones. Sólo válido para claves simétricas. | ||||||||||||||
mode | Indica el modo de funcionamiento de cifrado del algoritmo de bloques.
| ||||||||||||||
padding | La biblioteca puede trabajar con 3 formas de relleno simétrico:
| ||||||||||||||
byData | Datos que se van a cifrar. Cuando la función regresa, los datos originales se sobrescriben con el resultado de la operación de encriptación. El tamaño del búfer se especifica mediante el parámetro dwBufLen, el número de bytes que se procesarán se especifica mediante el parámetro pdwDataLen. El tamaño del búfer debe ser suficiente para contener los datos cifrados más el relleno. | ||||||||||||||
DataLen | Cuando el parámetro de entrada contiene el número de bytes que serán procesados, cuando el parámetro de salida contiene el número de bytes de datos encriptados. Si el búfer asignado no es suficiente para recibir todos los datos encriptados (falta de espacio de relleno, por ejemplo) la función fallará devolviendo D_MORE_DATA. | ||||||||||||||
BufferLen | Tamaño del búfer: Para las operaciones simétricas que requieren relleno, el búfer debe tener al menos la longitud de los datos más el tamaño del bloque de operaciones del algoritmo que se vaya a utilizar. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Cifra un hash, datos generales o un archivo.
hKey | Contexto clave | ||||||||||||||
hHash | Puntero a un hash | ||||||||||||||
Final | Indica si el bloque es el último | ||||||||||||||
dwFlags | Reservado para uso futuro (debe ser 0). | ||||||||||||||
iv | Vector de inicialización utilizado con los algoritmos de bloque según su modo de funcionamiento de cifrado simétrico. El tamaño del vector de inicialización depende del algoritmo simétrico utilizado, ya que tiene la misma longitud que la operación de bloque. Más detalles en el apartado Observaciones. Sólo válido para claves simétricas. | ||||||||||||||
mode | Indica el modo de funcionamiento de cifrado del algoritmo de bloques.
| ||||||||||||||
padding | La biblioteca puede trabajar con 3 formas de relleno simétrico:
| ||||||||||||||
byData | Datos que se van a cifrar. Cuando la función regresa, los datos originales se sobrescriben con el resultado de la operación de encriptación. El tamaño del búfer se especifica mediante el parámetro dwBufLen, el número de bytes que se procesarán se especifica mediante el parámetro pdwDataLen. El tamaño del búfer debe ser suficiente para contener los datos cifrados más el relleno. | ||||||||||||||
DataLen | Tamaño del bloque. Cuando el parámetro de entrada, contiene el número de bytes que serán procesados, cuando el parámetro de salida, contiene el número de bytes de datos encriptados.Si el buffer asignado no es suficiente para recibir todos los datos encriptados (falta de espacio para relleno, por ejemplo) la función fallará devolviendo D_MORE_DATA. | ||||||||||||||
BufferLen | Tamaño del búfer: Para las operaciones simétricas que requieren relleno, el búfer debe tener al menos la longitud de los datos más el tamaño del bloque de operaciones del algoritmo que se vaya a utilizar. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Cifra utilizando la parametrización HSM estándar.
Para claves simétricas: MODE_CBC: Cipher Block Chain (CBC) PKCS5_PADDING: El relleno se realiza siguiendo el patrón definido en PKCS#5.
Para claves asimétricas RSA: PKCS1_PADDING: se utiliza el relleno PKCS#1 v1.5.
hKey | Contexto clave |
hHash | Puntero a un hash |
Final | Indica si el bloque es el último |
dwFlags | Reservado para uso futuro (debe ser 0). |
iv | Vector de inicialización utilizado con los algoritmos de bloque según su modo de funcionamiento de cifrado simétrico. El tamaño del vector de inicialización depende del algoritmo simétrico utilizado, ya que tiene la misma longitud que la operación de bloque. Más detalles en el apartado Observaciones. Sólo válido para claves simétricas. Si se pasa null, se utilizará el IV relleno a cero. |
byData | Datos que se van a cifrar. Cuando la función regresa, los datos originales se sobrescriben con el resultado de la operación de encriptación. El tamaño del búfer se especifica mediante el parámetro dwBufLen, el número de bytes que se procesarán se especifica mediante el parámetro pdwDataLen. El tamaño del búfer debe ser suficiente para contener los datos cifrados más el relleno. |
DataLen | Tamaño del bloque. Cuando el parámetro de entrada, contiene el número de bytes que serán procesados, cuando el parámetro de salida, contiene el número de bytes de datos encriptados.Si el buffer asignado no es suficiente para recibir todos los datos encriptados (falta de espacio para relleno, por ejemplo) la función fallará devolviendo D_MORE_DATA. |
BufferLen | Tamaño del búfer: Para las operaciones simétricas que requieren relleno, el búfer debe tener al menos la longitud de los datos más el tamaño del bloque de operaciones del algoritmo que se vaya a utilizar. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Devuelve el tamaño del búfer de encriptación.
hKey | Contexto clave |
hHash | Puntero a un hash |
DataLen | Tamaño de los datos a encriptar |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Cifra una clave simétrica que está fuera del HSM utilizando una RSA dentro del HSM.
strKeyId | Identificación de claves RSA |
byKey | Contenido de la clave simétrica |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Descifra una clave simétrica que está fuera del HSM utilizando una RSA dentro del HSM.
strKeyId | Identificación de claves RSA |
byKey | Contenido de la clave simétrica cifrada |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Desencripta un hash, datos generales o un archivo.
strKeyId | Referencia clave |
hHash | Puntero a un hash |
Final | Indica si el bloque es el último |
byData | Buffer que contiene los datos a descifrar. Cuando la función regresa, los datos originales se sobrescriben con el resultado de la operación de cifrado. Para las operaciones simétricas de bloque, el tamaño de los datos debe ser siempre múltiplo del bloque utilizado por el algoritmo en cuestión. |
DataLen | Devuelve el tamaño de los datos en byData. Cuando parámetro de entrada, contiene el número de bytes a procesar, cuando parámetro de salida, contiene el número de bytes de datos en texto claro. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Desencripta un hash, datos generales o un archivo.
hKey | Contexto clave |
hHash | Puntero a un hash |
Final | Indica si el bloque es el último |
byData | Buffer que contiene los datos a descifrar. Cuando la función regresa, los datos originales se sobrescriben con el resultado de la operación de cifrado. Para las operaciones simétricas de bloque, el tamaño de los datos debe ser siempre múltiplo del bloque utilizado por el algoritmo en cuestión. |
DataLen | Devuelve el tamaño de los datos en byData. Cuando parámetro de entrada, contiene el número de bytes a procesar, cuando parámetro de salida, contiene el número de bytes de datos en texto claro. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Descifra un bloque en modo ECB sin relleno. Esta función es útil para PIN BLOCK. El tamaño de la matriz de datos debe ser compatible con el tipo de clave.
strKeyId | Referencia clave |
byData | Búfer de datos |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Descifra un bloque utilizando la parametrización HSM estándar.
Para claves simétricas: MODE_CBC: Cadena de bloques cifrados (CBC) PKCS5_PADDING: El relleno se realiza siguiendo el patrón definido en PKCS#5. IV: Relleno de ceros.
Para claves asimétricas RSA: PKCS1_PADDING: se utiliza el relleno PKCS#1 v1.5.
strKeyId | Referencia clave |
byData | Búfer de datos |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Desencripta un hash, datos generales o un archivo.
strKeyId | Referencia clave | ||||||||||||||
hHash | Puntero a un hash | ||||||||||||||
Final | Indica si el bloque es el último | ||||||||||||||
iv | Vector de inicialización utilizado con los algoritmos de bloque según su modo de funcionamiento de cifrado simétrico. El tamaño del vector de inicialización depende del algoritmo simétrico utilizado, ya que tiene la misma longitud que la operación de bloque. Más detalles en el apartado Observaciones. Sólo válido para claves simétricas. | ||||||||||||||
mode | Indica el modo de funcionamiento de cifrado del algoritmo de bloques.
| ||||||||||||||
padding | La biblioteca puede trabajar con 3 formas de relleno simétrico:
| ||||||||||||||
byData | Buffer que contiene los datos a descifrar. Cuando la función regresa, los datos originales se sobrescriben con el resultado de la operación de cifrado. Para las operaciones simétricas de bloque, el tamaño de los datos debe ser siempre múltiplo del bloque utilizado por el algoritmo en cuestión. | ||||||||||||||
DataLen | Devuelve el tamaño de los datos en byData. Cuando parámetro de entrada, contiene el número de bytes a procesar, cuando parámetro de salida, contiene el número de bytes de datos en texto claro. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Desencripta un hash, datos generales o un archivo.
hKey | Conexión clave | ||||||||||||||
hHash | Puntero a un hash | ||||||||||||||
Final | Indica si el bloque es el último | ||||||||||||||
dwFlags | Reservado para uso futuro (debe ser 0). | ||||||||||||||
iv | Vector de inicialización utilizado con los algoritmos de bloque según su modo de funcionamiento de cifrado simétrico. El tamaño del vector de inicialización depende del algoritmo simétrico utilizado, ya que tiene la misma longitud que la operación de bloque. Más detalles en el apartado Observaciones. Sólo válido para claves simétricas. | ||||||||||||||
mode | Indica el modo de funcionamiento de cifrado del algoritmo de bloques.
| ||||||||||||||
padding | La biblioteca puede trabajar con 3 formas de relleno simétrico:
| ||||||||||||||
byData | Buffer que contiene los datos a descifrar. Cuando la función regresa, los datos originales se sobrescriben con el resultado de la operación de cifrado. Para las operaciones simétricas de bloque, el tamaño de los datos debe ser siempre múltiplo del bloque utilizado por el algoritmo en cuestión. | ||||||||||||||
DataLen | Devuelve el tamaño de los datos en byData. Cuando parámetro de entrada, contiene el número de bytes a procesar, cuando parámetro de salida, contiene el número de bytes de datos en texto claro. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Descifrado mediante la parametrización HSM estándar.
Para claves simétricas: MODE_CBC: Cipher Block Chain (CBC) PKCS5_PADDING: El relleno se realiza siguiendo el patrón definido en PKCS#5.
Para claves asimétricas RSA: PKCS1_PADDING: se utiliza el relleno PKCS#1 v1.5.
hKey | Conexión clave |
hHash | Puntero a un hash |
Final | Indica si el bloque es el último |
dwFlags | Reservado para uso futuro (debe ser 0). |
iv | Vector de inicialización utilizado con los algoritmos de bloque según su modo de funcionamiento de cifrado simétrico. El tamaño del vector de inicialización depende del algoritmo simétrico utilizado, ya que tiene la misma longitud que la operación de bloque. Más detalles en el apartado Observaciones. Sólo válido para claves simétricas. Si se pasa null, se utilizará el IV relleno a cero. |
byData | Buffer que contiene los datos a descifrar. Cuando la función regresa, los datos originales se sobrescriben con el resultado de la operación de cifrado. Para las operaciones simétricas de bloque, el tamaño de los datos debe ser siempre múltiplo del bloque utilizado por el algoritmo en cuestión. |
DataLen | Devuelve el tamaño de los datos en byData. Cuando parámetro de entrada, contiene el número de bytes a procesar, cuando parámetro de salida, contiene el número de bytes de datos en texto claro. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Crea un manejador para un hash.
AlgId | Algoritmo hash |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Genera un HASH en una sola llamada.
AlgId | Algoritmo hash |
Data | Mensaje |
Flags | Debe pasarse el cero |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Genera un HASH en una sola llamada.
AlgId | Algoritmo hash |
Data | Mensaje |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Genera un MAC en una sola llamada.
AlgId | Algoritmo hash |
KeyId | Nombre de la clave MAC |
Data | Mensaje |
Flags | Se debe pasar el cero |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Genera un MAC en una sola llamada.
AlgId | Algoritmo hash |
KeyId | Nombre de la clave MAC |
Data | Mensaje |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Inicializa una operación MAC por partes. Debe finalizarse con endMAC.
AlgId | Algoritmo hash |
KeyId | Nombre de la clave MAC |
Flags | Debe pasarse el cero |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Inicializa una operación MAC por partes. Debe finalizarse con endMAC.
AlgId | Algoritmo hash |
KeyId | Nombre de la clave MAC |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Actualiza una operación MAC con más datos.
Data | Mensaje |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Finaliza una operación MAC.
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Inicializa una operación HASH por partes. Debe finalizarse con endHash.
AlgId | Algoritmo hash |
Flags | Debe pasarse el cero |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Inicializa una operación HASH por partes. Debe finalizarse con endHash.
AlgId | Algoritmo hash |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Actualiza una operación HASH con más datos.
Data | Mensaje |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Finaliza una operación HASH.
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Busca el hash de un dato y lo asocia al manejador del hash.
hHash | IntPtr Puntero al recurso hash |
byData | Datos en bytes |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Devuelve el hash de un dato.
alg | Algoritmo hash |
data | Datos en bytes |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Libera el manejador del recurso hash.
hHash | IntPtr Puntero al recurso hash |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Envía un lote de bloques para su firma en el HSM.
strKeyId | Nombre clave. |
pbBlock | Matriz de bytes que contiene los bloques que serán concatenados con signo y con los rellenos apropiados realizados. Añade el relleno cero de tamaño DN_BATCH_SIGN_BLOCK_HEADER al principio de esta matriz de bloques. La estructura debe ser la siguiente Relleno cero de tamaño DN_BATCH_SIGN_BLOCK_HEADER | BLOQUE 1 | BLOQUE 2 | BLOQUE 3 | ... Los bloques con signo se devolverán en las mismas posiciones que los bloques de entrada. |
dwBlockCount | Número de bloques contenidos en pbBlock. |
dwFlags | Reservado para uso futuro (debe ser 0). |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Envía un lote de bloques para su firma en el HSM.
hPrivateKey | Contexto clave. |
pbBlock | Matriz de bytes que contiene los bloques que serán concatenados con signo y con los rellenos apropiados realizados. Añade el relleno cero de tamaño DN_BATCH_SIGN_BLOCK_HEADER al principio de esta matriz de bloques. La estructura debe ser la siguiente Relleno cero de tamaño DN_BATCH_SIGN_BLOCK_HEADER | BLOQUE 1 | BLOQUE 2 | BLOQUE 3 | ... Los bloques con signo se devolverán en las mismas posiciones que los bloques de entrada. |
dwBlockCount | Número de bloques contenidos en pbBlock. |
dwFlags | Reservado para uso futuro (debe ser 0). |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Firma un hash.
keyId | Identificador de clave privada |
bHash | Matriz con hash |
algHash | Algoritmo hash utilizado. Ver: HASH_ALG |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Firma un hash.
keyId | Identificador de clave privada | ||||||||
bHash | Matriz con hash | ||||||||
algHash | Algoritmo hash utilizado. Ver: HASH_ALG | ||||||||
dwFlags | Opciones de suscripción, puede ser 0 o más de uno de los valores siguientes:
|
DinamoException | Lanza una excepción en caso de error. |
|
inline |
|
inline |
Firma un hash.
hHash | Puntero al recurso hash |
hPrivateKey | Puntero a la clave privada |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Firma un hash.
hHash | Puntero al recurso hash | ||||||||
hPrivateKey | Puntero a la clave privada | ||||||||
dwFlags | Opciones de suscripción, puede ser 0 o más de uno de los valores siguientes:
|
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Comprueba una firma.
hHash | Puntero al recurso hash |
hPublicKey | Puntero al recurso de clave pública |
bySignature | Conjunto de firmas |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Almacena un hash.
hHash | Puntero al recurso hash |
Value | Valor hash |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Devuelve el valor hash.
hHash | Puntero al recurso hash |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Devuelve un número aleatorio del generador HSM.
dwReturnLen | Tamaño en bytes del número aleatorio |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Divide M de N en secreto. Según el estándar de compartición de secretos de Shamir.
bM | Número mínimo de partes necesarias para reconstruir el secreto. Mínimo de DinamoApi . DN_M_OF_N_S_MIN y máximo de DinamoApi.DN_M_OF_N_S_MAX. |
bN | Número total de piezas a generar. |
pbSecret | Secreto que se va a compartir. Debe tener el tamaño DinamoApi.DN_M_OF_N_S_LEN. Se puede pasar nulo para que el HSM genere un secreto aleatoriamente. |
DinamoException | Lanza una excepción en caso de error. |
|
inline |
Reconstruye el secreto M de N a partir de las partes de los custodios. Según el patrón de compartición de secretos de Shamir.
parts | Conjunto de piezas secretas. |
DinamoException | Lanza una excepción en caso de error. |