AusweisApp2
KnownOIDs.h
gehe zur Dokumentation dieser Datei
1 
5 #pragma once
6 
7 #include <QByteArray>
8 
9 namespace governikus
10 {
11 
12 namespace KnownOIDs
13 {
14 enum class Base
15 {
16  BSI_DE,
17  SIGNED_DATA,
18  ID_SECURITY_OBJECT,
20 };
21 
23 {
24  ID_DESCRIPTION,
25  ID_SECTOR
26 };
27 
28 enum class TermsOfUsageType
29 {
30  ID_PLAIN_FORMAT,
31  ID_HTML_FORMAT,
33 };
34 
35 enum class CHATType
36 {
37  ID_IS,
38  ID_AT,
39  ID_ST
40 };
41 
42 enum class AuxilaryData
43 {
44  ID_DATE_OF_BIRTH,
45  ID_DATE_OF_EXPIRY,
47 };
48 
49 enum class SecurityProtocol
50 {
51  ID_PK,
52  ID_TA,
53  ID_CA,
54  ID_PACE
55 };
56 
57 enum class id_ca
58 {
59  DH,
60  DH_3DES_CBC_CBC,
61  DH_AES_CBC_CMAC_128,
62  DH_AES_CBC_CMAC_192,
63  DH_AES_CBC_CMAC_256,
64  ECDH,
65  ECDH_3DES_CBC_CBC,
66  ECDH_AES_CBC_CMAC_128,
67  ECDH_AES_CBC_CMAC_192,
69 };
70 
71 enum class id_ta
72 {
73  ECDSA_SHA_1,
74  ECDSA_SHA_224,
75  ECDSA_SHA_256,
76  ECDSA_SHA_384,
78 };
79 
80 enum class id_pk
81 {
82  DH,
83  ECDH
84 };
85 
86 namespace id_PACE
87 {
88 enum class DH
89 {
90  GM,
91  GM_3DES_CBC_CBC,
92  GM_AES_CBC_CMAC_128,
93  GM_AES_CBC_CMAC_192,
94  GM_AES_CBC_CMAC_256,
95  IM,
96  IM_3DES_CBC_CBC,
97  IM_AES_CBC_CMAC_128,
98  IM_AES_CBC_CMAC_192,
100 
101 };
102 
103 enum class ECDH
104 {
105  GM,
106  GM_3DES_CBC_CBC,
107  GM_AES_CBC_CMAC_128,
108  GM_AES_CBC_CMAC_192,
109  GM_AES_CBC_CMAC_256,
110  IM,
111  IM_3DES_CBC_CBC,
112  IM_AES_CBC_CMAC_128,
113  IM_AES_CBC_CMAC_192,
115 };
116 
117 } // namespace KnownOIDs::id_PACE
118 
119 } // namespace KnownOIDs
120 
121 #define DEFINE_TO_BYTE_ARRAY(type)\
122  QByteArray toByteArray(type pValue);\
123 \
124  inline QByteArray operator+(type pEnum, const QByteArray& pValue)\
125  {\
126  return toByteArray(pEnum) + pValue;\
127  }\
128 \
129  inline bool operator==(const QByteArray& pValue, type pEnum)\
130  {\
131  return toByteArray(pEnum) == pValue;\
132  }\
133 \
134  inline bool operator!=(const QByteArray& pValue, type pEnum)\
135  {\
136  return !(pValue == pEnum);\
137  }
138 
139 
151 
152 #undef DEFINE_TO_BYTE_ARRAY
153 
154 } // namespace governikus
governikus::KnownOIDs::SecurityProtocol
SecurityProtocol
Definition: KnownOIDs.h:50
governikus::GM
GM
Definition: PaceInfo.h:29
governikus::KnownOIDs
Definition: KnownOIDs.h:13
governikus::KnownOIDs::SecurityProtocol::ID_PK
@ ID_PK
KnownOIDs.h
governikus::KnownOIDs::CertificateExtensions
CertificateExtensions
Definition: KnownOIDs.h:23
governikus::KnownOIDs::AuxilaryData::ID_DATE_OF_BIRTH
@ ID_DATE_OF_BIRTH
governikus::KnownOIDs::id_PACE::DH::GM
@ GM
governikus::KnownOIDs::Base
Base
Definition: KnownOIDs.h:15
governikus::KnownOIDs::id_pk
id_pk
Definition: KnownOIDs.h:81
governikus::KnownOIDs::id_ca
id_ca
Definition: KnownOIDs.h:58
governikus::KnownOIDs::id_ta
id_ta
Definition: KnownOIDs.h:72
governikus::KnownOIDs::id_ca::DH
@ DH
governikus::KnownOIDs::id_PACE::DH
DH
Definition: KnownOIDs.h:89
governikus::KnownOIDs::Base::BSI_DE
@ BSI_DE
governikus::KnownOIDs::AuxilaryData
AuxilaryData
Definition: KnownOIDs.h:43
governikus
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15
governikus::KnownOIDs::CHATType::ID_IS
@ ID_IS
DEFINE_TO_BYTE_ARRAY
#define DEFINE_TO_BYTE_ARRAY(type)
Definition: KnownOIDs.h:121
governikus::KnownOIDs::CertificateExtensions::ID_DESCRIPTION
@ ID_DESCRIPTION
governikus::KnownOIDs::CHATType
CHATType
Definition: KnownOIDs.h:36
governikus::KnownOIDs::TermsOfUsageType
TermsOfUsageType
Definition: KnownOIDs.h:29
governikus::KnownOIDs::id_ta::ECDSA_SHA_1
@ ECDSA_SHA_1
governikus::KnownOIDs::id_PACE::ECDH::GM
@ GM
governikus::KnownOIDs::id_pk::DH
@ DH
governikus::KnownOIDs::id_PACE::ECDH
ECDH
Definition: KnownOIDs.h:104
governikus::KnownOIDs::TermsOfUsageType::ID_PLAIN_FORMAT
@ ID_PLAIN_FORMAT