![]()  | 
     BALTECH Docs | 
    C API for BALTECH SDK
   
    
   
   | 
   
This command group regroups the commands needed for public key infrastructure (PKI)-based protocol encryption. More...
#include "../typedefs.h"Go to the source code of this file.
Macros | |
| #define | BRP_Pki_ErrCrypto BRP_ERR_STATUS(0x0900, 0x01) | 
| Invalid Key used for encryption/MACing or MAC is invalid.  More... | |
| #define | BRP_Pki_ErrTunnel BRP_ERR_STATUS(0x0900, 0x02) | 
| It is not possible to tunnel this command.  More... | |
| #define | BRP_Pki_ErrCert BRP_ERR_STATUS(0x0900, 0x03) | 
| The certificate (or key) has invalid format or signature.  More... | |
| #define | BRP_Pki_ErrSeqctr BRP_ERR_STATUS(0x0900, 0x04) | 
| The sequence counter was too low.  More... | |
| #define | BRP_Pki_ErrSeclevelUnsupported BRP_ERR_STATUS(0x0900, 0x05) | 
| This security level has no key for authentication.  More... | |
| #define | BRP_Pki_ErrSessionTimeout BRP_ERR_STATUS(0x0900, 0x06) | 
| The security session timed out.  More... | |
Functions | |
| brp_errcode | brp_Pki_PfsGenKey (brp_protocol protocol, brp_buf TmpHostPubKey, size_t TmpHostPubKey_len, brp_buf *TmpRdrPubKey, size_t *TmpRdrPubKey_len, brp_mempool *mempool) | 
| This command prepares a perfect forward secrecy (PFS) session by exchanging the public part of temporary elliptic curve cryptography (ECC) keys generated by host and reader.  More... | |
| brp_errcode | brp_Pki_PfsAuthHostCert (brp_protocol protocol, brp_buf EncryptedPayload, size_t EncryptedPayload_len) | 
| This command authenticates the host's certificate chain to the reader.  More... | |
| brp_errcode | brp_Pki_PfsAuthRdrCert (brp_protocol protocol, brp_buf *EncryptedResponse, size_t *EncryptedResponse_len, brp_mempool *mempool) | 
| After successfully authenticating the host against the reader using the brp_Pki_PfsAuthHostCert() command, the reader must return its own certificate to the host in order the host to verify it.  More... | |
| brp_errcode | brp_Pki_Tunnel2 (brp_protocol protocol, unsigned SequenceCounter, brp_buf CmdHMAC, brp_buf EncryptedCmd, size_t EncryptedCmd_len, brp_buf *RspHMAC, brp_buf *EncryptedRsp, size_t *EncryptedRsp_len, brp_mempool *mempool) | 
| Runs a command in the Security Level authenticated by the brp_Pki_PfsGenKey(), brp_Pki_PfsAuthHostCert(), brp_Pki_PfsAuthRdrCert() commands sequence.  More... | |
| brp_errcode | brp_Pki_GetX509Csr (brp_protocol protocol, brp_buf *Csr, size_t *Csr_len, brp_mempool *mempool) | 
| Every reader is shipped with a unique ECC P-256 key, generated at the time of manufacturing.  More... | |
| brp_errcode | brp_Pki_StoreX509Cert (brp_protocol protocol, unsigned SecLevel, brp_buf Cert, size_t Cert_len) | 
| After signing a CSR using the brp_Pki_GetX509Csr() command, run this command to store the resulting in the reader's certificate store.  More... | |
| brp_errcode | brp_Pki_StoreX509RootCert (brp_protocol protocol, unsigned SecLevel, brp_buf Cert, size_t Cert_len) | 
| Every security level that should be usable with the PKI must be provided with a root certificate.  More... | |
This command group regroups the commands needed for public key infrastructure (PKI)-based protocol encryption.
Definition in file pki.h.