pyasn1-alt-modules 0.4.5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pyasn1-alt-modules might be problematic. Click here for more details.

Files changed (195) hide show
  1. pyasn1_alt_modules/__init__.py +2 -0
  2. pyasn1_alt_modules/opentypemap.py +19 -0
  3. pyasn1_alt_modules/pem.py +66 -0
  4. pyasn1_alt_modules/rfc1155.py +97 -0
  5. pyasn1_alt_modules/rfc1157.py +127 -0
  6. pyasn1_alt_modules/rfc1901.py +23 -0
  7. pyasn1_alt_modules/rfc1902.py +130 -0
  8. pyasn1_alt_modules/rfc1905.py +136 -0
  9. pyasn1_alt_modules/rfc2040.py +50 -0
  10. pyasn1_alt_modules/rfc2251.py +564 -0
  11. pyasn1_alt_modules/rfc2314.py +68 -0
  12. pyasn1_alt_modules/rfc2315.py +325 -0
  13. pyasn1_alt_modules/rfc2437.py +70 -0
  14. pyasn1_alt_modules/rfc2459.py +1340 -0
  15. pyasn1_alt_modules/rfc2511.py +303 -0
  16. pyasn1_alt_modules/rfc2528.py +34 -0
  17. pyasn1_alt_modules/rfc2560.py +226 -0
  18. pyasn1_alt_modules/rfc2631.py +37 -0
  19. pyasn1_alt_modules/rfc2634.py +342 -0
  20. pyasn1_alt_modules/rfc2743.py +60 -0
  21. pyasn1_alt_modules/rfc2876.py +61 -0
  22. pyasn1_alt_modules/rfc2898.py +72 -0
  23. pyasn1_alt_modules/rfc2985.py +593 -0
  24. pyasn1_alt_modules/rfc2986.py +76 -0
  25. pyasn1_alt_modules/rfc3058.py +48 -0
  26. pyasn1_alt_modules/rfc3114.py +80 -0
  27. pyasn1_alt_modules/rfc3125.py +469 -0
  28. pyasn1_alt_modules/rfc3161.py +142 -0
  29. pyasn1_alt_modules/rfc3217.py +42 -0
  30. pyasn1_alt_modules/rfc3274.py +62 -0
  31. pyasn1_alt_modules/rfc3279.py +264 -0
  32. pyasn1_alt_modules/rfc3280.py +1544 -0
  33. pyasn1_alt_modules/rfc3281.py +332 -0
  34. pyasn1_alt_modules/rfc3370.py +142 -0
  35. pyasn1_alt_modules/rfc3412.py +54 -0
  36. pyasn1_alt_modules/rfc3414.py +29 -0
  37. pyasn1_alt_modules/rfc3447.py +46 -0
  38. pyasn1_alt_modules/rfc3537.py +44 -0
  39. pyasn1_alt_modules/rfc3546.py +23 -0
  40. pyasn1_alt_modules/rfc3560.py +74 -0
  41. pyasn1_alt_modules/rfc3565.py +59 -0
  42. pyasn1_alt_modules/rfc3657.py +69 -0
  43. pyasn1_alt_modules/rfc3709.py +230 -0
  44. pyasn1_alt_modules/rfc3739.py +207 -0
  45. pyasn1_alt_modules/rfc3770.py +77 -0
  46. pyasn1_alt_modules/rfc3779.py +139 -0
  47. pyasn1_alt_modules/rfc3820.py +66 -0
  48. pyasn1_alt_modules/rfc3852.py +707 -0
  49. pyasn1_alt_modules/rfc3874.py +29 -0
  50. pyasn1_alt_modules/rfc4010.py +58 -0
  51. pyasn1_alt_modules/rfc4043.py +45 -0
  52. pyasn1_alt_modules/rfc4055.py +285 -0
  53. pyasn1_alt_modules/rfc4056.py +56 -0
  54. pyasn1_alt_modules/rfc4059.py +101 -0
  55. pyasn1_alt_modules/rfc4073.py +62 -0
  56. pyasn1_alt_modules/rfc4108.py +355 -0
  57. pyasn1_alt_modules/rfc4210.py +807 -0
  58. pyasn1_alt_modules/rfc4211.py +420 -0
  59. pyasn1_alt_modules/rfc4231.py +38 -0
  60. pyasn1_alt_modules/rfc4262.py +37 -0
  61. pyasn1_alt_modules/rfc4334.py +78 -0
  62. pyasn1_alt_modules/rfc4357.py +485 -0
  63. pyasn1_alt_modules/rfc4366.py +23 -0
  64. pyasn1_alt_modules/rfc4387.py +23 -0
  65. pyasn1_alt_modules/rfc4476.py +99 -0
  66. pyasn1_alt_modules/rfc4490.py +119 -0
  67. pyasn1_alt_modules/rfc4491.py +44 -0
  68. pyasn1_alt_modules/rfc4683.py +76 -0
  69. pyasn1_alt_modules/rfc4985.py +52 -0
  70. pyasn1_alt_modules/rfc4998.py +125 -0
  71. pyasn1_alt_modules/rfc5035.py +206 -0
  72. pyasn1_alt_modules/rfc5055.py +763 -0
  73. pyasn1_alt_modules/rfc5083.py +55 -0
  74. pyasn1_alt_modules/rfc5084.py +94 -0
  75. pyasn1_alt_modules/rfc5126.py +578 -0
  76. pyasn1_alt_modules/rfc5208.py +73 -0
  77. pyasn1_alt_modules/rfc5275.py +404 -0
  78. pyasn1_alt_modules/rfc5276.py +82 -0
  79. pyasn1_alt_modules/rfc5280.py +1666 -0
  80. pyasn1_alt_modules/rfc5480.py +190 -0
  81. pyasn1_alt_modules/rfc5544.py +127 -0
  82. pyasn1_alt_modules/rfc5636.py +117 -0
  83. pyasn1_alt_modules/rfc5639.py +49 -0
  84. pyasn1_alt_modules/rfc5649.py +33 -0
  85. pyasn1_alt_modules/rfc5652.py +763 -0
  86. pyasn1_alt_modules/rfc5697.py +64 -0
  87. pyasn1_alt_modules/rfc5698.py +159 -0
  88. pyasn1_alt_modules/rfc5751.py +127 -0
  89. pyasn1_alt_modules/rfc5752.py +52 -0
  90. pyasn1_alt_modules/rfc5753.py +163 -0
  91. pyasn1_alt_modules/rfc5755.py +400 -0
  92. pyasn1_alt_modules/rfc5913.py +46 -0
  93. pyasn1_alt_modules/rfc5914.py +119 -0
  94. pyasn1_alt_modules/rfc5915.py +32 -0
  95. pyasn1_alt_modules/rfc5916.py +39 -0
  96. pyasn1_alt_modules/rfc5917.py +59 -0
  97. pyasn1_alt_modules/rfc5924.py +19 -0
  98. pyasn1_alt_modules/rfc5934.py +786 -0
  99. pyasn1_alt_modules/rfc5940.py +62 -0
  100. pyasn1_alt_modules/rfc5958.py +100 -0
  101. pyasn1_alt_modules/rfc5990.py +238 -0
  102. pyasn1_alt_modules/rfc6010.py +92 -0
  103. pyasn1_alt_modules/rfc6019.py +46 -0
  104. pyasn1_alt_modules/rfc6031.py +469 -0
  105. pyasn1_alt_modules/rfc6032.py +71 -0
  106. pyasn1_alt_modules/rfc6066.py +25 -0
  107. pyasn1_alt_modules/rfc6120.py +46 -0
  108. pyasn1_alt_modules/rfc6170.py +17 -0
  109. pyasn1_alt_modules/rfc6187.py +22 -0
  110. pyasn1_alt_modules/rfc6210.py +45 -0
  111. pyasn1_alt_modules/rfc6211.py +75 -0
  112. pyasn1_alt_modules/rfc6402.py +643 -0
  113. pyasn1_alt_modules/rfc6482.py +77 -0
  114. pyasn1_alt_modules/rfc6484.py +17 -0
  115. pyasn1_alt_modules/rfc6486.py +70 -0
  116. pyasn1_alt_modules/rfc6487.py +22 -0
  117. pyasn1_alt_modules/rfc6492.py +41 -0
  118. pyasn1_alt_modules/rfc6493.py +24 -0
  119. pyasn1_alt_modules/rfc6494.py +23 -0
  120. pyasn1_alt_modules/rfc6664.py +151 -0
  121. pyasn1_alt_modules/rfc6955.py +112 -0
  122. pyasn1_alt_modules/rfc6960.py +234 -0
  123. pyasn1_alt_modules/rfc6962.py +52 -0
  124. pyasn1_alt_modules/rfc7030.py +70 -0
  125. pyasn1_alt_modules/rfc7191.py +267 -0
  126. pyasn1_alt_modules/rfc7229.py +29 -0
  127. pyasn1_alt_modules/rfc7292.py +359 -0
  128. pyasn1_alt_modules/rfc7296.py +32 -0
  129. pyasn1_alt_modules/rfc7508.py +92 -0
  130. pyasn1_alt_modules/rfc7585.py +53 -0
  131. pyasn1_alt_modules/rfc7633.py +40 -0
  132. pyasn1_alt_modules/rfc7693.py +66 -0
  133. pyasn1_alt_modules/rfc7773.py +54 -0
  134. pyasn1_alt_modules/rfc7836.py +65 -0
  135. pyasn1_alt_modules/rfc7894.py +100 -0
  136. pyasn1_alt_modules/rfc7906.py +739 -0
  137. pyasn1_alt_modules/rfc7914.py +55 -0
  138. pyasn1_alt_modules/rfc8017.py +159 -0
  139. pyasn1_alt_modules/rfc8018.py +269 -0
  140. pyasn1_alt_modules/rfc8103.py +36 -0
  141. pyasn1_alt_modules/rfc8209.py +20 -0
  142. pyasn1_alt_modules/rfc8226.py +151 -0
  143. pyasn1_alt_modules/rfc8358.py +54 -0
  144. pyasn1_alt_modules/rfc8360.py +46 -0
  145. pyasn1_alt_modules/rfc8398.py +55 -0
  146. pyasn1_alt_modules/rfc8410.py +43 -0
  147. pyasn1_alt_modules/rfc8418.py +36 -0
  148. pyasn1_alt_modules/rfc8419.py +70 -0
  149. pyasn1_alt_modules/rfc8479.py +48 -0
  150. pyasn1_alt_modules/rfc8494.py +80 -0
  151. pyasn1_alt_modules/rfc8520.py +66 -0
  152. pyasn1_alt_modules/rfc8619.py +45 -0
  153. pyasn1_alt_modules/rfc8649.py +42 -0
  154. pyasn1_alt_modules/rfc8692.py +79 -0
  155. pyasn1_alt_modules/rfc8696.py +108 -0
  156. pyasn1_alt_modules/rfc8702.py +109 -0
  157. pyasn1_alt_modules/rfc8708.py +43 -0
  158. pyasn1_alt_modules/rfc8737.py +36 -0
  159. pyasn1_alt_modules/rfc8769.py +21 -0
  160. pyasn1_alt_modules/rfc8894.py +52 -0
  161. pyasn1_alt_modules/rfc8951.py +42 -0
  162. pyasn1_alt_modules/rfc8954.py +238 -0
  163. pyasn1_alt_modules/rfc8994.py +52 -0
  164. pyasn1_alt_modules/rfc8995.py +39 -0
  165. pyasn1_alt_modules/rfc9044.py +80 -0
  166. pyasn1_alt_modules/rfc9092.py +35 -0
  167. pyasn1_alt_modules/rfc9118.py +82 -0
  168. pyasn1_alt_modules/rfc9174.py +55 -0
  169. pyasn1_alt_modules/rfc9189.py +74 -0
  170. pyasn1_alt_modules/rfc9215.py +228 -0
  171. pyasn1_alt_modules/rfc9286.py +78 -0
  172. pyasn1_alt_modules/rfc9289.py +22 -0
  173. pyasn1_alt_modules/rfc9310.py +46 -0
  174. pyasn1_alt_modules/rfc9323.py +129 -0
  175. pyasn1_alt_modules/rfc9336.py +20 -0
  176. pyasn1_alt_modules/rfc9337.py +74 -0
  177. pyasn1_alt_modules/rfc9345.py +36 -0
  178. pyasn1_alt_modules/rfc9385.py +22 -0
  179. pyasn1_alt_modules/rfc9399.py +59 -0
  180. pyasn1_alt_modules/rfc9480.py +731 -0
  181. pyasn1_alt_modules/rfc9481.py +224 -0
  182. pyasn1_alt_modules/rfc9509.py +24 -0
  183. pyasn1_alt_modules/rfc9548.py +23 -0
  184. pyasn1_alt_modules/rfc9579.py +89 -0
  185. pyasn1_alt_modules/rfc9582.py +107 -0
  186. pyasn1_alt_modules/rfc9598.py +52 -0
  187. pyasn1_alt_modules/rfc9608.py +35 -0
  188. pyasn1_alt_modules/rfc9629.py +100 -0
  189. pyasn1_alt_modules/rfc9654.py +241 -0
  190. pyasn1_alt_modules-0.4.5.dist-info/LICENSE.txt +25 -0
  191. pyasn1_alt_modules-0.4.5.dist-info/METADATA +34 -0
  192. pyasn1_alt_modules-0.4.5.dist-info/RECORD +195 -0
  193. pyasn1_alt_modules-0.4.5.dist-info/WHEEL +5 -0
  194. pyasn1_alt_modules-0.4.5.dist-info/top_level.txt +1 -0
  195. pyasn1_alt_modules-0.4.5.dist-info/zip-safe +1 -0
