17 #include <QSharedPointer>
20 class test_PaceHandler;
26 friend class ::test_PaceHandler;
29 const QSharedPointer<CardConnectionWorker> mCardConnectionWorker;
30 QSharedPointer<KeyAgreement> mKeyAgreement;
31 QSharedPointer<const PACEInfo> mPaceInfo;
32 QByteArray mStatusMseSetAt;
34 QByteArray mEncryptionKey;
37 QByteArray mCarCurr, mCarPrev;
42 bool isSupportedProtocol(
const QSharedPointer<const PACEInfo>& pPaceInfo)
const;
49 bool initialize(
const QSharedPointer<const EFCardAccess>& pEfCardAccess);
56 CardReturnCode transmitMSESetAT(PACE_PASSWORD_ID pPasswordId);
74 void setChat(const QByteArray& pChat);
const QByteArray & getEncryptionKey() const
During PACE protocol an encryption key is determined.
Definition: PaceHandler.cpp:196
This class represents a connection to a smart card.
Definition: CardConnectionWorker.h:27
const QByteArray & getStatusMseSetAt() const
Definition: PaceHandler.cpp:226
const QByteArray & getIdIcc() const
The IDicc is the card's compressed ephemeral public key.
Definition: PaceHandler.cpp:220
void setChat(const QByteArray &pChat)
The certificate holder authorization template to be supplied to the card.
Definition: PaceHandler.cpp:190
const QByteArray & getCarPrev() const
During PACE protocol a certificate authority reference (CAR) may be determined.
Definition: PaceHandler.cpp:214
const QByteArray & getCarCurr() const
During PACE protocol a certificate authority reference (CAR) may be determined.
Definition: PaceHandler.cpp:208
QByteArray getPaceProtocol() const
The used PACE protocol.
Definition: PaceHandler.cpp:37
const QByteArray & getMacKey() const
During PACE protocol a MAC key is determined.
Definition: PaceHandler.cpp:202
CardReturnCode establishPaceChannel(PACE_PASSWORD_ID pPasswordId, const QString &pPassword)
Performs the PACE protocol and establishes a PACE channel.
Definition: PaceHandler.cpp:47
Definition: PaceHandler.h:24