AusweisApp2
Lade ...
Suche ...
Keine Treffer
CertificateDescription.h
gehe zur Dokumentation dieser Datei
1
9#pragma once
10
11#include "ASN1TemplateUtil.h"
12#include "ASN1Util.h"
13#include "Oid.h"
14
15#include <openssl/asn1t.h>
16#include <openssl/err.h>
17
18#include <QSet>
19#include <QSharedPointer>
20#include <QString>
21
22
23namespace governikus
24{
25
42{
44 {
46 };
47
48 ASN1_OBJECT* mDescriptionType;
49 ASN1_UTF8STRING* mIssuerName;
50 ASN1_PRINTABLESTRING* mIssuerURL;
51 ASN1_UTF8STRING* mSubjectName;
52 ASN1_PRINTABLESTRING* mSubjectURL;
53 ASN1_TYPE* mTermsOfUsage;
54 ASN1_PRINTABLESTRING* mRedirectURL;
55 STACK_OF(ASN1_OCTET_STRING) * mCommCertificates;
56
57
58 static QSharedPointer<const CertificateDescription> fromHex(const QByteArray& pHexValue);
59 static QSharedPointer<const CertificateDescription> decode(const QByteArray& pBytes);
60 QByteArray encode();
61
62 [[nodiscard]] Oid getDescriptionType() const;
63 [[nodiscard]] QString getIssuerName() const;
64 [[nodiscard]] QString getIssuerUrl() const;
65 [[nodiscard]] QString getSubjectName() const;
66 [[nodiscard]] QString getSubjectUrl() const;
67 [[nodiscard]] TermsOfUsageType getTermsOfUsageType() const;
68 [[nodiscard]] QString getTermsOfUsage() const;
69 [[nodiscard]] QString getRedirectUrl() const;
70 [[nodiscard]] QSet<QString> getCommCertificates() const;
71
77 [[nodiscard]] QString getServiceProviderAddress() const;
78
84 [[nodiscard]] QString getPurpose() const;
85
91 [[nodiscard]] QString getDataSecurityOfficer() const;
92};
93
94DECLARE_ASN1_FUNCTIONS(CertificateDescription)
96
97#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
98 #define sk_ASN1_OCTET_STRING_num(data) data->stack.num
99 #define sk_ASN1_OCTET_STRING_value(data, i) SKM_sk_value(ASN1_OCTET_STRING, data, i)
100#endif
101
102} // namespace governikus
#define DECLARE_ASN1_OBJECT(name)
Definition: ASN1TemplateUtil.h:178
Implementation of GeneralAuthenticate response APDUs.
Definition: CommandApdu.h:16
Definition: CertificateDescription.h:42
Oid getDescriptionType() const
Definition: CertificateDescription.cpp:111
QString getSubjectName() const
Definition: CertificateDescription.cpp:129
TermsOfUsageType getTermsOfUsageType() const
Definition: CertificateDescription.cpp:141
ASN1_OBJECT * mDescriptionType
Definition: CertificateDescription.h:48
QString getIssuerName() const
Definition: CertificateDescription.cpp:117
ASN1_UTF8STRING * mIssuerName
Definition: CertificateDescription.h:49
ASN1_PRINTABLESTRING * mRedirectURL
Definition: CertificateDescription.h:54
QString getRedirectUrl() const
Definition: CertificateDescription.cpp:175
QByteArray encode()
Definition: CertificateDescription.cpp:105
TermsOfUsageType
Definition: CertificateDescription.h:44
ASN1_PRINTABLESTRING * mIssuerURL
Definition: CertificateDescription.h:50
QString getServiceProviderAddress() const
Returns the address of provider.
Definition: CertificateDescription.cpp:199
ASN1_TYPE * mTermsOfUsage
Definition: CertificateDescription.h:53
STACK_OF(ASN1_OCTET_STRING) *mCommCertificates
ASN1_PRINTABLESTRING * mSubjectURL
Definition: CertificateDescription.h:52
ASN1_UTF8STRING * mSubjectName
Definition: CertificateDescription.h:51
QString getDataSecurityOfficer() const
Returns the data security officer of the certificate description.
Definition: CertificateDescription.cpp:222
static QSharedPointer< const CertificateDescription > fromHex(const QByteArray &pHexValue)
Definition: CertificateDescription.cpp:93
QString getTermsOfUsage() const
Definition: CertificateDescription.cpp:155
QSet< QString > getCommCertificates() const
Definition: CertificateDescription.cpp:181
QString getSubjectUrl() const
Definition: CertificateDescription.cpp:135
QString getPurpose() const
Returns the purpose of the certificate description.
Definition: CertificateDescription.cpp:209
static QSharedPointer< const CertificateDescription > decode(const QByteArray &pBytes)
Definition: CertificateDescription.cpp:99
QString getIssuerUrl() const
Definition: CertificateDescription.cpp:123