@@ -0,0 +1,763 @@
1
+ #
2
+ # This file is part of pyasn1-alt-modules software.
3
+ #
4
+ # Created by Russ Housley with some help from asn1ate v.0.6.0
5
+ # Modified by Russ Housley to include the opentypemap manager.
6
+ #
7
+ # Copyright (c) 2021-2024, Vigil Security, LLC
8
+ # License: http://vigilsec.com/pyasn1-alt-modules-license.txt
9
+ #
10
+ # Server-Based Certificate Validation Protocol (SCVP)
11
+ #
12
+ # ASN.1 source from:
13
+ # https://www.rfc-editor.org/rfc/rfc5055.txt
14
+ # https://www.rfc-editor.org/rfc/rfc5912.txt
15
+ #
16
+
17
+ from pyasn1.type import char
18
+ from pyasn1.type import constraint
19
+ from pyasn1.type import namedtype
20
+ from pyasn1.type import namedval
21
+ from pyasn1.type import opentype
22
+ from pyasn1.type import tag
23
+ from pyasn1.type import useful
24
+ from pyasn1.type import univ
25
+
26
+ from pyasn1_alt_modules import rfc5280
27
+ from pyasn1_alt_modules import rfc5652
28
+ from pyasn1_alt_modules import rfc6960
29
+ from pyasn1_alt_modules import rfc3281
30
+ from pyasn1_alt_modules import opentypemap
31
+
32
+ cmsContentTypesMap = opentypemap.get('cmsContentTypesMap')
33
+
34
+ otherRevInfoFormatMap = opentypemap.get('otherRevInfoFormatMap')
35
+
36
+ scvpValidationPolMap = opentypemap.get('scvpValidationPolMap')
37
+
38
+ scvpValidationAlgMap = opentypemap.get('scvpValidationAlgMap')
39
+
40
+ scvpWantBackMap = opentypemap.get('scvpWantBackMap')
41
+
42
+ MAX = float('inf')
43
+
44
+
45
+ # Imports from RFC 5280
46
+
47
+ AlgorithmIdentifier = rfc5280.AlgorithmIdentifier
48
+
49
+ Attribute = rfc5280.Attribute
50
+
51
+ Certificate = rfc5280.Certificate
52
+
53
+ Extensions = rfc5280.Extensions
54
+
55
+ CertificateList = rfc5280.CertificateList
56
+
57
+ CertificateSerialNumber = rfc5280.CertificateSerialNumber
58
+
59
+ GeneralNames = rfc5280.GeneralNames
60
+
61
+ GeneralName = rfc5280.GeneralName
62
+
63
+ KeyUsage = rfc5280.KeyUsage
64
+
65
+ KeyPurposeId = rfc5280.KeyPurposeId
66
+
67
+ SubjectPublicKeyInfo = rfc5280.SubjectPublicKeyInfo
68
+
69
+
70
+ # Imports from RFC 3281
71
+
72
+ AttributeCertificate = rfc3281.AttributeCertificate
73
+
74
+
75
+ # Imports from RFC 6960
76
+
77
+ OCSPResponse = rfc6960.OCSPResponse
78
+
79
+
80
+ # Imports from RFC 5652
81
+
82
+ ContentInfo = rfc5652.ContentInfo
83
+
84
+
85
+ # Server-Based Certificate Validation Protocol
86
+
87
+ sha_1 = univ.ObjectIdentifier((1, 3, 14, 3, 2, 26))
88
+
89
+ algid_SHA1 = AlgorithmIdentifier()
90
+ algid_SHA1['algorithm'] = sha_1
91
+ algid_SHA1['parameters'] = "\x05\x00"
92
+
93
+
94
+ class SCVPIssuerSerial(univ.Sequence):
95
+ componentType = namedtype.NamedTypes(
96
+ namedtype.NamedType('issuer', GeneralNames()),
97
+ namedtype.NamedType('serialNumber', CertificateSerialNumber())
98
+ )
99
+
100
+
101
+ class SCVPCertID(univ.Sequence):
102
+ componentType = namedtype.NamedTypes(
103
+ namedtype.NamedType('certHash', univ.OctetString()),
104
+ namedtype.NamedType('issuerSerial', SCVPIssuerSerial()),
105
+ namedtype.DefaultedNamedType('hashAlgorithm', algid_SHA1)
106
+ )
107
+
108
+
109
+ class ACReference(univ.Choice):
110
+ componentType = namedtype.NamedTypes(
111
+ namedtype.NamedType('attrCert', AttributeCertificate().subtype(
112
+ implicitTag=tag.Tag(tag.tagClassContext,
113
+ tag.tagFormatSimple, 2))),
114
+ namedtype.NamedType('acRef', SCVPCertID().subtype(
115
+ implicitTag=tag.Tag(tag.tagClassContext,
116
+ tag.tagFormatConstructed, 3)))
117
+ )
118
+
119
+
120
+ class AuthPolicy(univ.ObjectIdentifier):
121
+ pass
122
+
123
+
124
+ class ValidationPolRef(univ.Sequence):
125
+ componentType = namedtype.NamedTypes(
126
+ namedtype.NamedType('valPolId', univ.ObjectIdentifier()),
127
+ namedtype.OptionalNamedType('valPolParams', univ.Any(),
128
+ openType=opentype.OpenType('valPolId', scvpValidationPolMap))
129
+ )
130
+
131
+
132
+ class PKCReference(univ.Choice):
133
+ componentType = namedtype.NamedTypes(
134
+ namedtype.NamedType('cert', Certificate().subtype(
135
+ implicitTag=tag.Tag(tag.tagClassContext,
136
+ tag.tagFormatSimple, 0))),
137
+ namedtype.NamedType('pkcRef', SCVPCertID().subtype(
138
+ implicitTag=tag.Tag(tag.tagClassContext,
139
+ tag.tagFormatConstructed, 1)))
140
+ )
141
+
142
+
143
+ class TrustAnchors(univ.SequenceOf):
144
+ componentType = PKCReference()
145
+ subtypeSpec = constraint.ValueSizeConstraint(1, MAX)
146
+
147
+
148
+ class ValidationAlg(univ.Sequence):
149
+ componentType = namedtype.NamedTypes(
150
+ namedtype.NamedType('valAlgId', univ.ObjectIdentifier()),
151
+ namedtype.OptionalNamedType('parameters', univ.Any(),
152
+ openType=opentype.OpenType('valPolId', scvpValidationAlgMap))
153
+ )
154
+
155
+
156
+ class ValidationPolicy(univ.Sequence):
157
+ componentType = namedtype.NamedTypes(
158
+ namedtype.NamedType('validationPolRef', ValidationPolRef()),
159
+ namedtype.OptionalNamedType('validationAlg',
160
+ ValidationAlg().subtype(implicitTag=tag.Tag(tag.tagClassContext,
161
+ tag.tagFormatConstructed, 0))),
162
+ namedtype.OptionalNamedType('userPolicySet',
163
+ univ.SequenceOf(componentType=univ.ObjectIdentifier()).subtype(
164
+ subtypeSpec=constraint.ValueSizeConstraint(1, MAX)).subtype(
165
+ implicitTag=tag.Tag(tag.tagClassContext,
166
+ tag.tagFormatSimple, 1))),
167
+ namedtype.OptionalNamedType('inhibitPolicyMapping',
168
+ univ.Boolean().subtype(implicitTag=tag.Tag(tag.tagClassContext,
169
+ tag.tagFormatSimple, 2))),
170
+ namedtype.OptionalNamedType('requireExplicitPolicy',
171
+ univ.Boolean().subtype(implicitTag=tag.Tag(tag.tagClassContext,
172
+ tag.tagFormatSimple, 3))),
173
+ namedtype.OptionalNamedType('inhibitAnyPolicy',
174
+ univ.Boolean().subtype(implicitTag=tag.Tag(tag.tagClassContext,
175
+ tag.tagFormatSimple, 4))),
176
+ namedtype.OptionalNamedType('trustAnchors',
177
+ TrustAnchors().subtype(implicitTag=tag.Tag(tag.tagClassContext,
178
+ tag.tagFormatSimple, 5))),
179
+ namedtype.OptionalNamedType('keyUsages',
180
+ univ.SequenceOf(componentType=KeyUsage()).subtype(
181
+ implicitTag=tag.Tag(tag.tagClassContext,
182
+ tag.tagFormatSimple, 6))),
183
+ namedtype.OptionalNamedType('extendedKeyUsages',
184
+ univ.SequenceOf(componentType=KeyPurposeId()).subtype(
185
+ implicitTag=tag.Tag(tag.tagClassContext,
186
+ tag.tagFormatSimple, 7))),
187
+ namedtype.OptionalNamedType('specifiedKeyUsages',
188
+ univ.SequenceOf(componentType=KeyPurposeId()).subtype(
189
+ implicitTag=tag.Tag(tag.tagClassContext,
190
+ tag.tagFormatSimple, 8)))
191
+ )
192
+
193
+
194
+ class CertChecks(univ.SequenceOf):
195
+ componentType = univ.ObjectIdentifier()
196
+ subtypeSpec = constraint.ValueSizeConstraint(1, MAX)
197
+
198
+
199
+ class ResponseFlags(univ.Sequence):
200
+ componentType = namedtype.NamedTypes(
201
+ namedtype.DefaultedNamedType('fullRequestInResponse',
202
+ univ.Boolean().subtype(implicitTag=tag.Tag(tag.tagClassContext,
203
+ tag.tagFormatSimple, 0)).subtype(value=0)),
204
+ namedtype.DefaultedNamedType('responseValidationPolByRef',
205
+ univ.Boolean().subtype(implicitTag=tag.Tag(tag.tagClassContext,
206
+ tag.tagFormatSimple, 1)).subtype(value=1)),
207
+ namedtype.DefaultedNamedType('protectResponse',
208
+ univ.Boolean().subtype(implicitTag=tag.Tag(tag.tagClassContext,
209
+ tag.tagFormatSimple, 2)).subtype(value=1)),
210
+ namedtype.DefaultedNamedType('cachedResponse',
211
+ univ.Boolean().subtype(implicitTag=tag.Tag(tag.tagClassContext,
212
+ tag.tagFormatSimple, 3)).subtype(value=1))
213
+ )
214
+
215
+
216
+ class CertBundle(univ.SequenceOf):
217
+ componentType = Certificate()
218
+ subtypeSpec = constraint.ValueSizeConstraint(1, MAX)
219
+
220
+
221
+ class OtherRevInfo(univ.Sequence):
222
+ componentType = namedtype.NamedTypes(
223
+ namedtype.NamedType('riType', univ.ObjectIdentifier()),
224
+ namedtype.NamedType('riValue', univ.Any(),
225
+ openType=opentype.OpenType('riType', otherRevInfoFormatMap))
226
+ )
227
+
228
+
229
+ class RevocationInfo(univ.Choice):
230
+ componentType = namedtype.NamedTypes(
231
+ namedtype.NamedType('crl', CertificateList().subtype(
232
+ implicitTag=tag.Tag(tag.tagClassContext,
233
+ tag.tagFormatSimple, 0))),
234
+ namedtype.NamedType('delta-crl', CertificateList().subtype(
235
+ implicitTag=tag.Tag(tag.tagClassContext,
236
+ tag.tagFormatSimple, 1))),
237
+ namedtype.NamedType('ocsp', OCSPResponse().subtype(
238
+ implicitTag=tag.Tag(tag.tagClassContext,
239
+ tag.tagFormatSimple, 2))),
240
+ namedtype.NamedType('other', OtherRevInfo().subtype(
241
+ implicitTag=tag.Tag(tag.tagClassContext,
242
+ tag.tagFormatConstructed, 3)))
243
+ )
244
+
245
+
246
+ class RevocationInfos(univ.SequenceOf):
247
+ componentType = RevocationInfo()
248
+ subtypeSpec = constraint.ValueSizeConstraint(1, MAX)
249
+
250
+
251
+ class CertReferences(univ.Choice):
252
+ componentType = namedtype.NamedTypes(
253
+ namedtype.NamedType('pkcRefs', univ.SequenceOf(
254
+ componentType=PKCReference()).subtype(
255
+ subtypeSpec=constraint.ValueSizeConstraint(1, MAX)).subtype(
256
+ implicitTag=tag.Tag(tag.tagClassContext,
257
+ tag.tagFormatSimple, 0))),
258
+ namedtype.NamedType('acRefs', univ.SequenceOf(
259
+ componentType=ACReference()).subtype(
260
+ subtypeSpec=constraint.ValueSizeConstraint(1, MAX)).subtype(
261
+ implicitTag=tag.Tag(tag.tagClassContext,
262
+ tag.tagFormatSimple, 1)))
263
+ )
264
+
265
+
266
+ class WantBack(univ.SequenceOf):
267
+ componentType = univ.ObjectIdentifier()
268
+ subtypeSpec = constraint.ValueSizeConstraint(1, MAX)
269
+
270
+
271
+ class Query(univ.Sequence):
272
+ componentType = namedtype.NamedTypes(
273
+ namedtype.NamedType('queriedCerts', CertReferences()),
274
+ namedtype.NamedType('checks', CertChecks()),
275
+ namedtype.OptionalNamedType('wantBack',
276
+ WantBack().subtype(implicitTag=tag.Tag(tag.tagClassContext,
277
+ tag.tagFormatSimple, 1))),
278
+ namedtype.NamedType('validationPolicy', ValidationPolicy()),
279
+ namedtype.OptionalNamedType('responseFlags', ResponseFlags()),
280
+ namedtype.OptionalNamedType('serverContextInfo',
281
+ univ.OctetString().subtype(implicitTag=tag.Tag(
282
+ tag.tagClassContext, tag.tagFormatSimple, 2))),
283
+ namedtype.OptionalNamedType('validationTime',
284
+ useful.GeneralizedTime().subtype(implicitTag=tag.Tag(
285
+ tag.tagClassContext, tag.tagFormatSimple, 3))),
286
+ namedtype.OptionalNamedType('intermediateCerts',
287
+ CertBundle().subtype(implicitTag=tag.Tag(
288
+ tag.tagClassContext, tag.tagFormatSimple, 4))),
289
+ namedtype.OptionalNamedType('revInfos',
290
+ RevocationInfos().subtype(implicitTag=tag.Tag(
291
+ tag.tagClassContext, tag.tagFormatSimple, 5))),
292
+ namedtype.OptionalNamedType('producedAt',
293
+ useful.GeneralizedTime().subtype(implicitTag=tag.Tag(
294
+ tag.tagClassContext, tag.tagFormatSimple, 6))),
295
+ namedtype.OptionalNamedType('queryExtensions',
296
+ Extensions().subtype(implicitTag=tag.Tag(
297
+ tag.tagClassContext, tag.tagFormatSimple, 7)))
298
+ )
299
+
300
+
301
+
302
+ class CVRequest(univ.Sequence):
303
+ componentType = namedtype.NamedTypes(
304
+ namedtype.DefaultedNamedType('cvRequestVersion',
305
+ univ.Integer().subtype(value=1)),
306
+ namedtype.NamedType('query', Query()),
307
+ namedtype.OptionalNamedType('requestorRef',
308
+ GeneralNames().subtype(implicitTag=tag.Tag(
309
+ tag.tagClassContext, tag.tagFormatSimple, 0))),
310
+ namedtype.OptionalNamedType('requestNonce',
311
+ univ.OctetString().subtype(implicitTag=tag.Tag(
312
+ tag.tagClassContext, tag.tagFormatSimple, 1))),
313
+ namedtype.OptionalNamedType('requestorName',
314
+ GeneralName().subtype(implicitTag=tag.Tag(
315
+ tag.tagClassContext, tag.tagFormatSimple, 2))),
316
+ namedtype.OptionalNamedType('responderName',
317
+ GeneralName().subtype(implicitTag=tag.Tag(
318
+ tag.tagClassContext, tag.tagFormatSimple, 3))),
319
+ namedtype.OptionalNamedType('requestExtensions',
320
+ Extensions().subtype(implicitTag=tag.Tag(
321
+ tag.tagClassContext, tag.tagFormatSimple, 4))),
322
+ namedtype.OptionalNamedType('signatureAlg',
323
+ AlgorithmIdentifier().subtype(implicitTag=tag.Tag(
324
+ tag.tagClassContext, tag.tagFormatSimple, 5))),
325
+ namedtype.OptionalNamedType('hashAlg',
326
+ univ.ObjectIdentifier().subtype(implicitTag=tag.Tag(
327
+ tag.tagClassContext, tag.tagFormatSimple, 6))),
328
+ namedtype.OptionalNamedType('requestorText',
329
+ char.UTF8String().subtype(
330
+ subtypeSpec=constraint.ValueSizeConstraint(1, 256)).subtype(
331
+ implicitTag=tag.Tag(tag.tagClassContext,
332
+ tag.tagFormatSimple, 7)))
333
+ )
334
+
335
+
336
+ class RespValidationPolicy(ValidationPolicy):
337
+ pass
338
+
339
+
340
+ class CertReference(univ.Choice):
341
+ componentType = namedtype.NamedTypes(
342
+ namedtype.NamedType('pkc', PKCReference()),
343
+ namedtype.NamedType('ac', ACReference())
344
+ )
345
+
346
+
347
+ class ReplyStatus(univ.Enumerated):
348
+ namedValues = namedval.NamedValues(
349
+ ('success', 0),
350
+ ('malformedPKC', 1),
351
+ ('malformedAC', 2),
352
+ ('unavailableValidationTime', 3),
353
+ ('referenceCertHashFail', 4),
354
+ ('certPathConstructFail', 5),
355
+ ('certPathNotValid', 6),
356
+ ('certPathNotValidNow', 7),
357
+ ('wantBackUnsatisfied', 8)
358
+ )
359
+
360
+
361
+ class ReplyCheck(univ.Sequence):
362
+ componentType = namedtype.NamedTypes(
363
+ namedtype.NamedType('check', univ.ObjectIdentifier()),
364
+ namedtype.DefaultedNamedType('status', univ.Integer().subtype(value=0))
365
+ )
366
+
367
+
368
+ class ReplyChecks(univ.SequenceOf):
369
+ componentType = ReplyCheck()
370
+
371
+
372
+ class ReplyWantBack(univ.Sequence):
373
+ componentType = namedtype.NamedTypes(
374
+ namedtype.NamedType('wb', univ.ObjectIdentifier()),
375
+ namedtype.NamedType('value', univ.OctetString())
376
+ )
377
+
378
+
379
+ class ReplyWantBacks(univ.SequenceOf):
380
+ componentType = ReplyWantBack()
381
+
382
+
383
+ class CertReply(univ.Sequence):
384
+ componentType = namedtype.NamedTypes(
385
+ namedtype.NamedType('cert', CertReference()),
386
+ namedtype.DefaultedNamedType('replyStatus',
387
+ ReplyStatus().subtype(value='success')),
388
+ namedtype.NamedType('replyValTime', useful.GeneralizedTime()),
389
+ namedtype.NamedType('replyChecks', ReplyChecks()),
390
+ namedtype.NamedType('replyWantBacks', ReplyWantBacks()),
391
+ namedtype.OptionalNamedType('validationErrors',
392
+ univ.SequenceOf(componentType=univ.ObjectIdentifier()).subtype(
393
+ subtypeSpec=constraint.ValueSizeConstraint(1, MAX)).subtype(
394
+ implicitTag=tag.Tag(tag.tagClassContext,
395
+ tag.tagFormatSimple, 0))),
396
+ namedtype.OptionalNamedType('nextUpdate',
397
+ useful.GeneralizedTime().subtype(implicitTag=tag.Tag(
398
+ tag.tagClassContext, tag.tagFormatSimple, 1))),
399
+ namedtype.OptionalNamedType('certReplyExtensions',
400
+ Extensions().subtype(implicitTag=tag.Tag(
401
+ tag.tagClassContext, tag.tagFormatSimple, 2)))
402
+ )
403
+
404
+
405
+ class ReplyObjects(univ.SequenceOf):
406
+ componentType = CertReply()
407
+ subtypeSpec = constraint.ValueSizeConstraint(1, MAX)
408
+
409
+
410
+ class HashValue(univ.Sequence):
411
+ componentType = namedtype.NamedTypes(
412
+ namedtype.DefaultedNamedType('algorithm', algid_SHA1),
413
+ namedtype.NamedType('value', univ.OctetString())
414
+ )
415
+
416
+
417
+ class RequestReference(univ.Choice):
418
+ componentType = namedtype.NamedTypes(
419
+ namedtype.NamedType('requestHash',
420
+ HashValue().subtype(implicitTag=tag.Tag(tag.tagClassContext,
421
+ tag.tagFormatConstructed, 0))),
422
+ namedtype.NamedType('fullRequest',
423
+ CVRequest().subtype(implicitTag=tag.Tag(tag.tagClassContext,
424
+ tag.tagFormatConstructed, 1)))
425
+ )
426
+
427
+
428
+ class CVStatusCode(univ.Enumerated):
429
+ namedValues = namedval.NamedValues(
430
+ ('okay', 0),
431
+ ('skipUnrecognizedItems', 1),
432
+ ('tooBusy', 10),
433
+ ('invalidRequest', 11),
434
+ ('internalError', 12),
435
+ ('badStructure', 20),
436
+ ('unsupportedVersion', 21),
437
+ ('abortUnrecognizedItems', 22),
438
+ ('unrecognizedSigKey', 23),
439
+ ('badSignatureOrMAC', 24),
440
+ ('unableToDecode', 25),
441
+ ('notAuthorized', 26),
442
+ ('unsupportedChecks', 27),
443
+ ('unsupportedWantBacks', 28),
444
+ ('unsupportedSignatureOrMAC', 29),
445
+ ('invalidSignatureOrMAC', 30),
446
+ ('protectedResponseUnsupported', 31),
447
+ ('unrecognizedResponderName', 32),
448
+ ('relayingLoop', 40),
449
+ ('unrecognizedValPol', 50),
450
+ ('unrecognizedValAlg', 51),
451
+ ('fullRequestInResponseUnsupported', 52),
452
+ ('fullPolResponseUnsupported', 53),
453
+ ('inhibitPolicyMappingUnsupported', 54),
454
+ ('requireExplicitPolicyUnsupported', 55),
455
+ ('inhibitAnyPolicyUnsupported', 56),
456
+ ('validationTimeUnsupported', 57),
457
+ ('unrecognizedCritQueryExt', 63),
458
+ ('unrecognizedCritRequestExt', 64)
459
+ )
460
+
461
+
462
+ class ResponseStatus(univ.Sequence):
463
+ componentType = namedtype.NamedTypes(
464
+ namedtype.DefaultedNamedType('statusCode',
465
+ CVStatusCode().subtype(value='okay')),
466
+ namedtype.OptionalNamedType('errorMessage',
467
+ char.UTF8String())
468
+ )
469
+
470
+
471
+ class CVResponse(univ.Sequence):
472
+ componentType = namedtype.NamedTypes(
473
+ namedtype.NamedType('cvResponseVersion', univ.Integer()),
474
+ namedtype.NamedType('serverConfigurationID', univ.Integer()),
475
+ namedtype.NamedType('producedAt', useful.GeneralizedTime()),
476
+ namedtype.NamedType('responseStatus', ResponseStatus()),
477
+ namedtype.OptionalNamedType('respValidationPolicy',
478
+ RespValidationPolicy().subtype(implicitTag=tag.Tag(
479
+ tag.tagClassContext, tag.tagFormatConstructed, 0))),
480
+ namedtype.OptionalNamedType('requestRef',
481
+ RequestReference().subtype(implicitTag=tag.Tag(
482
+ tag.tagClassContext, tag.tagFormatConstructed, 1))),
483
+ namedtype.OptionalNamedType('requestorRef',
484
+ GeneralNames().subtype(implicitTag=tag.Tag(
485
+ tag.tagClassContext, tag.tagFormatSimple, 2))),
486
+ namedtype.OptionalNamedType('requestorName',
487
+ GeneralNames().subtype(implicitTag=tag.Tag(
488
+ tag.tagClassContext, tag.tagFormatSimple, 3))),
489
+ namedtype.OptionalNamedType('replyObjects',
490
+ ReplyObjects().subtype(implicitTag=tag.Tag(
491
+ tag.tagClassContext, tag.tagFormatSimple, 4))),
492
+ namedtype.OptionalNamedType('respNonce',
493
+ univ.OctetString().subtype(implicitTag=tag.Tag(
494
+ tag.tagClassContext, tag.tagFormatSimple, 5))),
495
+ namedtype.OptionalNamedType('serverContextInfo',
496
+ univ.OctetString().subtype(implicitTag=tag.Tag(
497
+ tag.tagClassContext, tag.tagFormatSimple, 6))),
498
+ namedtype.OptionalNamedType('cvResponseExtensions',
499
+ Extensions().subtype(implicitTag=tag.Tag(
500
+ tag.tagClassContext, tag.tagFormatSimple, 7))),
501
+ namedtype.OptionalNamedType('requestorText',
502
+ char.UTF8String().subtype(
503
+ subtypeSpec=constraint.ValueSizeConstraint(1, 256)).subtype(
504
+ implicitTag=tag.Tag(tag.tagClassContext,
505
+ tag.tagFormatSimple, 8)))
506
+ )
507
+
508
+
509
+ class CertBundles(univ.SequenceOf):
510
+ componentType = CertBundle()
511
+ subtypeSpec = constraint.ValueSizeConstraint(1, MAX)
512
+
513
+
514
+ class KeyAgreePublicKey(univ.Sequence):
515
+ componentType = namedtype.NamedTypes(
516
+ namedtype.NamedType('algorithm', AlgorithmIdentifier()),
517
+ namedtype.NamedType('publicKey', univ.BitString()),
518
+ namedtype.NamedType('macAlgorithm', AlgorithmIdentifier()),
519
+ namedtype.OptionalNamedType('kDF', AlgorithmIdentifier())
520
+ )
521
+
522
+
523
+ class NameValidationAlgParms(univ.Sequence):
524
+ componentType = namedtype.NamedTypes(
525
+ namedtype.NamedType('nameCompAlgId', univ.ObjectIdentifier()),
526
+ namedtype.NamedType('validationNames', GeneralNames())
527
+ )
528
+
529
+ class ResponseTypes(univ.Enumerated):
530
+ namedValues = namedval.NamedValues(
531
+ ('cached-only', 0),
532
+ ('non-cached-only', 1),
533
+ ('cached-and-non-cached', 2)
534
+ )
535
+
536
+
537
+ class RevInfoWantBack(univ.Sequence):
538
+ componentType = namedtype.NamedTypes(
539
+ namedtype.NamedType('revocationInfo', RevocationInfos()),
540
+ namedtype.OptionalNamedType('extraCerts', CertBundle())
541
+ )
542
+
543
+
544
+ class RevocationInfoTypes(univ.BitString):
545
+ namedValues = namedval.NamedValues(
546
+ ('fullCRLs', 0),
547
+ ('deltaCRLs', 1),
548
+ ('indirectCRLs', 2),
549
+ ('oCSPResponses', 3)
550
+ )
551
+
552
+
553
+ class SCVPResponses(univ.SequenceOf):
554
+ componentType = ContentInfo()
555
+
556
+
557
+ class ValPolRequest(univ.Sequence):
558
+ componentType = namedtype.NamedTypes(
559
+ namedtype.DefaultedNamedType('vpRequestVersion',
560
+ univ.Integer().subtype(value=1)),
561
+ namedtype.NamedType('requestNonce', univ.OctetString())
562
+ )
563
+
564
+
565
+ class ValPolResponse(univ.Sequence):
566
+ componentType = namedtype.NamedTypes(
567
+ namedtype.NamedType('vpResponseVersion', univ.Integer()),
568
+ namedtype.NamedType('maxCVRequestVersion', univ.Integer()),
569
+ namedtype.NamedType('maxVPRequestVersion', univ.Integer()),
570
+ namedtype.NamedType('serverConfigurationID', univ.Integer()),
571
+ namedtype.NamedType('thisUpdate', useful.GeneralizedTime()),
572
+ namedtype.OptionalNamedType('nextUpdate', useful.GeneralizedTime()),
573
+ namedtype.NamedType('supportedChecks', CertChecks()),
574
+ namedtype.NamedType('supportedWantBacks', WantBack()),
575
+ namedtype.NamedType('validationPolicies',
576
+ univ.SequenceOf(componentType=univ.ObjectIdentifier())),
577
+ namedtype.NamedType('validationAlgs',
578
+ univ.SequenceOf(componentType=univ.ObjectIdentifier())),
579
+ namedtype.NamedType('authPolicies',
580
+ univ.SequenceOf(componentType=AuthPolicy())),
581
+ namedtype.NamedType('responseTypes', ResponseTypes()),
582
+ namedtype.NamedType('defaultPolicyValues', RespValidationPolicy()),
583
+ namedtype.NamedType('revocationInfoTypes', RevocationInfoTypes()),
584
+ namedtype.NamedType('signatureGeneration',
585
+ univ.SequenceOf(componentType=AlgorithmIdentifier())),
586
+ namedtype.NamedType('signatureVerification',
587
+ univ.SequenceOf(componentType=AlgorithmIdentifier())),
588
+ namedtype.NamedType('hashAlgorithms',
589
+ univ.SequenceOf(componentType=univ.ObjectIdentifier()).subtype(
590
+ subtypeSpec=constraint.ValueSizeConstraint(1, MAX))),
591
+ namedtype.OptionalNamedType('serverPublicKeys',
592
+ univ.SequenceOf(componentType=KeyAgreePublicKey())),
593
+ namedtype.DefaultedNamedType('clockSkew',
594
+ univ.Integer().subtype(value=10)),
595
+ namedtype.OptionalNamedType('requestNonce', univ.OctetString())
596
+ )
597
+
598
+
599
+ # SCVP Check Identifiers
600
+
601
+ id_stc = univ.ObjectIdentifier((1, 3, 6, 1, 5, 5, 7, 17))
602
+
603
+ id_stc_build_pkc_path = id_stc + (1,)
604
+
605
+ id_stc_build_valid_pkc_path = id_stc + (2,)
606
+
607
+ id_stc_build_status_checked_pkc_path = id_stc + (3,)
608
+
609
+ id_stc_build_aa_path = id_stc + (4,)
610
+
611
+ id_stc_build_valid_aa_path = id_stc + (5,)
612
+
613
+ id_stc_build_status_checked_aa_path = id_stc + (6,)
614
+
615
+ id_stc_status_check_ac_and_build_status_checked_aa_path = id_stc + (7,)
616
+
617
+
618
+ # SCVP WantBack Identifiers
619
+
620
+ id_swb = univ.ObjectIdentifier((1, 3, 6, 1, 5, 5, 7, 18))
621
+
622
+ id_swb_pkc_best_cert_path = id_swb + (1,)
623
+
624
+ id_swb_pkc_revocation_info = id_swb + (2,)
625
+
626
+ id_swb_pkc_public_key_info = id_swb + (4,)
627
+
628
+ id_swb_aa_cert_path = id_swb + (5,)
629
+
630
+ id_swb_aa_revocation_info = id_swb + (6,)
631
+
632
+ id_swb_ac_revocation_info = id_swb + (7,)
633
+
634
+ id_swb_relayed_responses = id_swb + (9,)
635
+
636
+ id_swb_pkc_cert = id_swb + (10,)
637
+
638
+ id_swb_ac_cert = id_swb + (11,)
639
+
640
+ id_swb_pkc_all_cert_paths = id_swb + (12,)
641
+
642
+ id_swb_pkc_ee_revocation_info = id_swb + (13,)
643
+
644
+ id_swb_pkc_CAs_revocation_info = id_swb + (14,)
645
+
646
+
647
+ # SCVP Validation Policy and Algorithm Identifiers
648
+
649
+ id_svp = univ.ObjectIdentifier((1, 3, 6, 1, 5, 5, 7, 19))
650
+
651
+ id_svp_defaultValPolicy = id_svp + (1,)
652
+
653
+ id_svp_nameValAlg = id_svp + (2,)
654
+
655
+ id_svp_basicValAlg = id_svp + (3,)
656
+
657
+ id_nva_dnCompAlg = id_svp + (4,)
658
+
659
+
660
+ # SCVP Basic Validation Algorithm Errors
661
+
662
+ id_bvae = univ.ObjectIdentifier(id_svp_basicValAlg)
663
+
664
+ id_bvae_expired = id_bvae + (1,)
665
+
666
+ id_bvae_not_yet_valid = id_bvae + (2,)
667
+
668
+ id_bvae_wrongTrustAnchor = id_bvae + (3,)
669
+
670
+ id_bvae_noValidCertPath = id_bvae + (4,)
671
+
672
+ id_bvae_revoked = id_bvae + (5,)
673
+
674
+ id_bvae_invalidKeyPurpose = id_bvae + (9,)
675
+
676
+ id_bvae_invalidKeyUsage = id_bvae + (10,)
677
+
678
+ id_bvae_invalidCertPolicy = id_bvae + (11,)
679
+
680
+
681
+ # SCVP Name Validation Algorithm Errors
682
+
683
+ id_nvae = univ.ObjectIdentifier(id_svp_nameValAlg)
684
+
685
+ id_nvae_name_mismatch = id_nvae + (1,)
686
+
687
+ id_nvae_no_name = id_nvae + (2,)
688
+
689
+ id_nvae_unknown_alg = id_nvae + (3,)
690
+
691
+ id_nvae_bad_name = id_nvae + (4,)
692
+
693
+ id_nvae_bad_name_type = id_nvae + (5,)
694
+
695
+ id_nvae_mixed_names = id_nvae + (6,)
696
+
697
+
698
+ # SCVP Extended Key Usage Key Purpose Identifiers
699
+
700
+ id_kp = univ.ObjectIdentifier((1, 3, 6, 1, 5, 5, 7, 3))
701
+
702
+ id_kp_scvpServer = id_kp + (15,)
703
+
704
+ id_kp_scvpClient = id_kp + (16,)
705
+
706
+
707
+ # CMS Content Types
708
+
709
+ id_ct = univ.ObjectIdentifier((1, 2, 840, 113549, 1, 9, 16, 1))
710
+
711
+ id_ct_scvp_certValRequest = id_ct + (10,)
712
+
713
+ id_ct_scvp_certValResponse = id_ct + (11,)
714
+
715
+ id_ct_scvp_valPolRequest = id_ct + (12,)
716
+
717
+ id_ct_scvp_valPolResponse = id_ct + (13,)
718
+
719
+
720
+ # Update the Content Types Map
721
+
722
+ _cmsContentTypesMapUpdate = {
723
+ id_ct_scvp_certValRequest: CVRequest(),
724
+ id_ct_scvp_certValResponse: CVResponse(),
725
+ id_ct_scvp_valPolRequest: ValPolRequest(),
726
+ id_ct_scvp_valPolResponse: ValPolResponse(),
727
+ }
728
+
729
+ cmsContentTypesMap.update(_cmsContentTypesMapUpdate)
730
+
731
+
732
+ # id_svp_defaultValPolicy: parameters MUST be absent
733
+ # so there is nothing to add to scvpValidationPolMap
734
+
735
+
736
+ # Update the SCVP Validation Algorithm Map
737
+
738
+ _scvpValidationAlgMapUpdate = {
739
+ # id_svp_basicValAlg: parameters MUST be absent
740
+ id_svp_nameValAlg: NameValidationAlgParms(),
741
+ }
742
+
743
+ scvpValidationAlgMap.update(_scvpValidationAlgMapUpdate)
744
+
745
+
746
+ # Update the SCVP Want Back Map
747
+
748
+ _scvpWantBackMapUpdate = {
749
+ id_swb_pkc_best_cert_path: CertBundle(),
750
+ id_swb_pkc_revocation_info: RevInfoWantBack(),
751
+ id_swb_pkc_public_key_info: SubjectPublicKeyInfo(),
752
+ id_swb_aa_cert_path: CertBundle(),
753
+ id_swb_aa_revocation_info: RevInfoWantBack(),
754
+ id_swb_ac_revocation_info: RevInfoWantBack(),
755
+ id_swb_relayed_responses: SCVPResponses(),
756
+ id_swb_pkc_cert: Certificate(),
757
+ id_swb_ac_cert: AttributeCertificate(),
758
+ id_swb_pkc_all_cert_paths: CertBundles(),
759
+ id_swb_pkc_ee_revocation_info: RevInfoWantBack(),
760
+ id_swb_pkc_CAs_revocation_info: RevInfoWantBack(),
761
+ }
762
+
763
+ scvpWantBackMap.update(_scvpWantBackMapUpdate)