AusweisApp2
 Alle Klassen Namensbereiche Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Propertys Freundbeziehungen Makrodefinitionen
governikus::KeyAgreement Klassenreferenzabstract

#include <KeyAgreement.h>

Klassendiagramm für governikus::KeyAgreement:

Öffentliche Methoden

virtual QByteArray getUncompressedCardPublicKey ()=0
 Returns the uncompressed card's ephemeral public key calculated during key agreement. Mehr ...
 
virtual QByteArray getCompressedCardPublicKey ()=0
 Returns the compressed card's ephemeral public key calculated during key agreement. Mehr ...
 
virtual ~KeyAgreement ()
 
KeyAgreementStatus perform (const QString &pPin)
 Perform the key agreement. Mehr ...
 
const QByteArray & getEncryptionKey () const
 Subsequent to the key agreement an encryption key is determined. Mehr ...
 
const QByteArray & getMacKey () const
 Subsequent to the key agreement a MAC key is determined. Mehr ...
 
const QByteArray & getCarCurr () const
 Subsequent to the key agreement a certificate authority reference (CAR) may be determined. Mehr ...
 
const QByteArray & getCarPrev () const
 Subsequent to the key agreement a certificate authority reference (CAR) may be determined. Mehr ...
 

Öffentliche, statische Methoden

static QSharedPointer
< KeyAgreement
create (const QSharedPointer< const PACEInfo > &pPaceInfo, QSharedPointer< CardConnectionWorker > pCardConnectionWorker)
 Factory method to create an instance of KeyAgreement. Mehr ...
 

Geschützte Methoden

 KeyAgreement (const QSharedPointer< const PACEInfo > &pPaceInfo, const QSharedPointer< CardConnectionWorker > &pCardConnectionWorker)
 
CardOperationResult< QByteArray > transmitGAMappingData (const QByteArray &pMappingData)
 Transmit the General Authenticate (Mapping Data) command to the card. Mehr ...
 
CardOperationResult< QByteArray > transmitGAEphemeralPublicKey (const QByteArray &pEphemeralPublicKey)
 Transmit the General Authenticate (Ephemeral Public Key) command to the card. Mehr ...
 
QSharedPointer
< GAMutualAuthenticationResponse
transmitGAMutualAuthentication (const QByteArray &pMutualAuthenticationData)
 Transmit the General Authenticate (Mutual Authentication) command to the card. Mehr ...
 

Geschützte Attribute

const QSharedPointer< const
PACEInfo
mPaceInfo
 
KeyDerivationFunction mKeyDerivationFunction
 

Beschreibung der Konstruktoren und Destruktoren

KeyAgreement::KeyAgreement ( const QSharedPointer< const PACEInfo > &  pPaceInfo,
const QSharedPointer< CardConnectionWorker > &  pCardConnectionWorker 
)
protected
KeyAgreement::~KeyAgreement ( )
virtual

Dokumentation der Elementfunktionen

QSharedPointer< KeyAgreement > KeyAgreement::create ( const QSharedPointer< const PACEInfo > &  pPaceInfo,
QSharedPointer< CardConnectionWorker pCardConnectionWorker 
)
static

Factory method to create an instance of KeyAgreement.

Parameter
pPaceInfothe PACEInfo containing the protocol parameters
pCardConnectionWorkerthe reader connection to transmit card commands
Rückgabe
new instance

Hier ist ein Graph, der zeigt, was diese Funktion aufruft:

const QByteArray & KeyAgreement::getCarCurr ( ) const

Subsequent to the key agreement a certificate authority reference (CAR) may be determined.

This method returns this CAR.

Rückgabe
the card's CAR number 1
const QByteArray & KeyAgreement::getCarPrev ( ) const

Subsequent to the key agreement a certificate authority reference (CAR) may be determined.

This method returns this CAR.

Rückgabe
the card's CAR number 2
virtual QByteArray governikus::KeyAgreement::getCompressedCardPublicKey ( )
pure virtual

Returns the compressed card's ephemeral public key calculated during key agreement.

This public key is needed for terminal authentication.

Rückgabe
the compressed card's ephemeral public key
const QByteArray & KeyAgreement::getEncryptionKey ( ) const

Subsequent to the key agreement an encryption key is determined.

This method returns this key. I. e. the output of KDF_enc according to TR-03110 Part 3 chapter A.2.3.

Rückgabe
the encryption key
const QByteArray & KeyAgreement::getMacKey ( ) const

Subsequent to the key agreement a MAC key is determined.

This method returns this key. I. e. the output of KDF_mac according to TR-03110 Part 3 chapter A.2.3.

Rückgabe
the MAC key
virtual QByteArray governikus::KeyAgreement::getUncompressedCardPublicKey ( )
pure virtual

Returns the uncompressed card's ephemeral public key calculated during key agreement.

This public key is needed for mutual authentication.

Rückgabe
the uncompressed card's ephemeral public key
KeyAgreementStatus KeyAgreement::perform ( const QString &  pPin)

Perform the key agreement.

Parameter
pPinthe PIN value
Rückgabe
the authentication result

Hier ist ein Graph, der zeigt, was diese Funktion aufruft:

CardOperationResult< QByteArray > KeyAgreement::transmitGAEphemeralPublicKey ( const QByteArray &  pEphemeralPublicKey)
protected

Transmit the General Authenticate (Ephemeral Public Key) command to the card.

Parameter
pEphemeralPublicKeythe terminal's ephemeral public key
Rückgabe
the card's ephemeral public key

Hier ist ein Graph, der zeigt, was diese Funktion aufruft:

CardOperationResult< QByteArray > KeyAgreement::transmitGAMappingData ( const QByteArray &  pMappingData)
protected

Transmit the General Authenticate (Mapping Data) command to the card.

Parameter
pMappingDatathe terminal's mapping data.
Rückgabe
the card's mapping data

Hier ist ein Graph, der zeigt, was diese Funktion aufruft:

QSharedPointer< GAMutualAuthenticationResponse > KeyAgreement::transmitGAMutualAuthentication ( const QByteArray &  pMutualAuthenticationData)
protected

Transmit the General Authenticate (Mutual Authentication) command to the card.

Parameter
pMutualAuthenticationDatathe terminal's authentication token
Rückgabe
the complete response APDU

Hier ist ein Graph, der zeigt, was diese Funktion aufruft:

Dokumentation der Datenelemente

KeyDerivationFunction governikus::KeyAgreement::mKeyDerivationFunction
protected
const QSharedPointer<const PACEInfo> governikus::KeyAgreement::mPaceInfo
protected

Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien: