/usr/lib64/python3.9/site-packages/cryptography/x509/__pycache__
NameSizeModeActions
base.cpython-39.opt-1.pyc313170644editdlrm
base.cpython-39.pyc313170644editdlrm
certificate_transparency.cpython-39.opt-1.pyc18250644editdlrm
certificate_transparency.cpython-39.pyc18250644editdlrm
extensions.cpython-39.opt-1.pyc721830644editdlrm
extensions.cpython-39.pyc721830644editdlrm
general_name.cpython-39.opt-1.pyc106020644editdlrm
general_name.cpython-39.pyc106020644editdlrm
name.cpython-39.opt-1.pyc114630644editdlrm
name.cpython-39.pyc114630644editdlrm
ocsp.cpython-39.opt-1.pyc143520644editdlrm
ocsp.cpython-39.pyc143520644editdlrm
oid.cpython-39.opt-1.pyc5290644editdlrm
oid.cpython-39.pyc5290644editdlrm
__init__.cpython-39.opt-1.pyc59780644editdlrm
__init__.cpython-39.pyc59780644editdlrm
Edit: /usr/lib64/python3.9/site-packages/cryptography/x509/__pycache__/base.cpython-39.pyc (31317B)
a ¹aáƒã@sÌddlZddlZddlZddlZddlmZddlmZddl m Z m Z ddl m Z mZmZmZmZmZmZddlmZmZmZddlmZmZmZmZddlmZmZdd l m!Z!e d d d ¡Z"Gd d „d e#ƒZ$eeej%eeddœdd„Z&e!ej%ej'e!e(fddœdd„Z)ejejdœdd„Z*Gdd„dƒZ+Gdd„dƒZ,Gdd„dej-ƒZ.Gdd„de#ƒZ/Gdd „d ej0d!�Z1e1 2ej1¡Gd"d#„d#ej0d!�Z3e3 2ej3¡Gd$d%„d%e3ƒZ4Gd&d'„d'ej0d!�Z5e5 2ej5¡Gd(d)„d)ej0d!�Z6e6 2ej6¡dBe(ej7e1d*œd+d,„Z8dCe(ej7e1d*œd-d.„Z9dDe(ej7e6d*œd/d0„Z:dEe(ej7e6d*œd1d2„Z;dFe(ej7e5d*œd3d4„ZƒZ?Gd9d:„d:e>ƒZ@Gd;d<„dƒZAGd=d>„d>e>ƒZBeCd?œd@dA„ZDdS)HéN)Úutils)Úx509)ÚhashesÚ serialization)ÚdsaÚecÚed25519Úed448ÚrsaÚx25519Úx448)ÚCERTIFICATE_PUBLIC_KEY_TYPESÚPRIVATE_KEY_TYPESÚPUBLIC_KEY_TYPES)Ú ExtensionÚ ExtensionTypeÚ ExtensionsÚ_make_sequence_methods)ÚNameÚ _ASN1Type)ÚObjectIdentifierižécs&eZdZeeddœ‡fdd„ Z‡ZS)ÚAttributeNotFoundN)ÚmsgÚoidÚreturncstt|ƒ |¡||_dS©N)ÚsuperrÚ__init__r)Úselfrr©Ú __class__©úr"r"r#r9`szAttribute.valuecCsd |j|j¡S)Nz)Úformatrr9r>r"r"r#Ú__repr__dszAttribute.__repr__©ÚotherrcCs2t|tƒstS|j|jko0|j|jko0|j|jkSr)Ú isinstancer8ÚNotImplementedrr9r:©rrBr"r"r#Ú__eq__gs   ÿ ýzAttribute.__eq__cCs ||k Srr"rEr"r"r#Ú__ne__qszAttribute.__ne__cCst|j|j|jfƒSr)Úhashrr9r:r>r"r"r#Ú__hash__tszAttribute.__hash__)r$r%r&rZ UTF8Stringr9rÚbytesÚintrÚpropertyrr@ÚtypingÚAnyÚboolrFrGrIr"r"r"r#r8Qsüû  r8c@sHeZdZejeddœdd„Zedƒ\ZZ Z dd„Z e edœd d „Z dS) Ú AttributesN)r.rcCst|ƒ|_dSr)ÚlistÚ _attributes)rr.r"r"r#ryszAttributes.__init__rRcCs d |j¡S)Nz)r?rRr>r"r"r#r@�szAttributes.__repr__©rrcCs0|D]}|j|kr|Sqtd |¡|ƒ‚dS)NzNo {} attribute was found)rrr?)rrÚattrr"r"r#Úget_attribute_for_oid„s  z Attributes.get_attribute_for_oid)r$r%r&rMÚIterabler8rrÚ__len__Ú__iter__Ú __getitem__r@rrUr"r"r"r#rPxs ý rPc@seZdZdZdZdS)ÚVersionréN)r$r%r&Zv1Úv3r"r"r"r#rZŒsrZcs&eZdZeeddœ‡fdd„ Z‡ZS)ÚInvalidVersionN)rÚparsed_versionrcstt|ƒ |¡||_dSr)rr]rr^)rrr^r r"r#r’szInvalidVersion.__init__)r$r%r&r'rKrr(r"r"r r#r]‘sr]c@sxeZdZejejedœdd„ƒZej e dœdd„ƒZ ej e dœdd„ƒZ ejedœd d „ƒZej ejdœd d „ƒZej ejdœd d„ƒZej edœdd„ƒZej edœdd„ƒZej ejejdœdd„ƒZej edœdd„ƒZej edœdd„ƒZej edœdd„ƒZej edœdd„ƒZejee dœdd„ƒZ!ejee dœd d!„ƒZ"eje dœd"d#„ƒZ#eje$j%ed$œd%d&„ƒZ&d'S)(Ú Certificate©Ú algorithmrcCsdS©z4 Returns bytes using digest passed. Nr"©rrar"r"r#Ú fingerprint˜szCertificate.fingerprintr=cCsdS)z3 Returns certificate serial number Nr"r>r"r"r#Ú serial_numberžszCertificate.serial_numbercCsdS)z1 Returns the certificate version Nr"r>r"r"r#Úversion¤szCertificate.versioncCsdS©z( Returns the public key Nr"r>r"r"r#Ú public_keyªszCertificate.public_keycCsdS)z? Not before time (represented as UTC datetime) Nr"r>r"r"r#Únot_valid_before°szCertificate.not_valid_beforecCsdS)z> Not after time (represented as UTC datetime) Nr"r>r"r"r#Únot_valid_after¶szCertificate.not_valid_aftercCsdS)z1 Returns the issuer name object. Nr"r>r"r"r#Úissuer¼szCertificate.issuercCsdS©z2 Returns the subject name object. Nr"r>r"r"r#ÚsubjectÂszCertificate.subjectcCsdS©zt Returns a HashAlgorithm corresponding to the type of the digest signed in the certificate. Nr"r>r"r"r#Úsignature_hash_algorithmÈsz$Certificate.signature_hash_algorithmcCsdS©zJ Returns the ObjectIdentifier of the signature algorithm. Nr"r>r"r"r#Úsignature_algorithm_oidÑsz#Certificate.signature_algorithm_oidcCsdS)z/ Returns an Extensions object. Nr"r>r"r"r#r*×szCertificate.extensionscCsdS©z. Returns the signature bytes. Nr"r>r"r"r#Ú signatureÝszCertificate.signaturecCsdS)zR Returns the tbsCertificate payload bytes as defined in RFC 5280. Nr"r>r"r"r#Útbs_certificate_bytesãsz!Certificate.tbs_certificate_bytesrAcCsdS©z" Checks equality. Nr"rEr"r"r#rFészCertificate.__eq__cCsdS©z# Checks not equal. Nr"rEr"r"r#rGïszCertificate.__ne__cCsdS©z" Computes a hash. Nr"r>r"r"r#rIõszCertificate.__hash__©ÚencodingrcCsdS)zB Serializes the certificate to PEM or DER format. Nr"©rryr"r"r#Ú public_bytesûszCertificate.public_bytesN)'r$r%r&ÚabcÚabstractmethodrÚ HashAlgorithmrJrdÚabstractpropertyrKrerZrfr rhr4rirjrrkrmrMÚOptionalrorrqrr*rsrtÚobjectrOrFrGrIrÚEncodingr{r"r"r"r#r_—sF þr_)Ú metaclassc@sJeZdZejedœdd„ƒZejejdœdd„ƒZeje dœdd„ƒZ dS) ÚRevokedCertificater=cCsdS)zG Returns the serial number of the revoked certificate. Nr"r>r"r"r#resz RevokedCertificate.serial_numbercCsdS)zH Returns the date of when this certificate was revoked. Nr"r>r"r"r#Úrevocation_date sz"RevokedCertificate.revocation_datecCsdS)zW Returns an Extensions object containing a list of Revoked extensions. Nr"r>r"r"r#r*szRevokedCertificate.extensionsN) r$r%r&r|rrKrer4r…rr*r"r"r"r#r„s r„c@sXeZdZeejedœdd„Zeedœdd„ƒZeejdœdd„ƒZ eedœd d „ƒZ d S) Ú_RawRevokedCertificate©rer…r*cCs||_||_||_dSr©Ú_serial_numberÚ_revocation_dateÚ _extensions©rrer…r*r"r"r#rsz_RawRevokedCertificate.__init__r=cCs|jSr)r‰r>r"r"r#re)sz$_RawRevokedCertificate.serial_numbercCs|jSr)rŠr>r"r"r#r…-sz&_RawRevokedCertificate.revocation_datecCs|jSr)r‹r>r"r"r#r*1sz!_RawRevokedCertificate.extensionsN) r$r%r&rKr4rrrLrer…r*r"r"r"r#r†sü r†c@sÜeZdZejejedœdd„ƒZeje j edœdd„ƒZ eje e jedœdd „ƒZeje je j d œd d „ƒZejed œd d„ƒZejed œdd„ƒZeje jejd œdd„ƒZejejd œdd„ƒZejed œdd„ƒZejed œdd„ƒZejed œdd„ƒZejeedœdd„ƒZ ejeedœdd„ƒZ!eje d œd d!„ƒZ"e j#e ed"œd#d$„ƒZ$e j#e%e j&ed"œd%d$„ƒZ$eje j'e e%fe j'ee j&efd"œd&d$„ƒZ$eje j(ed œd'd(„ƒZ)eje*ed)œd*d+„ƒZ+d,S)-ÚCertificateRevocationListrxcCsdS)z: Serializes the CRL to PEM or DER format. Nr"rzr"r"r#r{7sz&CertificateRevocationList.public_bytesr`cCsdSrbr"rcr"r"r#rd=sz%CertificateRevocationList.fingerprint)rercCsdS)zs Returns an instance of RevokedCertificate or None if the serial_number is not in the CRL. Nr")rrer"r"r#Ú(get_revoked_certificate_by_serial_numberCszBCertificateRevocationList.get_revoked_certificate_by_serial_numberr=cCsdSrnr"r>r"r"r#roLsz2CertificateRevocationList.signature_hash_algorithmcCsdSrpr"r>r"r"r#rqUsz1CertificateRevocationList.signature_algorithm_oidcCsdS)zC Returns the X509Name with the issuer of this CRL. Nr"r>r"r"r#rk[sz CertificateRevocationList.issuercCsdS)z? Returns the date of next update for this CRL. Nr"r>r"r"r#Ú next_updateasz%CertificateRevocationList.next_updatecCsdS)z? Returns the date of last update for this CRL. Nr"r>r"r"r#Ú last_updategsz%CertificateRevocationList.last_updatecCsdS)zS Returns an Extensions object containing a list of CRL extensions. Nr"r>r"r"r#r*msz$CertificateRevocationList.extensionscCsdSrrr"r>r"r"r#rsssz#CertificateRevocationList.signaturecCsdS)zO Returns the tbsCertList payload bytes as defined in RFC 5280. Nr"r>r"r"r#Útbs_certlist_bytesysz,CertificateRevocationList.tbs_certlist_bytesrAcCsdSrur"rEr"r"r#rFsz CertificateRevocationList.__eq__cCsdSrvr"rEr"r"r#rG…sz CertificateRevocationList.__ne__cCsdS)z< Number of revoked certificates in the CRL. Nr"r>r"r"r#rW‹sz!CertificateRevocationList.__len__)ÚidxrcCsdSrr"©rr’r"r"r#rY‘sz%CertificateRevocationList.__getitem__cCsdSrr"r“r"r"r#rY•scCsdS)zS Returns a revoked certificate (or slice of revoked certificates). Nr"r“r"r"r#rY™scCsdS)z8 Iterator over the revoked certificates Nr"r>r"r"r#rX¡sz"CertificateRevocationList.__iter__)rhrcCsdS)zQ Verifies signature of revocation list against given public key. Nr")rrhr"r"r#Úis_signature_valid§sz,CertificateRevocationList.is_signature_validN),r$r%r&r|r}rr‚rJr{rr~rdrKrMr€r„rŽrrorrqrrkr4r�r�rr*rsr‘r�rOrFrGrWÚoverloadrYÚsliceÚListÚUnionÚIteratorrXrr”r"r"r"r#r�6sVþ þ þr�c@s6eZdZejeedœdd„ƒZejeedœdd„ƒZeje dœdd„ƒZ eje dœd d „ƒZ ej edœd d „ƒZej ejejdœd d„ƒZej edœdd„ƒZej edœdd„ƒZej edœdd„ƒZejejedœdd„ƒZej edœdd„ƒZej edœdd„ƒZ ej edœdd„ƒZ!ejeedœdd „ƒZ"d!S)"ÚCertificateSigningRequestrAcCsdSrur"rEr"r"r#rF²sz CertificateSigningRequest.__eq__cCsdSrvr"rEr"r"r#rG¸sz CertificateSigningRequest.__ne__r=cCsdSrwr"r>r"r"r#rI¾sz"CertificateSigningRequest.__hash__cCsdSrgr"r>r"r"r#rhÄsz$CertificateSigningRequest.public_keycCsdSrlr"r>r"r"r#rmÊsz!CertificateSigningRequest.subjectcCsdSrnr"r>r"r"r#roÐsz2CertificateSigningRequest.signature_hash_algorithmcCsdSrpr"r>r"r"r#rqÙsz1CertificateSigningRequest.signature_algorithm_oidcCsdS)z@ Returns the extensions in the signing request. Nr"r>r"r"r#r*ßsz$CertificateSigningRequest.extensionscCsdS)z/ Returns an Attributes object. Nr"r>r"r"r#r.åsz$CertificateSigningRequest.attributesrxcCsdS)z; Encodes the request to PEM or DER format. Nr"rzr"r"r#r{ësz&CertificateSigningRequest.public_bytescCsdSrrr"r>r"r"r#rsñsz#CertificateSigningRequest.signaturecCsdS)zd Returns the PKCS#10 CertificationRequestInfo bytes as defined in RFC 2986. Nr"r>r"r"r#Útbs_certrequest_bytes÷sz/CertificateSigningRequest.tbs_certrequest_bytescCsdS)z8 Verifies signature of signing request. Nr"r>r"r"r#r”þsz,CertificateSigningRequest.is_signature_validrScCsdS)z: Get the attribute value for a given OID. Nr")rrr"r"r#rUsz/CertificateSigningRequest.get_attribute_for_oidN)#r$r%r&r|r}r�rOrFrGrKrIrrhrrrmrMr€rr~rorrqrr*rPr.rr‚rJr{rsr›r”rUr"r"r"r#rš±s: þrš)ÚdataÚbackendrcCs t |¡Sr)Ú rust_x509Úload_pem_x509_certificate©rœr�r"r"r#rŸsrŸcCs t |¡Sr)ržÚload_der_x509_certificater r"r"r#r¡sr¡cCs t |¡Sr)ržÚload_pem_x509_csrr r"r"r#r¢sr¢cCs t |¡Sr)ržÚload_der_x509_csrr r"r"r#r£%sr£cCs t |¡Sr)ržÚload_pem_x509_crlr r"r"r#r¤,sr¤cCs t |¡Sr)ržÚload_der_x509_crlr r"r"r#r¥3sr¥c@sšeZdZdggfejeejeeejej e e fdœdd„Z eddœdd„Z eeddœd d „Ze e dd œd d „Zdeejejejedœdd„ZdS)Ú CertificateSigningRequestBuilderN)Ú subject_namer*r.cCs||_||_||_dS)zB Creates an empty X.509 certificate request (v1). N)Ú _subject_namer‹rR)rr§r*r.r"r"r#r:s z)CertificateSigningRequestBuilder.__init__©ÚnamercCs4t|tƒstdƒ‚|jdur$tdƒ‚t||j|jƒS)zF Sets the certificate requestor's distinguished name. úExpecting x509.Name object.Nú&The subject name may only be set once.)rCrÚ TypeErrorr¨r+r¦r‹rR©rrªr"r"r#r§Gs   ÿz-CertificateSigningRequestBuilder.subject_name©ÚextvalÚcriticalrcCsDt|tƒstdƒ‚t|j||ƒ}t||jƒt|j|j|g|j ƒS)zE Adds an X.509 extension to the certificate request. ú"extension must be an ExtensionType) rCrr­rrr-r‹r¦r¨rR©rr°r±r)r"r"r#Ú add_extensionSs   ýz.CertificateSigningRequestBuilder.add_extension)rr9rcCsLt|tƒstdƒ‚t|tƒs$tdƒ‚t||jƒt|j|j|j||fgƒS)zK Adds an X.509 attribute with an OID and associated value. zoid must be an ObjectIdentifierzvalue must be bytes) rCrr­rJr0rRr¦r¨r‹)rrr9r"r"r#Ú add_attributees   ýz.CertificateSigningRequestBuilder.add_attribute©Ú private_keyrar�rcCs |jdurtdƒ‚t |||¡S)zF Signs the request using the requestor's private key. Nz/A CertificateSigningRequest must have a subject)r¨r+ržZcreate_x509_csr©rr·rar�r"r"r#Úsignys z%CertificateSigningRequestBuilder.sign)N)r$r%r&rMr€rr—rrÚTuplerrJrr§rOr´rµrrr~rNršr¹r"r"r"r#r¦9s,ü ü  þ þ ü ûr¦c @seZdZUejeeed<ddddddgfeje eje eje eje eje j eje j ejeeddœdd„Z e ddœdd„Ze ddœd d „Ze dd œd d „Ze ddœdd„Ze j ddœdd„Ze j ddœdd„Zeeddœdd„Zdeejejejedœdd„ZdS)ÚCertificateBuilderr‹N)Ú issuer_namer§rhrerirjr*rcCs6tj|_||_||_||_||_||_||_||_ dSr) rZr\Ú_versionÚ _issuer_namer¨Ú _public_keyr‰Ú_not_valid_beforeÚ_not_valid_afterr‹)rr¼r§rhrerirjr*r"r"r#rŠs zCertificateBuilder.__init__r©cCsDt|tƒstdƒ‚|jdur$tdƒ‚t||j|j|j|j |j |j ƒS)z3 Sets the CA's distinguished name. r«Nú%The issuer name may only be set once.) rCrr­r¾r+r»r¨r¿r‰rÀrÁr‹r®r"r"r#r¼�s  ùzCertificateBuilder.issuer_namecCsDt|tƒstdƒ‚|jdur$tdƒ‚t|j||j|j|j |j |j ƒS)z: Sets the requestor's distinguished name. r«Nr¬) rCrr­r¨r+r»r¾r¿r‰rÀrÁr‹r®r"r"r#r§¯s  ùzCertificateBuilder.subject_name)Úkeyrc Cs`t|tjtjtjtjt j t j t jfƒs.tdƒ‚|jdur@tdƒ‚t|j|j||j|j|j|jƒS)zT Sets the requestor's public key (as found in the signing request). z‰Expecting one of DSAPublicKey, RSAPublicKey, EllipticCurvePublicKey, Ed25519PublicKey, Ed448PublicKey, X25519PublicKey, or X448PublicKey.Nz$The public key may only be set once.)rCrZ DSAPublicKeyr Z RSAPublicKeyrZEllipticCurvePublicKeyrZEd25519PublicKeyr ZEd448PublicKeyr ZX25519PublicKeyr Z X448PublicKeyr­r¿r+r»r¾r¨r‰rÀrÁr‹)rrÃr"r"r#rhÁs2ùþ ÿ ùzCertificateBuilder.public_key©ÚnumberrcCsht|tƒstdƒ‚|jdur$tdƒ‚|dkr4tdƒ‚| ¡dkrHtdƒ‚t|j|j|j ||j |j |j ƒS)z5 Sets the certificate serial number. ú'Serial number must be of integral type.Nú'The serial number may only be set once.rz%The serial number should be positive.é ú3The serial number should not be more than 159 bits.) rCrKr­r‰r+Ú bit_lengthr»r¾r¨r¿rÀrÁr‹©rrÅr"r"r#reæs&   ÿùz CertificateBuilder.serial_numberr1cCszt|tjƒstdƒ‚|jdur&tdƒ‚t|ƒ}|tkr>tdƒ‚|jdurZ||jkrZtdƒ‚t|j |j |j |j ||j|j ƒS)z7 Sets the certificate activation time. úExpecting datetime object.Nz*The not valid before may only be set once.z>The not valid before date must be on or after 1950 January 1).zBThe not valid before date must be before the not valid after date.)rCr4r­rÀr+r7Ú_EARLIEST_UTC_TIMErÁr»r¾r¨r¿r‰r‹©rr2r"r"r#ris,  ÿÿùz#CertificateBuilder.not_valid_beforecCszt|tjƒstdƒ‚|jdur&tdƒ‚t|ƒ}|tkr>tdƒ‚|jdurZ||jkrZtdƒ‚t|j |j |j |j |j||j ƒS)z7 Sets the certificate expiration time. rÌNz)The not valid after may only be set once.ztdƒ‚|jdurZ||jkrZtdƒ‚t|j ||j|j |j ƒS)NrÌú!Last update may only be set once.ú8The last update date must be on or after 1950 January 1.z9The last update date must be before the next update date.) rCr4r­rÓr+r7rÍrÔrÐr¾r‹rÑ)rr�r"r"r#r�•s(  ÿÿûz,CertificateRevocationListBuilder.last_update)r�rcCsrt|tjƒstdƒ‚|jdur&tdƒ‚t|ƒ}|tkr>tdƒ‚|jdurZ||jkrZtdƒ‚t|j |j||j |j ƒS)NrÌrÕrÖz8The next update date must be after the last update date.) rCr4r­rÔr+r7rÍrÓrÐr¾r‹rÑ)rr�r"r"r#r�­s(  ÿÿûz,CertificateRevocationListBuilder.next_updater¯cCsLt|tƒstdƒ‚t|j||ƒ}t||jƒt|j|j |j |j|g|j ƒS)zM Adds an X.509 extension to the certificate revocation list. r²) rCrr­rrr-r‹rÐr¾rÓrÔrÑr³r"r"r#r´Ås   ûz.CertificateRevocationListBuilder.add_extension)Úrevoked_certificatercCs2t|tƒstdƒ‚t|j|j|j|j|j|gƒS)z8 Adds a revoked certificate to the CRL. z)Must be an instance of RevokedCertificate) rCr„r­rÐr¾rÓrÔr‹rÑ)rr×r"r"r#Úadd_revoked_certificateØs  ûz8CertificateRevocationListBuilder.add_revoked_certificater¶cCsD|jdurtdƒ‚|jdur$tdƒ‚|jdur6tdƒ‚t |||¡S)NzA CRL must have an issuer namez"A CRL must have a last update timez"A CRL must have a next update time)r¾r+rÓrÔržZcreate_x509_crlr¸r"r"r#r¹és   z%CertificateRevocationListBuilder.sign)N)r$r%r&rMr—rrrÏr„r€rr4rr¼r�r�rOr´rØrrr~rNr�r¹r"r"r"r#rÐtsH ú   ú þ þ þ þ þ ü ûrÐc@s†eZdZddgfejeejejejee dœdd„Z eddœdd„Z ejddœd d „Z e e dd œd d „Zdejedœdd„ZdS)ÚRevokedCertificateBuilderNr‡cCs||_||_||_dSrrˆrŒr"r"r#rüsz"RevokedCertificateBuilder.__init__rÄcCsXt|tƒstdƒ‚|jdur$tdƒ‚|dkr4tdƒ‚| ¡dkrHtdƒ‚t||j|jƒS)NrÆrÇrz$The serial number should be positiverÈrÉ) rCrKr­r‰r+rÊrÙrŠr‹rËr"r"r#res   ÿ ÿz'RevokedCertificateBuilder.serial_numberr1cCsNt|tjƒstdƒ‚|jdur&tdƒ‚t|ƒ}|tkr>tdƒ‚t|j||j ƒS)NrÌz)The revocation date may only be set once.z7The revocation date must be on or after 1950 January 1.) rCr4r­rŠr+r7rÍrÙr‰r‹rÎr"r"r#r…s  ÿ ÿz)RevokedCertificateBuilder.revocation_dater¯cCsDt|tƒstdƒ‚t|j||ƒ}t||jƒt|j|j |j|gƒS)Nr²) rCrr­rrr-r‹rÙr‰rŠr³r"r"r#r´(s   ýz'RevokedCertificateBuilder.add_extension)r�rcCs:|jdurtdƒ‚|jdur$tdƒ‚t|j|jt|jƒƒS)Nz/A revoked certificate must have a serial numberz1A revoked certificate must have a revocation date)r‰r+rŠr†rr‹)rr�r"r"r#Úbuild6s  ÿýzRevokedCertificateBuilder.build)N)r$r%r&rMr€rKr4r—rrrrer…rOr´rNr„rÚr"r"r"r#rÙûs ü  ü þ þ rÙr=cCst t d¡d¡d?S)NéÚbigr)rKÚ from_bytesÚosÚurandomr"r"r"r#Úrandom_serial_numberDsrà)N)N)N)N)N)N)Er|r4rÞrMZ cryptographyrZ"cryptography.hazmat.bindings._rustrržZcryptography.hazmat.primitivesrrZ)cryptography.hazmat.primitives.asymmetricrrrr r r r Z/cryptography.hazmat.primitives.asymmetric.typesr rrZcryptography.x509.extensionsrrrrZcryptography.x509.namerrZcryptography.x509.oidrrÍÚ Exceptionrr—r-rºrJr0r7r8rPÚEnumrZr]ÚABCMetar_Úregisterr„r†r�ršrNrŸr¡r¢r£r¤r¥r�r¦r»rÐrÙrKràr"r"r"r#Ús�  $   ý ý 'l  x [ ÿþ ÿþ ÿþ ÿþ ÿþ ÿþ NnI