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.
- pyasn1_alt_modules/__init__.py +2 -0
- pyasn1_alt_modules/opentypemap.py +19 -0
- pyasn1_alt_modules/pem.py +66 -0
- pyasn1_alt_modules/rfc1155.py +97 -0
- pyasn1_alt_modules/rfc1157.py +127 -0
- pyasn1_alt_modules/rfc1901.py +23 -0
- pyasn1_alt_modules/rfc1902.py +130 -0
- pyasn1_alt_modules/rfc1905.py +136 -0
- pyasn1_alt_modules/rfc2040.py +50 -0
- pyasn1_alt_modules/rfc2251.py +564 -0
- pyasn1_alt_modules/rfc2314.py +68 -0
- pyasn1_alt_modules/rfc2315.py +325 -0
- pyasn1_alt_modules/rfc2437.py +70 -0
- pyasn1_alt_modules/rfc2459.py +1340 -0
- pyasn1_alt_modules/rfc2511.py +303 -0
- pyasn1_alt_modules/rfc2528.py +34 -0
- pyasn1_alt_modules/rfc2560.py +226 -0
- pyasn1_alt_modules/rfc2631.py +37 -0
- pyasn1_alt_modules/rfc2634.py +342 -0
- pyasn1_alt_modules/rfc2743.py +60 -0
- pyasn1_alt_modules/rfc2876.py +61 -0
- pyasn1_alt_modules/rfc2898.py +72 -0
- pyasn1_alt_modules/rfc2985.py +593 -0
- pyasn1_alt_modules/rfc2986.py +76 -0
- pyasn1_alt_modules/rfc3058.py +48 -0
- pyasn1_alt_modules/rfc3114.py +80 -0
- pyasn1_alt_modules/rfc3125.py +469 -0
- pyasn1_alt_modules/rfc3161.py +142 -0
- pyasn1_alt_modules/rfc3217.py +42 -0
- pyasn1_alt_modules/rfc3274.py +62 -0
- pyasn1_alt_modules/rfc3279.py +264 -0
- pyasn1_alt_modules/rfc3280.py +1544 -0
- pyasn1_alt_modules/rfc3281.py +332 -0
- pyasn1_alt_modules/rfc3370.py +142 -0
- pyasn1_alt_modules/rfc3412.py +54 -0
- pyasn1_alt_modules/rfc3414.py +29 -0
- pyasn1_alt_modules/rfc3447.py +46 -0
- pyasn1_alt_modules/rfc3537.py +44 -0
- pyasn1_alt_modules/rfc3546.py +23 -0
- pyasn1_alt_modules/rfc3560.py +74 -0
- pyasn1_alt_modules/rfc3565.py +59 -0
- pyasn1_alt_modules/rfc3657.py +69 -0
- pyasn1_alt_modules/rfc3709.py +230 -0
- pyasn1_alt_modules/rfc3739.py +207 -0
- pyasn1_alt_modules/rfc3770.py +77 -0
- pyasn1_alt_modules/rfc3779.py +139 -0
- pyasn1_alt_modules/rfc3820.py +66 -0
- pyasn1_alt_modules/rfc3852.py +707 -0
- pyasn1_alt_modules/rfc3874.py +29 -0
- pyasn1_alt_modules/rfc4010.py +58 -0
- pyasn1_alt_modules/rfc4043.py +45 -0
- pyasn1_alt_modules/rfc4055.py +285 -0
- pyasn1_alt_modules/rfc4056.py +56 -0
- pyasn1_alt_modules/rfc4059.py +101 -0
- pyasn1_alt_modules/rfc4073.py +62 -0
- pyasn1_alt_modules/rfc4108.py +355 -0
- pyasn1_alt_modules/rfc4210.py +807 -0
- pyasn1_alt_modules/rfc4211.py +420 -0
- pyasn1_alt_modules/rfc4231.py +38 -0
- pyasn1_alt_modules/rfc4262.py +37 -0
- pyasn1_alt_modules/rfc4334.py +78 -0
- pyasn1_alt_modules/rfc4357.py +485 -0
- pyasn1_alt_modules/rfc4366.py +23 -0
- pyasn1_alt_modules/rfc4387.py +23 -0
- pyasn1_alt_modules/rfc4476.py +99 -0
- pyasn1_alt_modules/rfc4490.py +119 -0
- pyasn1_alt_modules/rfc4491.py +44 -0
- pyasn1_alt_modules/rfc4683.py +76 -0
- pyasn1_alt_modules/rfc4985.py +52 -0
- pyasn1_alt_modules/rfc4998.py +125 -0
- pyasn1_alt_modules/rfc5035.py +206 -0
- pyasn1_alt_modules/rfc5055.py +763 -0
- pyasn1_alt_modules/rfc5083.py +55 -0
- pyasn1_alt_modules/rfc5084.py +94 -0
- pyasn1_alt_modules/rfc5126.py +578 -0
- pyasn1_alt_modules/rfc5208.py +73 -0
- pyasn1_alt_modules/rfc5275.py +404 -0
- pyasn1_alt_modules/rfc5276.py +82 -0
- pyasn1_alt_modules/rfc5280.py +1666 -0
- pyasn1_alt_modules/rfc5480.py +190 -0
- pyasn1_alt_modules/rfc5544.py +127 -0
- pyasn1_alt_modules/rfc5636.py +117 -0
- pyasn1_alt_modules/rfc5639.py +49 -0
- pyasn1_alt_modules/rfc5649.py +33 -0
- pyasn1_alt_modules/rfc5652.py +763 -0
- pyasn1_alt_modules/rfc5697.py +64 -0
- pyasn1_alt_modules/rfc5698.py +159 -0
- pyasn1_alt_modules/rfc5751.py +127 -0
- pyasn1_alt_modules/rfc5752.py +52 -0
- pyasn1_alt_modules/rfc5753.py +163 -0
- pyasn1_alt_modules/rfc5755.py +400 -0
- pyasn1_alt_modules/rfc5913.py +46 -0
- pyasn1_alt_modules/rfc5914.py +119 -0
- pyasn1_alt_modules/rfc5915.py +32 -0
- pyasn1_alt_modules/rfc5916.py +39 -0
- pyasn1_alt_modules/rfc5917.py +59 -0
- pyasn1_alt_modules/rfc5924.py +19 -0
- pyasn1_alt_modules/rfc5934.py +786 -0
- pyasn1_alt_modules/rfc5940.py +62 -0
- pyasn1_alt_modules/rfc5958.py +100 -0
- pyasn1_alt_modules/rfc5990.py +238 -0
- pyasn1_alt_modules/rfc6010.py +92 -0
- pyasn1_alt_modules/rfc6019.py +46 -0
- pyasn1_alt_modules/rfc6031.py +469 -0
- pyasn1_alt_modules/rfc6032.py +71 -0
- pyasn1_alt_modules/rfc6066.py +25 -0
- pyasn1_alt_modules/rfc6120.py +46 -0
- pyasn1_alt_modules/rfc6170.py +17 -0
- pyasn1_alt_modules/rfc6187.py +22 -0
- pyasn1_alt_modules/rfc6210.py +45 -0
- pyasn1_alt_modules/rfc6211.py +75 -0
- pyasn1_alt_modules/rfc6402.py +643 -0
- pyasn1_alt_modules/rfc6482.py +77 -0
- pyasn1_alt_modules/rfc6484.py +17 -0
- pyasn1_alt_modules/rfc6486.py +70 -0
- pyasn1_alt_modules/rfc6487.py +22 -0
- pyasn1_alt_modules/rfc6492.py +41 -0
- pyasn1_alt_modules/rfc6493.py +24 -0
- pyasn1_alt_modules/rfc6494.py +23 -0
- pyasn1_alt_modules/rfc6664.py +151 -0
- pyasn1_alt_modules/rfc6955.py +112 -0
- pyasn1_alt_modules/rfc6960.py +234 -0
- pyasn1_alt_modules/rfc6962.py +52 -0
- pyasn1_alt_modules/rfc7030.py +70 -0
- pyasn1_alt_modules/rfc7191.py +267 -0
- pyasn1_alt_modules/rfc7229.py +29 -0
- pyasn1_alt_modules/rfc7292.py +359 -0
- pyasn1_alt_modules/rfc7296.py +32 -0
- pyasn1_alt_modules/rfc7508.py +92 -0
- pyasn1_alt_modules/rfc7585.py +53 -0
- pyasn1_alt_modules/rfc7633.py +40 -0
- pyasn1_alt_modules/rfc7693.py +66 -0
- pyasn1_alt_modules/rfc7773.py +54 -0
- pyasn1_alt_modules/rfc7836.py +65 -0
- pyasn1_alt_modules/rfc7894.py +100 -0
- pyasn1_alt_modules/rfc7906.py +739 -0
- pyasn1_alt_modules/rfc7914.py +55 -0
- pyasn1_alt_modules/rfc8017.py +159 -0
- pyasn1_alt_modules/rfc8018.py +269 -0
- pyasn1_alt_modules/rfc8103.py +36 -0
- pyasn1_alt_modules/rfc8209.py +20 -0
- pyasn1_alt_modules/rfc8226.py +151 -0
- pyasn1_alt_modules/rfc8358.py +54 -0
- pyasn1_alt_modules/rfc8360.py +46 -0
- pyasn1_alt_modules/rfc8398.py +55 -0
- pyasn1_alt_modules/rfc8410.py +43 -0
- pyasn1_alt_modules/rfc8418.py +36 -0
- pyasn1_alt_modules/rfc8419.py +70 -0
- pyasn1_alt_modules/rfc8479.py +48 -0
- pyasn1_alt_modules/rfc8494.py +80 -0
- pyasn1_alt_modules/rfc8520.py +66 -0
- pyasn1_alt_modules/rfc8619.py +45 -0
- pyasn1_alt_modules/rfc8649.py +42 -0
- pyasn1_alt_modules/rfc8692.py +79 -0
- pyasn1_alt_modules/rfc8696.py +108 -0
- pyasn1_alt_modules/rfc8702.py +109 -0
- pyasn1_alt_modules/rfc8708.py +43 -0
- pyasn1_alt_modules/rfc8737.py +36 -0
- pyasn1_alt_modules/rfc8769.py +21 -0
- pyasn1_alt_modules/rfc8894.py +52 -0
- pyasn1_alt_modules/rfc8951.py +42 -0
- pyasn1_alt_modules/rfc8954.py +238 -0
- pyasn1_alt_modules/rfc8994.py +52 -0
- pyasn1_alt_modules/rfc8995.py +39 -0
- pyasn1_alt_modules/rfc9044.py +80 -0
- pyasn1_alt_modules/rfc9092.py +35 -0
- pyasn1_alt_modules/rfc9118.py +82 -0
- pyasn1_alt_modules/rfc9174.py +55 -0
- pyasn1_alt_modules/rfc9189.py +74 -0
- pyasn1_alt_modules/rfc9215.py +228 -0
- pyasn1_alt_modules/rfc9286.py +78 -0
- pyasn1_alt_modules/rfc9289.py +22 -0
- pyasn1_alt_modules/rfc9310.py +46 -0
- pyasn1_alt_modules/rfc9323.py +129 -0
- pyasn1_alt_modules/rfc9336.py +20 -0
- pyasn1_alt_modules/rfc9337.py +74 -0
- pyasn1_alt_modules/rfc9345.py +36 -0
- pyasn1_alt_modules/rfc9385.py +22 -0
- pyasn1_alt_modules/rfc9399.py +59 -0
- pyasn1_alt_modules/rfc9480.py +731 -0
- pyasn1_alt_modules/rfc9481.py +224 -0
- pyasn1_alt_modules/rfc9509.py +24 -0
- pyasn1_alt_modules/rfc9548.py +23 -0
- pyasn1_alt_modules/rfc9579.py +89 -0
- pyasn1_alt_modules/rfc9582.py +107 -0
- pyasn1_alt_modules/rfc9598.py +52 -0
- pyasn1_alt_modules/rfc9608.py +35 -0
- pyasn1_alt_modules/rfc9629.py +100 -0
- pyasn1_alt_modules/rfc9654.py +241 -0
- pyasn1_alt_modules-0.4.5.dist-info/LICENSE.txt +25 -0
- pyasn1_alt_modules-0.4.5.dist-info/METADATA +34 -0
- pyasn1_alt_modules-0.4.5.dist-info/RECORD +195 -0
- pyasn1_alt_modules-0.4.5.dist-info/WHEEL +5 -0
- pyasn1_alt_modules-0.4.5.dist-info/top_level.txt +1 -0
- pyasn1_alt_modules-0.4.5.dist-info/zip-safe +1 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
#
|
|
2
|
+
# This file is part of pyasn1-alt-modules software.
|
|
3
|
+
#
|
|
4
|
+
# Created by Russ Housley with some assistance from asn1ate v.0.6.0.
|
|
5
|
+
#
|
|
6
|
+
# Copyright (c) 2021-2024, Vigil Security, LLC
|
|
7
|
+
# License: http://vigilsec.com/pyasn1-alt-modules-license.txt
|
|
8
|
+
#
|
|
9
|
+
# Cryptographic Algorithms for GOST R 34.10-2012 and GOST R 34.11-2012
|
|
10
|
+
#
|
|
11
|
+
# ASN.1 source from:
|
|
12
|
+
# https://www.rfc-editor.org/rfc/rfc7836.txt
|
|
13
|
+
#
|
|
14
|
+
|
|
15
|
+
from pyasn1.type import namedtype
|
|
16
|
+
from pyasn1.type import univ
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class GOST3410_2012_CanonicalFormParameters(univ.Sequence):
|
|
20
|
+
componentType = namedtype.NamedTypes(
|
|
21
|
+
namedtype.NamedType('p', univ.Integer()),
|
|
22
|
+
namedtype.NamedType('a', univ.Integer()),
|
|
23
|
+
namedtype.NamedType('b', univ.Integer()),
|
|
24
|
+
namedtype.NamedType('m', univ.Integer()),
|
|
25
|
+
namedtype.NamedType('q', univ.Integer()),
|
|
26
|
+
namedtype.NamedType('x', univ.Integer()),
|
|
27
|
+
namedtype.NamedType('y', univ.Integer())
|
|
28
|
+
)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class GOST3410_2012_TwistedEdwardsFormParameters(univ.Sequence):
|
|
32
|
+
componentType = namedtype.NamedTypes(
|
|
33
|
+
namedtype.NamedType('p', univ.Integer()),
|
|
34
|
+
namedtype.NamedType('a', univ.Integer()),
|
|
35
|
+
namedtype.NamedType('b', univ.Integer()),
|
|
36
|
+
namedtype.NamedType('e', univ.Integer()),
|
|
37
|
+
namedtype.NamedType('d', univ.Integer()),
|
|
38
|
+
namedtype.NamedType('m', univ.Integer()),
|
|
39
|
+
namedtype.NamedType('q', univ.Integer()),
|
|
40
|
+
namedtype.NamedType('x', univ.Integer()),
|
|
41
|
+
namedtype.NamedType('y', univ.Integer()),
|
|
42
|
+
namedtype.NamedType('u', univ.Integer()),
|
|
43
|
+
namedtype.NamedType('v', univ.Integer())
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
id_tc26_gost_28147_param_Z = univ.ObjectIdentifier('1.2.643.7.1.2.5.1.1')
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
id_tc26_gost_3410_12_512_paramSetA = univ.ObjectIdentifier('1.2.643.7.1.2.1.2.1')
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
id_tc26_gost_3410_12_512_paramSetB = univ.ObjectIdentifier('1.2.643.7.1.2.1.2.2')
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
id_tc26_gost_3410_2012_256_paramSetA = univ.ObjectIdentifier('1.2.643.7.1.2.1.1.1')
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
id_tc26_gost_3410_2012_512_paramSetC = univ.ObjectIdentifier('1.2.643.7.1.2.1.2.3')
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
id_tc26_hmac_gost_3411_12_256 = univ.ObjectIdentifier('1.2.643.7.1.1.4.1')
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
id_tc26_hmac_gost_3411_12_512 = univ.ObjectIdentifier('1.2.643.7.1.1.4.2')
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
#
|
|
2
|
+
# This file is part of pyasn1-alt-modules software.
|
|
3
|
+
#
|
|
4
|
+
# Created by Russ Housley.
|
|
5
|
+
# Modified by Russ Housley to include the opentypemap manager.
|
|
6
|
+
#
|
|
7
|
+
# Copyright (c) 2019-2024, Vigil Security, LLC
|
|
8
|
+
# License: http://vigilsec.com/pyasn1-alt-modules-license.txt
|
|
9
|
+
#
|
|
10
|
+
# Alternative Challenge Password Attributes for EST
|
|
11
|
+
#
|
|
12
|
+
# ASN.1 source from:
|
|
13
|
+
# https://www.rfc-editor.org/rfc/rfc7894.txt
|
|
14
|
+
#
|
|
15
|
+
|
|
16
|
+
from pyasn1.type import char
|
|
17
|
+
from pyasn1.type import constraint
|
|
18
|
+
from pyasn1.type import namedtype
|
|
19
|
+
from pyasn1.type import univ
|
|
20
|
+
|
|
21
|
+
from pyasn1_alt_modules import rfc5652
|
|
22
|
+
from pyasn1_alt_modules import rfc6402
|
|
23
|
+
from pyasn1_alt_modules import rfc7191
|
|
24
|
+
from pyasn1_alt_modules import opentypemap
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
# Since CMS Attributes and CMC Controls both use 'attrType', one map is used
|
|
28
|
+
|
|
29
|
+
cmsAttributesMap = opentypemap.get('cmsAttributesMap')
|
|
30
|
+
|
|
31
|
+
cmcControlAttributesMap = cmsAttributesMap
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
# SingleAttribute is the same as Attribute in RFC 5652, except that the
|
|
35
|
+
# attrValues SET must have one and only one member
|
|
36
|
+
|
|
37
|
+
Attribute = rfc7191.SingleAttribute
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
# DirectoryString is the same as RFC 5280, except the length is limited to 255
|
|
41
|
+
|
|
42
|
+
class DirectoryString(univ.Choice):
|
|
43
|
+
pass
|
|
44
|
+
|
|
45
|
+
DirectoryString.componentType = namedtype.NamedTypes(
|
|
46
|
+
namedtype.NamedType('teletexString', char.TeletexString().subtype(
|
|
47
|
+
subtypeSpec=constraint.ValueSizeConstraint(1, 255))),
|
|
48
|
+
namedtype.NamedType('printableString', char.PrintableString().subtype(
|
|
49
|
+
subtypeSpec=constraint.ValueSizeConstraint(1, 255))),
|
|
50
|
+
namedtype.NamedType('universalString', char.UniversalString().subtype(
|
|
51
|
+
subtypeSpec=constraint.ValueSizeConstraint(1, 255))),
|
|
52
|
+
namedtype.NamedType('utf8String', char.UTF8String().subtype(
|
|
53
|
+
subtypeSpec=constraint.ValueSizeConstraint(1, 255))),
|
|
54
|
+
namedtype.NamedType('bmpString', char.BMPString().subtype(
|
|
55
|
+
subtypeSpec=constraint.ValueSizeConstraint(1, 255)))
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
# OTP Challenge Attribute
|
|
60
|
+
|
|
61
|
+
id_aa_otpChallenge = univ.ObjectIdentifier('1.2.840.113549.1.9.16.2.56')
|
|
62
|
+
|
|
63
|
+
ub_aa_otpChallenge = univ.Integer(255)
|
|
64
|
+
|
|
65
|
+
otpChallenge = Attribute()
|
|
66
|
+
otpChallenge['attrType'] = id_aa_otpChallenge
|
|
67
|
+
otpChallenge['attrValues'][0] = DirectoryString()
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
# Revocation Challenge Attribute
|
|
71
|
+
|
|
72
|
+
id_aa_revocationChallenge = univ.ObjectIdentifier('1.2.840.113549.1.9.16.2.57')
|
|
73
|
+
|
|
74
|
+
ub_aa_revocationChallenge = univ.Integer(255)
|
|
75
|
+
|
|
76
|
+
revocationChallenge = Attribute()
|
|
77
|
+
revocationChallenge['attrType'] = id_aa_revocationChallenge
|
|
78
|
+
revocationChallenge['attrValues'][0] = DirectoryString()
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
# EST Identity Linking Attribute
|
|
82
|
+
|
|
83
|
+
id_aa_estIdentityLinking = univ.ObjectIdentifier('1.2.840.113549.1.9.16.2.58')
|
|
84
|
+
|
|
85
|
+
ub_aa_est_identity_linking = univ.Integer(255)
|
|
86
|
+
|
|
87
|
+
estIdentityLinking = Attribute()
|
|
88
|
+
estIdentityLinking['attrType'] = id_aa_estIdentityLinking
|
|
89
|
+
estIdentityLinking['attrValues'][0] = DirectoryString()
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
# Update the CMC Control Attributes Map (a.k.a. CMS Attributes Map)
|
|
93
|
+
|
|
94
|
+
_cmcControlAttributesMapUpdate = {
|
|
95
|
+
id_aa_otpChallenge: DirectoryString(),
|
|
96
|
+
id_aa_revocationChallenge: DirectoryString(),
|
|
97
|
+
id_aa_estIdentityLinking: DirectoryString(),
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
cmcControlAttributesMap.update(_cmcControlAttributesMapUpdate)
|