48 const std::string &pubkey_pem) = 0;
59 const MyDivInfo &div_info,
bool &out_success,
67 const MyDivInfo &div_info,
bool &out_success,
73 const MyDivInfo &div_info,
bool &out_success,
80 const MyDivInfo &div_info,
bool &out_success,
87 virtual void change_key(
const std::string &old_key_identity,
88 const std::string &new_key_identity,
bool change_same_key,
89 const std::string &session_key_uuid,
91 const MyDivInfo &new_key_div, uint8_t key_no,
Definition: RemoteCrypto.hpp:36
virtual void iso_authenticate_step2(const std::string &key_identity, const ByteVector &picc_cryptogram, const ByteVector &auth_context_id, const MyDivInfo &div_info, bool &out_success, ByteVector &out_session_key, ByteVector &out_session_key_ref)=0
virtual void aes_authenticate_step1(const std::string &key_identity, const ByteVector &encrypted_random_picc, const MyDivInfo &div_info, bool &out_success, ByteVector &out_encrypted_cryptogram, ByteVector &out_auth_context_id)=0
virtual void aes_authenticate_step2(const std::string &key_identity, const ByteVector &picc_cryptogram, const ByteVector &auth_context_id, const MyDivInfo &div_info, bool &out_success, ByteVector &out_session_key, ByteVector &out_session_key_ref)=0
virtual ByteVector aes_decrypt(const ByteVector &in, const std::string &key_name, const ByteVector &iv, SignatureResult *out_signature=nullptr)=0
virtual bool verify_signature(const SignatureResult &sr, const std::string &pubkey_pem)=0
virtual void iso_authenticate_step1(const std::string &key_identity, const ByteVector &random_picc, const MyDivInfo &div_info, bool &out_success, ByteVector &out_random2, ByteVector &out_encrypted_cryptogram, ByteVector &out_auth_context_id)=0
virtual ByteVector aes_encrypt(const ByteVector &in, const std::string &key_name, const ByteVector &iv)=0
virtual void change_key(const std::string &old_key_identity, const std::string &new_key_identity, bool change_same_key, const std::string &session_key_uuid, const ByteVector &session_key, const MyDivInfo &old_key_div, const MyDivInfo &new_key_div, uint8_t key_no, const ByteVector &iv, ByteVector &out_cryptogram)=0
std::vector< uint8_t > ByteVector
Definition: lla_fwd.hpp:80
Definition: RemoteCrypto.hpp:24
std::string div_type
Definition: RemoteCrypto.hpp:25
ByteVector div_input
Definition: RemoteCrypto.hpp:26
Definition: RemoteCrypto.hpp:11
ByteVector payload
Definition: RemoteCrypto.hpp:12
uint64_t timestamp
Definition: RemoteCrypto.hpp:15
uint64_t nonce
Definition: RemoteCrypto.hpp:13
ByteVector run_uuid
Definition: RemoteCrypto.hpp:14
Definition: RemoteCrypto.hpp:9
ByteVector signature
Definition: RemoteCrypto.hpp:19
struct logicalaccess::SignatureResult::Description desc