Keypop Calypso Crypto Symmetric C++ API - 0.1.1
Component of the Keypop C++ API
SvCommandSecurityDataApi.hpp
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright (c) 2025 Calypso Networks Association https://calypsonet.org/ *
3 * *
4 * This program and the accompanying materials are made available under the *
5 * terms of the MIT License which is available at *
6 * https://opensource.org/licenses/MIT. *
7 * *
8 * SPDX-License-Identifier: MIT *
9 ******************************************************************************/
10
11#pragma once
12
13#include <cstdint>
14#include <vector>
15
16namespace keypop {
17namespace calypso {
18namespace crypto {
19namespace symmetric {
20
27public:
34 virtual const std::vector<uint8_t>& getSvGetRequest() const = 0;
35
43 virtual const std::vector<uint8_t>& getSvGetResponse() const = 0;
44
51 virtual const std::vector<uint8_t>& getSvCommandPartialRequest() const = 0;
52
61 setSerialNumber(const std::vector<uint8_t>& serialNumber)
62 = 0;
63
72 setTransactionNumber(const std::vector<uint8_t>& transactionNumber)
73 = 0;
74
83 setTerminalChallenge(const std::vector<uint8_t>& terminalChallenge)
84 = 0;
85
94 setTerminalSvMac(const std::vector<uint8_t>& terminalSvMac)
95 = 0;
96};
97
98} /* namespace symmetric */
99} /* namespace crypto */
100} /* namespace calypso */
101} /* namespace keypop */
Contains the input/output data of the SV command operations (LOAD / DEBIT / UNDEBIT).
virtual SvCommandSecurityDataApi & setTerminalSvMac(const std::vector< uint8_t > &terminalSvMac)=0
Sets the terminal SV MAC to be placed in the "SV Load/Debit/Undebit" command request.
virtual const std::vector< uint8_t > & getSvGetResponse() const =0
Returns the "SV Get" outgoing command data.
virtual SvCommandSecurityDataApi & setTransactionNumber(const std::vector< uint8_t > &transactionNumber)=0
Sets the transaction number to be placed in the "SV Load/Debit/Undebit" command request.
virtual SvCommandSecurityDataApi & setTerminalChallenge(const std::vector< uint8_t > &terminalChallenge)=0
Sets the terminal challenge to be placed in the SV Load/Debit/Undebit command request.
virtual const std::vector< uint8_t > & getSvCommandPartialRequest() const =0
Returns the "SV Load/Debit/Undebit" ingoing partial command data.
virtual const std::vector< uint8_t > & getSvGetRequest() const =0
Returns the "SV Get" ingoing command data.
virtual SvCommandSecurityDataApi & setSerialNumber(const std::vector< uint8_t > &serialNumber)=0
Sets the serial number to be placed in the "SV Load/Debit/Undebit" command request.