/opt/imh-python/lib/python3.9/site-packages/pyasn1_modules
NameSizeModeActions
__pycache__/-0755rm
pem.py18210644editdlrm
rfc1155.py26830644editdlrm
rfc1157.py35540644editdlrm
rfc1901.py6460644editdlrm
rfc1902.py37050644editdlrm
rfc1905.py48310644editdlrm
rfc2251.py269310644editdlrm
rfc2314.py13130644editdlrm
rfc2315.py96660644editdlrm
rfc2437.py26230644editdlrm
rfc2459.py500020644editdlrm
rfc2511.py103500644editdlrm
rfc2560.py84060644editdlrm
rfc2631.py12190644editdlrm
rfc2634.py94250644editdlrm
rfc2876.py14380644editdlrm
rfc2985.py143590644editdlrm
rfc2986.py18960644editdlrm
rfc3058.py9920644editdlrm
rfc3114.py19610644editdlrm
rfc3125.py167070644editdlrm
rfc3161.py42600644editdlrm
rfc3274.py16700644editdlrm
rfc3279.py68070644editdlrm
rfc3280.py466200644editdlrm
rfc3281.py98660644editdlrm
rfc3370.py28110644editdlrm
rfc3412.py19560644editdlrm
rfc3414.py11670644editdlrm
rfc3447.py16050644editdlrm
rfc3537.py7960644editdlrm
rfc3560.py18180644editdlrm
rfc3565.py14380644editdlrm
rfc3657.py17460644editdlrm
rfc3709.py64690644editdlrm
rfc3739.py51220644editdlrm
rfc3770.py17430644editdlrm
rfc3779.py32600644editdlrm
rfc3820.py14780644editdlrm
rfc3852.py201010644editdlrm
rfc4010.py12280644editdlrm
rfc4043.py10670644editdlrm
rfc4055.py103920644editdlrm
rfc4073.py16360644editdlrm
rfc4108.py105980644editdlrm
rfc4210.py284690644editdlrm
rfc4211.py121100644editdlrm
rfc4334.py15860644editdlrm
rfc4357.py150360644editdlrm
rfc4387.py4410644editdlrm
rfc4476.py19600644editdlrm
rfc4490.py34010644editdlrm
rfc4491.py10540644editdlrm
rfc4683.py18390644editdlrm
rfc4985.py9610644editdlrm
rfc5035.py45230644editdlrm
rfc5083.py18880644editdlrm
rfc5084.py28550644editdlrm
rfc5126.py157800644editdlrm
rfc5208.py14320644editdlrm
rfc5275.py116050644editdlrm
rfc5280.py512360644editdlrm
rfc5480.py48340644editdlrm
rfc5636.py23240644editdlrm
rfc5639.py10250644editdlrm
rfc5649.py8300644editdlrm
rfc5652.py214510644editdlrm
rfc5697.py17020644editdlrm
rfc5751.py31980644editdlrm
rfc5752.py14310644editdlrm
rfc5753.py45340644editdlrm
rfc5755.py120810644editdlrm
rfc5913.py11610644editdlrm
rfc5914.py37140644editdlrm
rfc5915.py10560644editdlrm
rfc5916.py8000644editdlrm
rfc5917.py15110644editdlrm
rfc5924.py4250644editdlrm
rfc5934.py237980644editdlrm
rfc5940.py16130644editdlrm
rfc5958.py26500644editdlrm
rfc5990.py55050644editdlrm
rfc6010.py23470644editdlrm
rfc6019.py10860644editdlrm
rfc6031.py121370644editdlrm
rfc6032.py19500644editdlrm
rfc6120.py8180644editdlrm
rfc6170.py4090644editdlrm
rfc6187.py4890644editdlrm
rfc6210.py10520644editdlrm
rfc6211.py22570644editdlrm
rfc6402.py171480644editdlrm
rfc6482.py20850644editdlrm
rfc6486.py19160644editdlrm
rfc6487.py4720644editdlrm
rfc6664.py42700644editdlrm
rfc6955.py28140644editdlrm
rfc6960.py79130644editdlrm
rfc7030.py14410644editdlrm
rfc7191.py70620644editdlrm
rfc7229.py7430644editdlrm
rfc7292.py84780644editdlrm
rfc7296.py8850644editdlrm
rfc7508.py21820644editdlrm
rfc7585.py10760644editdlrm
rfc7633.py8410644editdlrm
rfc7773.py13150644editdlrm
rfc7894.py27690644editdlrm
rfc7906.py189210644editdlrm
rfc7914.py14930644editdlrm
rfc8017.py41780644editdlrm
rfc8018.py61660644editdlrm
rfc8103.py10170644editdlrm
rfc8209.py3930644editdlrm
rfc8226.py42910644editdlrm
rfc8358.py11360644editdlrm
rfc8360.py10750644editdlrm
rfc8398.py11920644editdlrm
rfc8410.py9710644editdlrm
rfc8418.py11090644editdlrm
rfc8419.py17040644editdlrm
rfc8479.py11420644editdlrm
rfc8494.py23630644editdlrm
rfc8520.py14960644editdlrm
rfc8619.py11360644editdlrm
rfc8649.py9820644editdlrm
rfc8692.py20980644editdlrm
rfc8696.py34790644editdlrm
rfc8702.py27390644editdlrm
rfc8708.py9780644editdlrm
rfc8769.py4410644editdlrm
__init__.py650644editdlrm
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)