/
opt
/
imh-python
/
lib
/
python3.9
/
site-packages
/
pyasn1_modules
/
/opt/imh-python/lib/python3.9/site-packages/pyasn1_modules
mkdir
upload
Name
Size
Mode
Actions
__pycache__/
-
0755
rm
pem.py
1821
0644
edit
dl
rm
rfc1155.py
2683
0644
edit
dl
rm
rfc1157.py
3554
0644
edit
dl
rm
rfc1901.py
646
0644
edit
dl
rm
rfc1902.py
3705
0644
edit
dl
rm
rfc1905.py
4831
0644
edit
dl
rm
rfc2251.py
26931
0644
edit
dl
rm
rfc2314.py
1313
0644
edit
dl
rm
rfc2315.py
9666
0644
edit
dl
rm
rfc2437.py
2623
0644
edit
dl
rm
rfc2459.py
50002
0644
edit
dl
rm
rfc2511.py
10350
0644
edit
dl
rm
rfc2560.py
8406
0644
edit
dl
rm
rfc2631.py
1219
0644
edit
dl
rm
rfc2634.py
9425
0644
edit
dl
rm
rfc2876.py
1438
0644
edit
dl
rm
rfc2985.py
14359
0644
edit
dl
rm
rfc2986.py
1896
0644
edit
dl
rm
rfc3058.py
992
0644
edit
dl
rm
rfc3114.py
1961
0644
edit
dl
rm
rfc3125.py
16707
0644
edit
dl
rm
rfc3161.py
4260
0644
edit
dl
rm
rfc3274.py
1670
0644
edit
dl
rm
rfc3279.py
6807
0644
edit
dl
rm
rfc3280.py
46620
0644
edit
dl
rm
rfc3281.py
9866
0644
edit
dl
rm
rfc3370.py
2811
0644
edit
dl
rm
rfc3412.py
1956
0644
edit
dl
rm
rfc3414.py
1167
0644
edit
dl
rm
rfc3447.py
1605
0644
edit
dl
rm
rfc3537.py
796
0644
edit
dl
rm
rfc3560.py
1818
0644
edit
dl
rm
rfc3565.py
1438
0644
edit
dl
rm
rfc3657.py
1746
0644
edit
dl
rm
rfc3709.py
6469
0644
edit
dl
rm
rfc3739.py
5122
0644
edit
dl
rm
rfc3770.py
1743
0644
edit
dl
rm
rfc3779.py
3260
0644
edit
dl
rm
rfc3820.py
1478
0644
edit
dl
rm
rfc3852.py
20101
0644
edit
dl
rm
rfc4010.py
1228
0644
edit
dl
rm
rfc4043.py
1067
0644
edit
dl
rm
rfc4055.py
10392
0644
edit
dl
rm
rfc4073.py
1636
0644
edit
dl
rm
rfc4108.py
10598
0644
edit
dl
rm
rfc4210.py
28469
0644
edit
dl
rm
rfc4211.py
12110
0644
edit
dl
rm
rfc4334.py
1586
0644
edit
dl
rm
rfc4357.py
15036
0644
edit
dl
rm
rfc4387.py
441
0644
edit
dl
rm
rfc4476.py
1960
0644
edit
dl
rm
rfc4490.py
3401
0644
edit
dl
rm
rfc4491.py
1054
0644
edit
dl
rm
rfc4683.py
1839
0644
edit
dl
rm
rfc4985.py
961
0644
edit
dl
rm
rfc5035.py
4523
0644
edit
dl
rm
rfc5083.py
1888
0644
edit
dl
rm
rfc5084.py
2855
0644
edit
dl
rm
rfc5126.py
15780
0644
edit
dl
rm
rfc5208.py
1432
0644
edit
dl
rm
rfc5275.py
11605
0644
edit
dl
rm
rfc5280.py
51236
0644
edit
dl
rm
rfc5480.py
4834
0644
edit
dl
rm
rfc5636.py
2324
0644
edit
dl
rm
rfc5639.py
1025
0644
edit
dl
rm
rfc5649.py
830
0644
edit
dl
rm
rfc5652.py
21451
0644
edit
dl
rm
rfc5697.py
1702
0644
edit
dl
rm
rfc5751.py
3198
0644
edit
dl
rm
rfc5752.py
1431
0644
edit
dl
rm
rfc5753.py
4534
0644
edit
dl
rm
rfc5755.py
12081
0644
edit
dl
rm
rfc5913.py
1161
0644
edit
dl
rm
rfc5914.py
3714
0644
edit
dl
rm
rfc5915.py
1056
0644
edit
dl
rm
rfc5916.py
800
0644
edit
dl
rm
rfc5917.py
1511
0644
edit
dl
rm
rfc5924.py
425
0644
edit
dl
rm
rfc5934.py
23798
0644
edit
dl
rm
rfc5940.py
1613
0644
edit
dl
rm
rfc5958.py
2650
0644
edit
dl
rm
rfc5990.py
5505
0644
edit
dl
rm
rfc6010.py
2347
0644
edit
dl
rm
rfc6019.py
1086
0644
edit
dl
rm
rfc6031.py
12137
0644
edit
dl
rm
rfc6032.py
1950
0644
edit
dl
rm
rfc6120.py
818
0644
edit
dl
rm
rfc6170.py
409
0644
edit
dl
rm
rfc6187.py
489
0644
edit
dl
rm
rfc6210.py
1052
0644
edit
dl
rm
rfc6211.py
2257
0644
edit
dl
rm
rfc6402.py
17148
0644
edit
dl
rm
rfc6482.py
2085
0644
edit
dl
rm
rfc6486.py
1916
0644
edit
dl
rm
rfc6487.py
472
0644
edit
dl
rm
rfc6664.py
4270
0644
edit
dl
rm
rfc6955.py
2814
0644
edit
dl
rm
rfc6960.py
7913
0644
edit
dl
rm
rfc7030.py
1441
0644
edit
dl
rm
rfc7191.py
7062
0644
edit
dl
rm
rfc7229.py
743
0644
edit
dl
rm
rfc7292.py
8478
0644
edit
dl
rm
rfc7296.py
885
0644
edit
dl
rm
rfc7508.py
2182
0644
edit
dl
rm
rfc7585.py
1076
0644
edit
dl
rm
rfc7633.py
841
0644
edit
dl
rm
rfc7773.py
1315
0644
edit
dl
rm
rfc7894.py
2769
0644
edit
dl
rm
rfc7906.py
18921
0644
edit
dl
rm
rfc7914.py
1493
0644
edit
dl
rm
rfc8017.py
4178
0644
edit
dl
rm
rfc8018.py
6166
0644
edit
dl
rm
rfc8103.py
1017
0644
edit
dl
rm
rfc8209.py
393
0644
edit
dl
rm
rfc8226.py
4291
0644
edit
dl
rm
rfc8358.py
1136
0644
edit
dl
rm
rfc8360.py
1075
0644
edit
dl
rm
rfc8398.py
1192
0644
edit
dl
rm
rfc8410.py
971
0644
edit
dl
rm
rfc8418.py
1109
0644
edit
dl
rm
rfc8419.py
1704
0644
edit
dl
rm
rfc8479.py
1142
0644
edit
dl
rm
rfc8494.py
2363
0644
edit
dl
rm
rfc8520.py
1496
0644
edit
dl
rm
rfc8619.py
1136
0644
edit
dl
rm
rfc8649.py
982
0644
edit
dl
rm
rfc8692.py
2098
0644
edit
dl
rm
rfc8696.py
3479
0644
edit
dl
rm
rfc8702.py
2739
0644
edit
dl
rm
rfc8708.py
978
0644
edit
dl
rm
rfc8769.py
441
0644
edit
dl
rm
__init__.py
65
0644
edit
dl
rm
Edit:
/opt/imh-python/lib/python3.9/site-packages/pyasn1_modules/rfc7906.py
(18921B)
# # This file is part of pyasn1-modules software. # # Created by Russ Housley. # # Copyright (c) 2019, Vigil Security, LLC # License: http://snmplabs.com/pyasn1/license.html # # NSA's CMS Key Management Attributes # # ASN.1 source from: # https://www.rfc-editor.org/rfc/rfc7906.txt # https://www.rfc-editor.org/errata/eid5850 # from pyasn1.type import char from pyasn1.type import constraint from pyasn1.type import namedtype from pyasn1.type import namedval from pyasn1.type import tag from pyasn1.type import univ from pyasn1_modules import rfc2634 from pyasn1_modules import rfc4108 from pyasn1_modules import rfc5280 from pyasn1_modules import rfc5652 from pyasn1_modules import rfc6010 from pyasn1_modules import rfc6019 from pyasn1_modules import rfc7191 MAX = float('inf') # Imports From RFC 2634 id_aa_contentHint = rfc2634.id_aa_contentHint ContentHints = rfc2634.ContentHints id_aa_securityLabel = rfc2634.id_aa_securityLabel SecurityPolicyIdentifier = rfc2634.SecurityPolicyIdentifier SecurityClassification = rfc2634.SecurityClassification ESSPrivacyMark = rfc2634.ESSPrivacyMark SecurityCategories= rfc2634.SecurityCategories ESSSecurityLabel = rfc2634.ESSSecurityLabel # Imports From RFC 4108 id_aa_communityIdentifiers = rfc4108.id_aa_communityIdentifiers CommunityIdentifier = rfc4108.CommunityIdentifier CommunityIdentifiers = rfc4108.CommunityIdentifiers # Imports From RFC 5280 AlgorithmIdentifier = rfc5280.AlgorithmIdentifier Name = rfc5280.Name Certificate = rfc5280.Certificate GeneralNames = rfc5280.GeneralNames GeneralName = rfc5280.GeneralName SubjectInfoAccessSyntax = rfc5280.SubjectInfoAccessSyntax id_pkix = rfc5280.id_pkix id_pe = rfc5280.id_pe id_pe_subjectInfoAccess = rfc5280.id_pe_subjectInfoAccess # Imports From RFC 6010 CMSContentConstraints = rfc6010.CMSContentConstraints # Imports From RFC 6019 BinaryTime = rfc6019.BinaryTime id_aa_binarySigningTime = rfc6019.id_aa_binarySigningTime BinarySigningTime = rfc6019.BinarySigningTime # Imports From RFC 5652 Attribute = rfc5652.Attribute CertificateSet = rfc5652.CertificateSet CertificateChoices = rfc5652.CertificateChoices id_contentType = rfc5652.id_contentType ContentType = rfc5652.ContentType id_messageDigest = rfc5652.id_messageDigest MessageDigest = rfc5652.MessageDigest # Imports From RFC 7191 SIREntityName = rfc7191.SIREntityName id_aa_KP_keyPkgIdAndReceiptReq = rfc7191.id_aa_KP_keyPkgIdAndReceiptReq KeyPkgIdentifierAndReceiptReq = rfc7191.KeyPkgIdentifierAndReceiptReq # Key Province Attribute id_aa_KP_keyProvinceV2 = univ.ObjectIdentifier('2.16.840.1.101.2.1.5.71') class KeyProvinceV2(univ.ObjectIdentifier): pass aa_keyProvince_v2 = Attribute() aa_keyProvince_v2['attrType'] = id_aa_KP_keyProvinceV2 aa_keyProvince_v2['attrValues'][0] = KeyProvinceV2() # Manifest Attribute id_aa_KP_manifest = univ.ObjectIdentifier('2.16.840.1.101.2.1.5.72') class ShortTitle(char.PrintableString): pass class Manifest(univ.SequenceOf): pass Manifest.componentType = ShortTitle() Manifest.subtypeSpec=constraint.ValueSizeConstraint(1, MAX) aa_manifest = Attribute() aa_manifest['attrType'] = id_aa_KP_manifest aa_manifest['attrValues'][0] = Manifest() # Key Algorithm Attribute id_kma_keyAlgorithm = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.1') class KeyAlgorithm(univ.Sequence): pass KeyAlgorithm.componentType = namedtype.NamedTypes( namedtype.NamedType('keyAlg', univ.ObjectIdentifier()), namedtype.OptionalNamedType('checkWordAlg', univ.ObjectIdentifier().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 1))), namedtype.OptionalNamedType('crcAlg', univ.ObjectIdentifier().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 2))) ) aa_keyAlgorithm = Attribute() aa_keyAlgorithm['attrType'] = id_kma_keyAlgorithm aa_keyAlgorithm['attrValues'][0] = KeyAlgorithm() # User Certificate Attribute id_at_userCertificate = univ.ObjectIdentifier('2.5.4.36') aa_userCertificate = Attribute() aa_userCertificate['attrType'] = id_at_userCertificate aa_userCertificate['attrValues'][0] = Certificate() # Key Package Receivers Attribute id_kma_keyPkgReceiversV2 = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.16') class KeyPkgReceiver(univ.Choice): pass KeyPkgReceiver.componentType = namedtype.NamedTypes( namedtype.NamedType('sirEntity', SIREntityName().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 0))), namedtype.NamedType('community', CommunityIdentifier().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 1))) ) class KeyPkgReceiversV2(univ.SequenceOf): pass KeyPkgReceiversV2.componentType = KeyPkgReceiver() KeyPkgReceiversV2.subtypeSpec=constraint.ValueSizeConstraint(1, MAX) aa_keyPackageReceivers_v2 = Attribute() aa_keyPackageReceivers_v2['attrType'] = id_kma_keyPkgReceiversV2 aa_keyPackageReceivers_v2['attrValues'][0] = KeyPkgReceiversV2() # TSEC Nomenclature Attribute id_kma_TSECNomenclature = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.3') class CharEdition(char.PrintableString): pass class CharEditionRange(univ.Sequence): pass CharEditionRange.componentType = namedtype.NamedTypes( namedtype.NamedType('firstCharEdition', CharEdition()), namedtype.NamedType('lastCharEdition', CharEdition()) ) class NumEdition(univ.Integer): pass NumEdition.subtypeSpec = constraint.ValueRangeConstraint(0, 308915776) class NumEditionRange(univ.Sequence): pass NumEditionRange.componentType = namedtype.NamedTypes( namedtype.NamedType('firstNumEdition', NumEdition()), namedtype.NamedType('lastNumEdition', NumEdition()) ) class EditionID(univ.Choice): pass EditionID.componentType = namedtype.NamedTypes( namedtype.NamedType('char', univ.Choice(componentType=namedtype.NamedTypes( namedtype.NamedType('charEdition', CharEdition().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 1))), namedtype.NamedType('charEditionRange', CharEditionRange().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatConstructed, 2))) )) ), namedtype.NamedType('num', univ.Choice(componentType=namedtype.NamedTypes( namedtype.NamedType('numEdition', NumEdition().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 3))), namedtype.NamedType('numEditionRange', NumEditionRange().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatConstructed, 4))) )) ) ) class Register(univ.Integer): pass Register.subtypeSpec = constraint.ValueRangeConstraint(0, 2147483647) class RegisterRange(univ.Sequence): pass RegisterRange.componentType = namedtype.NamedTypes( namedtype.NamedType('firstRegister', Register()), namedtype.NamedType('lastRegister', Register()) ) class RegisterID(univ.Choice): pass RegisterID.componentType = namedtype.NamedTypes( namedtype.NamedType('register', Register().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 5))), namedtype.NamedType('registerRange', RegisterRange().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatConstructed, 6))) ) class SegmentNumber(univ.Integer): pass SegmentNumber.subtypeSpec = constraint.ValueRangeConstraint(1, 127) class SegmentRange(univ.Sequence): pass SegmentRange.componentType = namedtype.NamedTypes( namedtype.NamedType('firstSegment', SegmentNumber()), namedtype.NamedType('lastSegment', SegmentNumber()) ) class SegmentID(univ.Choice): pass SegmentID.componentType = namedtype.NamedTypes( namedtype.NamedType('segmentNumber', SegmentNumber().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 7))), namedtype.NamedType('segmentRange', SegmentRange().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatConstructed, 8))) ) class TSECNomenclature(univ.Sequence): pass TSECNomenclature.componentType = namedtype.NamedTypes( namedtype.NamedType('shortTitle', ShortTitle()), namedtype.OptionalNamedType('editionID', EditionID()), namedtype.OptionalNamedType('registerID', RegisterID()), namedtype.OptionalNamedType('segmentID', SegmentID()) ) aa_tsecNomenclature = Attribute() aa_tsecNomenclature['attrType'] = id_kma_TSECNomenclature aa_tsecNomenclature['attrValues'][0] = TSECNomenclature() # Key Purpose Attribute id_kma_keyPurpose = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.13') class KeyPurpose(univ.Enumerated): pass KeyPurpose.namedValues = namedval.NamedValues( ('n-a', 0), ('a', 65), ('b', 66), ('l', 76), ('m', 77), ('r', 82), ('s', 83), ('t', 84), ('v', 86), ('x', 88), ('z', 90) ) aa_keyPurpose = Attribute() aa_keyPurpose['attrType'] = id_kma_keyPurpose aa_keyPurpose['attrValues'][0] = KeyPurpose() # Key Use Attribute id_kma_keyUse = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.14') class KeyUse(univ.Enumerated): pass KeyUse.namedValues = namedval.NamedValues( ('n-a', 0), ('ffk', 1), ('kek', 2), ('kpk', 3), ('msk', 4), ('qkek', 5), ('tek', 6), ('tsk', 7), ('trkek', 8), ('nfk', 9), ('effk', 10), ('ebfk', 11), ('aek', 12), ('wod', 13), ('kesk', 246), ('eik', 247), ('ask', 248), ('kmk', 249), ('rsk', 250), ('csk', 251), ('sak', 252), ('rgk', 253), ('cek', 254), ('exk', 255) ) aa_keyUse = Attribute() aa_keyPurpose['attrType'] = id_kma_keyUse aa_keyPurpose['attrValues'][0] = KeyUse() # Transport Key Attribute id_kma_transportKey = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.15') class TransOp(univ.Enumerated): pass TransOp.namedValues = namedval.NamedValues( ('transport', 1), ('operational', 2) ) aa_transportKey = Attribute() aa_transportKey['attrType'] = id_kma_transportKey aa_transportKey['attrValues'][0] = TransOp() # Key Distribution Period Attribute id_kma_keyDistPeriod = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.5') class KeyDistPeriod(univ.Sequence): pass KeyDistPeriod.componentType = namedtype.NamedTypes( namedtype.OptionalNamedType('doNotDistBefore', BinaryTime().subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 0))), namedtype.NamedType('doNotDistAfter', BinaryTime()) ) aa_keyDistributionPeriod = Attribute() aa_keyDistributionPeriod['attrType'] = id_kma_keyDistPeriod aa_keyDistributionPeriod['attrValues'][0] = KeyDistPeriod() # Key Validity Period Attribute id_kma_keyValidityPeriod = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.6') class KeyValidityPeriod(univ.Sequence): pass KeyValidityPeriod.componentType = namedtype.NamedTypes( namedtype.NamedType('doNotUseBefore', BinaryTime()), namedtype.OptionalNamedType('doNotUseAfter', BinaryTime()) ) aa_keyValidityPeriod = Attribute() aa_keyValidityPeriod['attrType'] = id_kma_keyValidityPeriod aa_keyValidityPeriod['attrValues'][0] = KeyValidityPeriod() # Key Duration Attribute id_kma_keyDuration = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.7') ub_KeyDuration_months = univ.Integer(72) ub_KeyDuration_hours = univ.Integer(96) ub_KeyDuration_days = univ.Integer(732) ub_KeyDuration_weeks = univ.Integer(104) ub_KeyDuration_years = univ.Integer(100) class KeyDuration(univ.Choice): pass KeyDuration.componentType = namedtype.NamedTypes( namedtype.NamedType('hours', univ.Integer().subtype( subtypeSpec=constraint.ValueRangeConstraint(1, ub_KeyDuration_hours)).subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 0))), namedtype.NamedType('days', univ.Integer().subtype( subtypeSpec=constraint.ValueRangeConstraint(1, ub_KeyDuration_days))), namedtype.NamedType('weeks', univ.Integer().subtype( subtypeSpec=constraint.ValueRangeConstraint(1, ub_KeyDuration_weeks)).subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 1))), namedtype.NamedType('months', univ.Integer().subtype( subtypeSpec=constraint.ValueRangeConstraint(1, ub_KeyDuration_months)).subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 2))), namedtype.NamedType('years', univ.Integer().subtype( subtypeSpec=constraint.ValueRangeConstraint(1, ub_KeyDuration_years)).subtype( implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 3))) ) aa_keyDurationPeriod = Attribute() aa_keyDurationPeriod['attrType'] = id_kma_keyDuration aa_keyDurationPeriod['attrValues'][0] = KeyDuration() # Classification Attribute id_aa_KP_classification = univ.ObjectIdentifier(id_aa_securityLabel) id_enumeratedPermissiveAttributes = univ.ObjectIdentifier('2.16.840.1.101.2.1.8.3.1') id_enumeratedRestrictiveAttributes = univ.ObjectIdentifier('2.16.840.1.101.2.1.8.3.4') id_informativeAttributes = univ.ObjectIdentifier('2.16.840.1.101.2.1.8.3.3') class SecurityAttribute(univ.Integer): pass SecurityAttribute.subtypeSpec = constraint.ValueRangeConstraint(0, MAX) class EnumeratedTag(univ.Sequence): pass EnumeratedTag.componentType = namedtype.NamedTypes( namedtype.NamedType('tagName', univ.ObjectIdentifier()), namedtype.NamedType('attributeList', univ.SetOf(componentType=SecurityAttribute())) ) class FreeFormField(univ.Choice): pass FreeFormField.componentType = namedtype.NamedTypes( namedtype.NamedType('bitSetAttributes', univ.BitString()), # Not permitted in RFC 7906 namedtype.NamedType('securityAttributes', univ.SetOf(componentType=SecurityAttribute())) ) class InformativeTag(univ.Sequence): pass InformativeTag.componentType = namedtype.NamedTypes( namedtype.NamedType('tagName', univ.ObjectIdentifier()), namedtype.NamedType('attributes', FreeFormField()) ) class Classification(ESSSecurityLabel): pass aa_classification = Attribute() aa_classification['attrType'] = id_aa_KP_classification aa_classification['attrValues'][0] = Classification() # Split Identifier Attribute id_kma_splitID = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.11') class SplitID(univ.Sequence): pass SplitID.componentType = namedtype.NamedTypes( namedtype.NamedType('half', univ.Enumerated( namedValues=namedval.NamedValues(('a', 0), ('b', 1)))), namedtype.OptionalNamedType('combineAlg', AlgorithmIdentifier()) ) aa_splitIdentifier = Attribute() aa_splitIdentifier['attrType'] = id_kma_splitID aa_splitIdentifier['attrValues'][0] = SplitID() # Key Package Type Attribute id_kma_keyPkgType = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.12') class KeyPkgType(univ.ObjectIdentifier): pass aa_keyPackageType = Attribute() aa_keyPackageType['attrType'] = id_kma_keyPkgType aa_keyPackageType['attrValues'][0] = KeyPkgType() # Signature Usage Attribute id_kma_sigUsageV3 = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.22') class SignatureUsage(CMSContentConstraints): pass aa_signatureUsage_v3 = Attribute() aa_signatureUsage_v3['attrType'] = id_kma_sigUsageV3 aa_signatureUsage_v3['attrValues'][0] = SignatureUsage() # Other Certificate Format Attribute id_kma_otherCertFormats = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.19') aa_otherCertificateFormats = Attribute() aa_signatureUsage_v3['attrType'] = id_kma_otherCertFormats aa_signatureUsage_v3['attrValues'][0] = CertificateChoices() # PKI Path Attribute id_at_pkiPath = univ.ObjectIdentifier('2.5.4.70') class PkiPath(univ.SequenceOf): pass PkiPath.componentType = Certificate() PkiPath.subtypeSpec=constraint.ValueSizeConstraint(1, MAX) aa_pkiPath = Attribute() aa_pkiPath['attrType'] = id_at_pkiPath aa_pkiPath['attrValues'][0] = PkiPath() # Useful Certificates Attribute id_kma_usefulCerts = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.20') aa_usefulCertificates = Attribute() aa_usefulCertificates['attrType'] = id_kma_usefulCerts aa_usefulCertificates['attrValues'][0] = CertificateSet() # Key Wrap Attribute id_kma_keyWrapAlgorithm = univ.ObjectIdentifier('2.16.840.1.101.2.1.13.21') aa_keyWrapAlgorithm = Attribute() aa_keyWrapAlgorithm['attrType'] = id_kma_keyWrapAlgorithm aa_keyWrapAlgorithm['attrValues'][0] = AlgorithmIdentifier() # Content Decryption Key Identifier Attribute id_aa_KP_contentDecryptKeyID = univ.ObjectIdentifier('2.16.840.1.101.2.1.5.66') class ContentDecryptKeyID(univ.OctetString): pass aa_contentDecryptKeyIdentifier = Attribute() aa_contentDecryptKeyIdentifier['attrType'] = id_aa_KP_contentDecryptKeyID aa_contentDecryptKeyIdentifier['attrValues'][0] = ContentDecryptKeyID() # Certificate Pointers Attribute aa_certificatePointers = Attribute() aa_certificatePointers['attrType'] = id_pe_subjectInfoAccess aa_certificatePointers['attrValues'][0] = SubjectInfoAccessSyntax() # CRL Pointers Attribute id_aa_KP_crlPointers = univ.ObjectIdentifier('2.16.840.1.101.2.1.5.70') aa_cRLDistributionPoints = Attribute() aa_cRLDistributionPoints['attrType'] = id_aa_KP_crlPointers aa_cRLDistributionPoints['attrValues'][0] = GeneralNames() # Extended Error Codes id_errorCodes = univ.ObjectIdentifier('2.16.840.1.101.2.1.22') id_missingKeyType = univ.ObjectIdentifier('2.16.840.1.101.2.1.22.1') id_privacyMarkTooLong = univ.ObjectIdentifier('2.16.840.1.101.2.1.22.2') id_unrecognizedSecurityPolicy = univ.ObjectIdentifier('2.16.840.1.101.2.1.22.3') # Map of Attribute Type OIDs to Attributes added to the # ones that are in rfc5652.py _cmsAttributesMapUpdate = { id_aa_contentHint: ContentHints(), id_aa_communityIdentifiers: CommunityIdentifiers(), id_aa_binarySigningTime: BinarySigningTime(), id_contentType: ContentType(), id_messageDigest: MessageDigest(), id_aa_KP_keyPkgIdAndReceiptReq: KeyPkgIdentifierAndReceiptReq(), id_aa_KP_keyProvinceV2: KeyProvinceV2(), id_aa_KP_manifest: Manifest(), id_kma_keyAlgorithm: KeyAlgorithm(), id_at_userCertificate: Certificate(), id_kma_keyPkgReceiversV2: KeyPkgReceiversV2(), id_kma_TSECNomenclature: TSECNomenclature(), id_kma_keyPurpose: KeyPurpose(), id_kma_keyUse: KeyUse(), id_kma_transportKey: TransOp(), id_kma_keyDistPeriod: KeyDistPeriod(), id_kma_keyValidityPeriod: KeyValidityPeriod(), id_kma_keyDuration: KeyDuration(), id_aa_KP_classification: Classification(), id_kma_splitID: SplitID(), id_kma_keyPkgType: KeyPkgType(), id_kma_sigUsageV3: SignatureUsage(), id_kma_otherCertFormats: CertificateChoices(), id_at_pkiPath: PkiPath(), id_kma_usefulCerts: CertificateSet(), id_kma_keyWrapAlgorithm: AlgorithmIdentifier(), id_aa_KP_contentDecryptKeyID: ContentDecryptKeyID(), id_pe_subjectInfoAccess: SubjectInfoAccessSyntax(), id_aa_KP_crlPointers: GeneralNames(), } rfc5652.cmsAttributesMap.update(_cmsAttributesMapUpdate)
Save
cmd:
run