AusweisApp2
 Alle Klassen Namensbereiche Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Propertys Freundbeziehungen Makrodefinitionen
CVCertificateBody.h
gehe zur Dokumentation dieser Datei
1 
5 #pragma once
6 
7 #include "ASN1TemplateUtil.h"
8 #include "ASN1Util.h"
9 #include "Chat.h"
10 #include "EcdsaPublicKey.h"
11 
12 #include <QCryptographicHash>
13 #include <QDate>
14 #include <QMap>
15 #include <QSharedPointer>
16 #include <QString>
17 
18 #include <openssl/ec.h>
19 
20 
21 namespace governikus
22 {
23 
25 {
26  ASN1_OBJECT* mOid;
27  ASN1_OCTET_STRING* mObject1;
28  ASN1_OCTET_STRING* mObject2;
29  ASN1_OCTET_STRING* mObject3;
30  ASN1_OCTET_STRING* mObject4;
31  ASN1_OCTET_STRING* mObject5;
32  ASN1_OCTET_STRING* mObject6;
33  ASN1_OCTET_STRING* mObject7;
34  ASN1_OCTET_STRING* mObject8;
36 DECLARE_ASN1_FUNCTIONS(CERTIFICATEEXTENSION)
37 
38 #if OPENSSL_VERSION_NUMBER < 0x10100000L
39 DECLARE_STACK_OF(CERTIFICATEEXTENSION)
40 #else
41 DEFINE_STACK_OF(CERTIFICATEEXTENSION)
42 #endif
43 
45 {
46  ASN1_OCTET_STRING* mCertificateProfileIdentifier;
51  ASN1_OCTET_STRING* mEffectiveDate;
52  ASN1_OCTET_STRING* mExpirationDate;
53  STACK_OF(CERTIFICATEEXTENSION) * mExtensions;
54 
55  static QSharedPointer<certificateprofilebody_st> fromHex(const QString& pHexValue);
56  static QSharedPointer<certificateprofilebody_st> decode(const QByteArray& pBytes);
57  QByteArray encode();
58 
59  QByteArray getCertificateProfileIdentifier() const;
60  QByteArray getCertificationAuthorityReference() const;
61 
62  const EcdsaPublicKey& getPublicKey() const;
63  QByteArray getCertificateHolderReference() const;
64 
65  const CHAT& getCHAT() const;
66 
67  void setCertificateExpirationDate(QDate date);
68  QDate getCertificateExpirationDate() const;
69 
70  void setCertificateEffectiveDate(QDate date);
71  QDate getCertificateEffectiveDate() const;
72 
73  QCryptographicHash::Algorithm getHashAlgorithm() const;
74  QMap<QByteArray, QByteArray> getExtensions() const;
75 
77 
78 DECLARE_ASN1_FUNCTIONS(CVCertificateBody)
80 
81 }
ASN1_OCTET_STRING * mObject2
Definition: CVCertificateBody.h:28
void setCertificateExpirationDate(QDate date)
Definition: CVCertificateBody.cpp:152
ASN1_OCTET_STRING * mObject3
Definition: CVCertificateBody.h:29
QCryptographicHash::Algorithm getHashAlgorithm() const
Definition: CVCertificateBody.cpp:184
struct governikus::certificateprofilebody_st CVCertificateBody
ASN1_OCTET_STRING * mObject8
Definition: CVCertificateBody.h:34
EcdsaPublicKey * mPublicKey
Definition: CVCertificateBody.h:48
static QSharedPointer< certificateprofilebody_st > decode(const QByteArray &pBytes)
Definition: CVCertificateBody.cpp:114
QDate getCertificateEffectiveDate() const
Definition: CVCertificateBody.cpp:172
ASN1_OCTET_STRING * mObject5
Definition: CVCertificateBody.h:31
ASN1_OCTET_STRING * mObject6
Definition: CVCertificateBody.h:32
ASN1_STRING * mCertificateHolderReference
Definition: CVCertificateBody.h:49
static QSharedPointer< certificateprofilebody_st > fromHex(const QString &pHexValue)
Definition: CVCertificateBody.cpp:108
void setCertificateEffectiveDate(QDate date)
Definition: CVCertificateBody.cpp:165
QByteArray encode()
Definition: CVCertificateBody.cpp:120
ASN1_OCTET_STRING * mEffectiveDate
Definition: CVCertificateBody.h:51
ASN1_OCTET_STRING * mObject7
Definition: CVCertificateBody.h:33
CHAT * mChat
Definition: CVCertificateBody.h:50
Definition: CVCertificateBody.h:44
QMap< QByteArray, QByteArray > getExtensions() const
Definition: CVCertificateBody.cpp:213
According to.
Definition: Chat.h:65
const CHAT & getCHAT() const
Definition: CVCertificateBody.cpp:145
STACK_OF(CERTIFICATEEXTENSION)*mExtensions
ASN1_OCTET_STRING * mCertificateProfileIdentifier
Definition: CVCertificateBody.h:46
#define DECLARE_ASN1_OBJECT(name)
Definition: ASN1TemplateUtil.h:152
const EcdsaPublicKey & getPublicKey() const
Definition: CVCertificateBody.cpp:138
QByteArray getCertificationAuthorityReference() const
Definition: CVCertificateBody.cpp:132
ASN1_OCTET_STRING * mObject4
Definition: CVCertificateBody.h:30
QDate getCertificateExpirationDate() const
Definition: CVCertificateBody.cpp:159
ASN1_OBJECT * mOid
Definition: CVCertificateBody.h:26
ASN1_OCTET_STRING * mExpirationDate
Definition: CVCertificateBody.h:52
Definition: CVCertificateBody.h:24
ASN1_STRING * mCertificationAuthorityReference
Definition: CVCertificateBody.h:47
ASN1_OCTET_STRING * mObject1
Definition: CVCertificateBody.h:27
According to TR-03110-3 chapter D elliptic curve public keys are defined as follows: ...
Definition: EcdsaPublicKey.h:39
struct governikus::CERTIFICATEEXTENSION_st CERTIFICATEEXTENSION
QByteArray getCertificateHolderReference() const
Definition: CVCertificateBody.cpp:178
QByteArray getCertificateProfileIdentifier() const
Definition: CVCertificateBody.cpp:126