Keypop Calypso Crypto Symmetric C++ API 0.1.1
Reference Calypso Crypto Symmetric API for C++
SymmetricCryptoCardTransactionManagerFactorySpi.hpp
Go to the documentation of this file.
1/**************************************************************************************************
2 * Copyright (c) 2024 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 https://opensource.org/licenses/MIT. *
6 * *
7 * SPDX-License-Identifier: MIT *
8 **************************************************************************************************/
9
10#pragma once
11
12#include <memory>
13#include <vector>
14
16
17namespace keypop {
18namespace calypso {
19namespace crypto {
20namespace symmetric {
21namespace spi {
22
29public:
36 virtual bool isExtendedModeSupported() const = 0;
37
44 virtual int getMaxCardApduLengthSupported() const = 0;
45
54
68 virtual std::shared_ptr<SymmetricCryptoCardTransactionManagerSpi> createCardTransactionManager(
69 const std::vector<uint8_t>& cardKeyDiversifier,
70 const bool useExtendedMode,
71 const std::vector<std::vector<uint8_t>>& transactionAuditData)
72 = 0;
73};
74
75} /* namespace spi */
76} /* namespace symmetric */
77} /* namespace crypto */
78} /* namespace calypso */
79} /* namespace keypop */
virtual std::shared_ptr< SymmetricCryptoCardTransactionManagerSpi > createCardTransactionManager(const std::vector< uint8_t > &cardKeyDiversifier, const bool useExtendedMode, const std::vector< std::vector< uint8_t > > &transactionAuditData)=0