14 #include <QSharedPointer>
16 class test_PaceHandler;
22 friend class ::test_PaceHandler;
25 const QSharedPointer<CardConnectionWorker> mCardConnectionWorker;
26 QSharedPointer<KeyAgreement> mKeyAgreement;
27 QSharedPointer<const PaceInfo> mPaceInfo;
28 QByteArray mStatusMseSetAt;
30 QByteArray mEncryptionKey;
33 QByteArray mCarCurr, mCarPrev;
38 [[nodiscard]]
bool isSupportedProtocol(
const QSharedPointer<const PaceInfo>& pPaceInfo)
const;
45 bool initialize(
const QSharedPointer<const EFCardAccess>& pEfCardAccess);
52 CardReturnCode transmitMSESetAT(PacePasswordId pPasswordId);
57 explicit PaceHandler(
const QSharedPointer<CardConnectionWorker>& pCardConnectionWorker);
70 void setChat(
const QByteArray& pChat);
84 [[nodiscard]]
const QByteArray&
getMacKey()
const;
91 [[nodiscard]]
const QByteArray&
getCarCurr()
const;
98 [[nodiscard]]
const QByteArray&
getCarPrev()
const;
104 [[nodiscard]]
const QByteArray&
getIdIcc()
const;
Definition: PaceHandler.h:21
void setChat(const QByteArray &pChat)
The certificate holder authorization template to be supplied to the card.
Definition: PaceHandler.cpp:177
const QByteArray & getIdIcc() const
The IDicc is the card's compressed ephemeral public key.
Definition: PaceHandler.cpp:207
const QByteArray & getMacKey() const
During PACE protocol a MAC key is determined.
Definition: PaceHandler.cpp:189
PaceHandler(const QSharedPointer< CardConnectionWorker > &pCardConnectionWorker)
Definition: PaceHandler.cpp:19
QByteArray getPaceProtocol() const
The used PACE protocol.
Definition: PaceHandler.cpp:34
const QByteArray & getCarCurr() const
During PACE protocol a certificate authority reference (CAR) may be determined.
Definition: PaceHandler.cpp:195
const QByteArray & getCarPrev() const
During PACE protocol a certificate authority reference (CAR) may be determined.
Definition: PaceHandler.cpp:201
const QByteArray & getEncryptionKey() const
During PACE protocol an encryption key is determined.
Definition: PaceHandler.cpp:183
const QByteArray & getStatusMseSetAt() const
Definition: PaceHandler.cpp:213
CardReturnCode establishPaceChannel(PacePasswordId pPasswordId, const QByteArray &pPassword)
Performs the PACE protocol and establishes a PACE channel.
Definition: PaceHandler.cpp:44
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15