3 M(YN@sddlmZmZmZmZmZmZddlmZddlm Z e dZ ddZ Gdddej ZGd d d ejZejejd ejejd ejed e_GdddejZee_ejde e_GdddejZejejdejejdej e_GdddejZejejdejejdejejejej dde_GdddejZ!ee!_GdddejZ"ejejdejej#dej e"_e dd d!d"dd#d Z$Gd$d%d%ej%Z&Gd&d'd'ej'Z(Gd(d)d)ej)Z*ej+dddddde*_,Gd3d4d4ejZ-ejejd5ej'ej#d6ej.ej#de"e-_Gd7d8d8ejZ/ejejd9e*ejd:e-ejd;e&ejdd>ej%Z0Gd?d@d@ejZ1ejejd9e*ej#dAe0jejejej2ddejd;e&ejdejejd\ej%ejd]ej?e>_Gd^d_d_ejZ@ejejdQe4ejdNe7jejejej2ddejd`e>jejejej dde@_GdadbdbejZAejejd9e*ejdce@jejejej dddej#dee=jejejej2dddejd;e&ejdfe<eA_GdgdhdhejZBejejdQe4ejdNe7jejejej2ddeB_GdidjdjejZCejejd9e*ejdUeBejd;e&ejdsr>Zridc@s eZdZdS)RecipientEncryptedKeysN)rrrrrrrr?sr?c@s eZdZdS)UserKeyingMaterialN)rrrrrrrr@sr@c@s eZdZdS)OriginatorPublicKeyN)rrrrrrrrAsrA algorithmZ publicKeyc@s eZdZdS)OriginatorIdentifierOrKeyN)rrrrrrrrCsrCZ originatorKeyc@s eZdZdS)KeyAgreeRecipientInfoN)rrrrrrrrDsrDZ originator)Z explicitTagZukmZrecipientEncryptedKeysc@s eZdZdS)RecipientIdentifierN)rrrrrrrrEsrEc@s eZdZdS)KeyTransRecipientInfoN)rrrrrrrrFsrFc@s eZdZdS) RecipientInfoN)rrrrrrrrGsrGZktriZkariZkekriZpwriZoric@s eZdZdS)RecipientInfosN)rrrrrrrrH.srHc@s eZdZdS)DigestAlgorithmIdentifierN)rrrrrrrrI6srIc@s eZdZdS) SignatureN)rrrrrrrrJ:srJc@s eZdZdS)SignerIdentifierN)rrrrrrrrK>srKc@s eZdZdS)UnprotectedAttributesN)rrrrrrrrLIsrLc@s eZdZdS) ContentTypeN)rrrrrrrrMQsrMc@s eZdZdS)EncryptedContentN)rrrrrrrrNUsrNc@s eZdZdS)$ContentEncryptionAlgorithmIdentifierN)rrrrrrrrOYsrOc@s eZdZdS)EncryptedContentInfoN)rrrrrrrrP]srP contentTypeZcontentEncryptionAlgorithmZencryptedContentc@s eZdZdS) EncryptedDataN)rrrrrrrrRisrRZencryptedContentInfoZunprotectedAttrs c@s eZdZdS)DigestAlgorithmIdentifiersN)rrrrrrrrT{srTc@s eZdZdS)EncapsulatedContentInfoN)rrrrrrrrUsrUZ eContentTypeZeContentc@s eZdZdS)DigestN)rrrrrrrrVsrVc@s eZdZdS) DigestedDataN)rrrrrrrrWsrWZdigestAlgorithmZencapContentInfodigestc@s eZdZdS) ContentInfoN)rrrrrrrrYsrYcontentc@s eZdZdS)UnauthAttributesN)rrrrrrrr[sr[c@s eZdZdS)ExtendedCertificateInfoN)rrrrrrrr\sr\Z certificate attributesc@s eZdZdS)SignatureAlgorithmIdentifierN)rrrrrrrr^sr^c@s eZdZdS)ExtendedCertificateN)rrrrrrrr_sr_ZextendedCertificateInfoZsignatureAlgorithm signaturec@s eZdZdS)OtherCertificateFormatN)rrrrrrrrasraZotherCertFormatZ otherCertc@s eZdZdS)AttributeCertificateV2N)rrrrrrrrbsrbc@s eZdZdS)AttCertVersionV1N)rrrrrrrrcsrcc@s eZdZdS)AttributeCertificateInfoV1N)rrrrrrrrdsrd)valuesubjectZbaseCertificateIDZ subjectNameZattCertValidityPeriodZissuerUniqueID extensionsc@s eZdZdS)AttributeCertificateV1N)rrrrrrrrhsrhZacInfoc@s eZdZdS)CertificateChoicesN)rrrrrrrrisriZextendedCertificateZ v1AttrCertZ v2AttrCertc@s eZdZdS)CertificateSetN)rrrrrrrrjsrjc@s eZdZdS)MessageAuthenticationCodeN)rrrrrrrrksrkc@s eZdZdS)UnsignedAttributesN)rrrrrrrrlsrlc@s eZdZdS)SignatureValueN)rrrrrrrrm'srmc@s eZdZdS) SignerInfoN)rrrrrrrrn+srnZsidZ signedAttrsZ unsignedAttrsc@s eZdZdS) SignerInfosN)rrrrrrrro<sroc@s eZdZdS) SignedDataN)rrrrrrrrpCsrpZdigestAlgorithmsZ certificatesZcrlsZ signerInfosc@s eZdZdS)"MessageAuthenticationCodeAlgorithmN)rrrrrrrrqSsrqc@s eZdZdS) MessageDigestN)rrrrrrrrrWsrrc@s eZdZdS)TimeN)rrrrrrrrs[srsZutcTimeZ generalTimec@s eZdZdS)OriginatorInfoN)rrrrrrrrtesrtcertsc@s eZdZdS)AuthAttributesN)rrrrrrrrvqsrvc@s eZdZdS)AuthenticatedDataN)rrrrrrrrwysrwZoriginatorInfoZrecipientInfosZ macAlgorithmZ authAttrsmacZ unauthAttrsc@s eZdZdS) EnvelopedDataN)rrrrrrrr{sr{c@s eZdZdS)CountersignatureN)rrrrrrrr|sr|c@s eZdZdS) ExtendedCertificateOrCertificateN)rrrrrrrr}sr}c@s eZdZdS) SigningTimeN)rrrrrrrr~sr~N)r*r)r+r)r,r%)r-r.)r/r0)r1r2)r+r)Z pyasn1.typerrrrrrZpyasn1_modulesrr floatMAXrZAnyrSequencerZ NamedTypesZ NamedTyper ZSetOfrrZValueSizeConstraintZ subtypeSpecr ZChoicer!ZCertificateListsubtypeZTagZtagClassContextZtagFormatConstructedr#r$ZOptionalNamedTypeZ id_signedDataZAlgorithmIdentifierr'Z OctetStringr(ZIntegerr)Z NamedValuesZ namedValuesr3ZGeneralizedTimer5r7r8ZtagFormatSimpler9r:NameZCertificateSerialNumberr;r<r=r>Z SequenceOfr?r@rAZ BitStringrCrDrErFrGrHrIrJrKrLrMrNrOrPrRZid_contentTypeZid_dataZid_messageDigestrTrUrVrWrYr[r\Z Certificater^r_raZAttributeCertificaterbrcrdZDefaultedNamedTypeZ IssuerSerialZ GeneralNamesZAttCertValidityPeriodZUniqueIdentifierZ ExtensionsrhrirjrkrlrmrnrorprqrrrsZUTCTimertrvrwZid_ct_contentInfoZid_envelopedDatar{r|Zid_digestedDataZid_signingTimer}Zid_encryptedDataZid_ct_authDatar~Zid_countersignaturerrrrsl                                             *   $,