AusweisApp
Lade ...
Suche ...
Keine Treffer
Card.h
gehe zur Dokumentation dieser Datei
1
9#pragma once
10
11#include "CardReturnCode.h"
13#include "apdu/CommandApdu.h"
14#include "apdu/ResponseApdu.h"
17
18#include <QObject>
19#include <QPointer>
20
21
22namespace governikus
23{
24
32
33#ifndef QT_NO_DEBUG
35{
36 return pLeft.mReturnCode == pRight.mReturnCode
37 && pLeft.mEfCardSecurity == pRight.mEfCardSecurity
38 && pLeft.mAuthenticationToken == pRight.mAuthenticationToken
39 && pLeft.mNonce == pRight.mNonce;
40}
41
42
43#endif
44
45class Card
46 : public QObject
47{
49
50 public:
51 Card();
52 ~Card() override = default;
53
58
63
67 virtual bool isConnected() const = 0;
68
73 virtual void setProgressMessage(const QString& pMessage, int pProgress = -1);
74
81
86
91
96
100 static QString generateProgressMessage(const QString& pMessage, int pProgress = -1);
101
103
105
109 const QByteArray& pSignature,
110 const QByteArray& pPin,
112};
113
114} // namespace governikus
Definition CVCertificateChain.h:24
Definition Card.h:47
virtual EstablishPaceChannelOutput prepareIdentification(const QByteArray &pChat)
Definition Card.cpp:77
static QString generateProgressMessage(const QString &pMessage, int pProgress=-1)
Combines the message and progressvalue depending on the environment.
Definition Card.cpp:56
virtual EstablishPaceChannelOutput establishPaceChannel(PacePasswordId pPasswordId, int pPreferredPinLength, const QByteArray &pChat, const QByteArray &pCertificateDescription, quint8 pTimeoutSeconds=60)
Establishes a PACE channel, i.e.
Definition Card.cpp:28
virtual void setProgressMessage(const QString &pMessage, int pProgress=-1)
Sets the current workflow progress message.
Definition Card.cpp:21
~Card() override=default
virtual ResponseApduResult transmit(const CommandApdu &pCmd)=0
Performs a transmit to the smart card.
virtual ResponseApduResult setEidPin(quint8 pTimeoutSeconds)
Sets a new eID PIN, i.e.
Definition Card.cpp:47
Card()
Definition Card.cpp:15
virtual CardReturnCode releaseConnection()=0
Destroys the previously established connection to the smart card.
virtual CardReturnCode destroyPaceChannel()
Destroys an existing PACE channel, i.e.
Definition Card.cpp:40
virtual TerminalAndChipAuthenticationResult performTAandCA(const CVCertificateChain &pTerminalCvcChain, const QByteArray &pAuxiliaryData, const QByteArray &pSignature, const QByteArray &pPin, const QByteArray &pEphemeralPublicKey)
Definition Card.cpp:94
virtual bool isConnected() const =0
Is the smart card connected, i.e.
virtual CardReturnCode establishConnection()=0
Establish a connection to the smart card.
virtual ResponseApduResult getChallenge()
Definition Card.cpp:86
Definition EstablishPaceChannelOutput.h:49
Implementation of GeneralAuthenticate response APDUs.
Definition CommandApdu.h:17
quint8
Definition ResponseApdu.h:64
QSharedPointer< T > decodeObject(const QByteArray &pData, bool pLogging=true)
Template function for decoding an OpenSSL type from DER encoded QByteArray.
Definition ASN1TemplateUtil.h:114
bool operator==(const CommandApdu &pLeft, const CommandApdu &pRight)
Definition CommandApdu.h:105
Definition ResponseApdu.h:115
QByteArray mAuthenticationToken
Definition Card.h:29
QByteArray mNonce
Definition Card.h:30
CardReturnCode mReturnCode
Definition Card.h:27
QByteArray mEfCardSecurity
Definition Card.h:28