11 #ifndef __BRP_BALTECH_API_CMDS_CRYPTO_H__ 12 #define __BRP_BALTECH_API_CMDS_CRYPTO_H__ 13 #include "../typedefs.h" 17 #define BRP_Crypto_CrptErrInvalidBlock BRP_ERR_STATUS(0x0200, 0x01) 22 #define BRP_Crypto_CrptErrAuth BRP_ERR_STATUS(0x0200, 0x02) 26 #define BRP_Crypto_CrptErrKeyNotFound BRP_ERR_STATUS(0x0200, 0x03) 30 #define BRP_Crypto_CrptErrWriteConfigkey BRP_ERR_STATUS(0x0200, 0x04) 38 #define BRP_Crypto_CrptErrInvalidKey BRP_ERR_STATUS(0x0200, 0x05) 149 brp_errcode brp_Crypto_BalKeyEncryptBuffer(
brp_protocol protocol,
unsigned KeyVersion,
unsigned EmbeddedKeyIndex,
unsigned EmbeddedKeyPos,
brp_buf Buffer,
size_t Buffer_len,
brp_buf InitialVector,
size_t InitialVector_len,
brp_buf* EncryptedBuffer,
size_t* EncryptedBuffer_len,
brp_buf* NextInitialVector,
size_t* NextInitialVector_len,
brp_mempool *mempool);
brp_errcode brp_Crypto_GetKeySig(brp_protocol protocol, unsigned KeyIndex, brp_buf KeyValue, unsigned *KeySignature)
Returns a signature of the ConfigurationKey to identify the MasterCard needed for this reader...
brp_errcode brp_Crypto_EncryptBlock(brp_protocol protocol, unsigned KeyIndex, brp_buf KeyValue, brp_buf Block, brp_buf *EncryptedBlock, brp_mempool *mempool)
This command encrypts an 8-Byte data block given in the Block parameter using the SkipJack algorithm...
unsigned int brp_errcode
This type is used library-wide for passing error codes in the return value of functions.
brp_errcode brp_Crypto_DecryptBlock(brp_protocol protocol, unsigned KeyIndex, brp_buf KeyValue, brp_buf Block, brp_buf *UnencryptedBlock, brp_mempool *mempool)
This command decrypts an 8-Byte data block given in the Block parameter using the SkipJack algorithm...
struct brp_protocol_t * brp_protocol
This is a generic handle of a protocol.
brp_errcode brp_Crypto_BalKeyEncryptBuffer(brp_protocol protocol, unsigned KeyVersion, unsigned EmbeddedKeyIndex, unsigned EmbeddedKeyPos, brp_buf Buffer, size_t Buffer_len, brp_buf InitialVector, size_t InitialVector_len, brp_buf *EncryptedBuffer, size_t *EncryptedBuffer_len, brp_buf *NextInitialVector, size_t *NextInitialVector_len, brp_mempool *mempool)
This command is a special version of the brp_Crypto_EncryptBuffer() command which always uses a custo...
struct brp_mempool_object_t * brp_mempool
mempool handle.
brp_errcode brp_Crypto_CopyConfigKey(brp_protocol protocol, unsigned KeyIndex, bool ForceDefaultKey)
Copies the configuration card key 0x0202/0x85 (Device/Run/ConfigCardEncryptKey) to the Custom/Crypto/...
brp_errcode brp_Crypto_EncryptBuffer(brp_protocol protocol, unsigned KeyIndex, brp_buf KeyValue, brp_buf InitialVector, brp_buf Buffer, size_t Buffer_len, brp_buf *NextInitialVector, brp_buf *EncryptedBuffer, size_t *EncryptedBuffer_len, brp_mempool *mempool)
This command encrypts a variable length buffer given in the Buffer parameter using the SkipJack algor...
brp_errcode brp_Crypto_DecryptBuffer(brp_protocol protocol, unsigned KeyIndex, brp_buf KeyValue, brp_buf InitialVector, brp_buf Buffer, size_t Buffer_len, brp_buf *NextInitialVector, brp_buf *UnencryptedBuffer, size_t *UnencryptedBuffer_len, brp_mempool *mempool)
This command decrypts a variable length buffer given in the Buffer parameter using the SkipJack algor...
unsigned char * brp_buf
represents a pointer to a protocol data buffer.