o
    bp:                     @   s  U d dl Z d dlmZ G dd deZG dd deZG dd deZG d	d
 d
eZG dd deZG dd deZ	i e	j
e e	je e	je e	je e	je e	je e	je e	je e	je e	je e	je e	je e	je e	je e	je e	jde	j de	j!de	j"de	j#diZ$e j%ee j&ej' f e(d< G dd deZ)G dd deZ*G dd deZ+G dd deZ,G dd deZ-i ej.dej/dej0dej1dej2dej3dej4d ej5d!ej6d"ej7d#ej8d$ej9d%ej:d&ej;d'ej<d(ej=d)ej>d*i ej?d+ej@d,ejAd-ejBd.ejCd/ejDd0ejEd1ejFd2ejGd3ejHd4ejId5e	j
d6e	jd7e	jd8e	jd9e	jd:e	jd;i e	jJd<e	jd=e	jd>e	jd?e	jd@e	jdAe	jdBe	jdCe	jdDe	jdEe	j dFe	j!dGe	j"dHe	j#dIe)jKdJe)jLdKe)jMdLi e)jNdMe)jOdNe)jPdOe)jQdPe)jRdQejSdRejTdSejUdTejVdUejWdVejXdWejYdXejZdXej[dYej\dZej]d[ej^d\i ej_d]ej`d^ejad_ejbd`ejcdaejddbejedcejfddejgdeejhdfejidgejjdhejkdiejldjejmdkejndle*jodme*jpdne+jqdoe,jrdpe,jsdqejtdre-judsiZvdS )t    N)hashesc                   @   s   e Zd ZdeddfddZdejdefddZdejdefd	d
Z	defddZ
defddZedefddZedefddZdS )ObjectIdentifierdotted_stringreturnNc              	   C   s   || _ | j d}g }|D ](}zt|d}W n ty$   td| j  w |dk r0td| j  || qt|dk rCtd| j  |d dkrPtd| j  |d dk rc|d	 d
kretd| j  d S d S )N.
   z%Malformed OID: %s (non-integer nodes)r   z*Malformed OID: %s (negative-integer nodes)   z0Malformed OID: %s (insufficient number of nodes)z2Malformed OID: %s (first node outside valid range)   (   z3Malformed OID: %s (second node outside valid range))_dotted_stringsplitint
ValueErrorappendlen)selfr   nodesZintnodesnodeZ
node_value r   W/var/www/secure340b-portal/env/lib/python3.10/site-packages/cryptography/hazmat/_oid.py__init__   sN   zObjectIdentifier.__init__otherc                 C   s   t |tstS | j|jkS N)
isinstancer   NotImplementedr   r   r   r   r   r   __eq__5   s   
zObjectIdentifier.__eq__c                 C   s
   | |k S r   r   r   r   r   r   __ne__;      
zObjectIdentifier.__ne__c                 C   s   d | j| jS )Nz#<ObjectIdentifier(oid={}, name={})>)formatr   _namer   r   r   r   __repr__>   s   zObjectIdentifier.__repr__c                 C   s
   t | jS r   )hashr   r!   r   r   r   __hash__C   r   zObjectIdentifier.__hash__c                 C   s   t | dS )NzUnknown OID)
_OID_NAMESgetr!   r   r   r   r    F   s   zObjectIdentifier._namec                 C   s   | j S r   )r   r!   r   r   r   r   J   s   zObjectIdentifier.dotted_string)__name__
__module____qualname__strr   typingAnyboolr   r   r"   r   r$   propertyr    r   r   r   r   r   r   
   s    *r   c                   @   s   e Zd ZedZedZedZedZedZedZ	edZ
edZed	Zed
ZedZedZedZedZedZedZedZedZedZedZedZedZedZedZedZdS )ExtensionOIDz2.5.29.9z	2.5.29.14z	2.5.29.15z	2.5.29.17z	2.5.29.18z	2.5.29.19z	2.5.29.30z	2.5.29.31z	2.5.29.32z	2.5.29.33z	2.5.29.35z	2.5.29.36z	2.5.29.37z	2.5.29.46z	2.5.29.54z	2.5.29.28z1.3.6.1.5.5.7.1.1z1.3.6.1.5.5.7.1.11z1.3.6.1.5.5.7.48.1.5z1.3.6.1.5.5.7.1.24z	2.5.29.20z	2.5.29.27z1.3.6.1.4.1.11129.2.4.2z1.3.6.1.4.1.11129.2.4.3z1.3.6.1.4.1.11129.2.4.5N)r'   r(   r)   r   SUBJECT_DIRECTORY_ATTRIBUTESSUBJECT_KEY_IDENTIFIER	KEY_USAGESUBJECT_ALTERNATIVE_NAMEISSUER_ALTERNATIVE_NAMEBASIC_CONSTRAINTSNAME_CONSTRAINTSCRL_DISTRIBUTION_POINTSCERTIFICATE_POLICIESPOLICY_MAPPINGSAUTHORITY_KEY_IDENTIFIERPOLICY_CONSTRAINTSEXTENDED_KEY_USAGEFRESHEST_CRLINHIBIT_ANY_POLICYISSUING_DISTRIBUTION_POINTAUTHORITY_INFORMATION_ACCESSSUBJECT_INFORMATION_ACCESSOCSP_NO_CHECKTLS_FEATURE
CRL_NUMBERDELTA_CRL_INDICATOR%PRECERT_SIGNED_CERTIFICATE_TIMESTAMPSPRECERT_POISONSIGNED_CERTIFICATE_TIMESTAMPSr   r   r   r   r/   O   s8    r/   c                   @      e Zd ZedZdS )OCSPExtensionOIDz1.3.6.1.5.5.7.48.1.2N)r'   r(   r)   r   NONCEr   r   r   r   rJ   m       rJ   c                   @   $   e Zd ZedZedZedZdS )CRLEntryExtensionOIDz	2.5.29.29z	2.5.29.21z	2.5.29.24N)r'   r(   r)   r   CERTIFICATE_ISSUER
CRL_REASONINVALIDITY_DATEr   r   r   r   rN   q       rN   c                   @   s   e Zd ZedZedZedZedZedZedZ	edZ
edZed	Zed
ZedZedZedZedZedZedZedZedZedZedZedZedZedZedZedZedZedZedZdS )NameOIDz2.5.4.3z2.5.4.6z2.5.4.7z2.5.4.8z2.5.4.9z2.5.4.10z2.5.4.11z2.5.4.5z2.5.4.4z2.5.4.42z2.5.4.12z2.5.4.44z2.5.4.45z2.5.4.46z2.5.4.65z0.9.2342.19200300.100.1.1z0.9.2342.19200300.100.1.25z1.2.840.113549.1.9.1z1.3.6.1.4.1.311.60.2.1.3z1.3.6.1.4.1.311.60.2.1.1z1.3.6.1.4.1.311.60.2.1.2z2.5.4.15z2.5.4.16z2.5.4.17z1.2.643.3.131.1.1z1.2.643.100.1z1.2.643.100.31.2.840.113549.1.9.2N) r'   r(   r)   r   COMMON_NAMECOUNTRY_NAMELOCALITY_NAMESTATE_OR_PROVINCE_NAMESTREET_ADDRESSORGANIZATION_NAMEORGANIZATIONAL_UNIT_NAMESERIAL_NUMBERSURNAME
GIVEN_NAMETITLEGENERATION_QUALIFIERX500_UNIQUE_IDENTIFIERDN_QUALIFIER	PSEUDONYMUSER_IDDOMAIN_COMPONENTEMAIL_ADDRESSJURISDICTION_COUNTRY_NAMEJURISDICTION_LOCALITY_NAME#JURISDICTION_STATE_OR_PROVINCE_NAMEBUSINESS_CATEGORYPOSTAL_ADDRESSPOSTAL_CODEINNOGRNSNILSUNSTRUCTURED_NAMEr   r   r   r   rS   w   s>    rS   c                   @   s   e Zd ZedZedZedZedZedZedZ	edZ
edZed	Zed
ZedZedZedZedZedZedZedZedZedZedZedZdS )SignatureAlgorithmOIDz1.2.840.113549.1.1.4z1.2.840.113549.1.1.5z1.3.14.3.2.29z1.2.840.113549.1.1.14z1.2.840.113549.1.1.11z1.2.840.113549.1.1.12z1.2.840.113549.1.1.13z1.2.840.113549.1.1.10z1.2.840.10045.4.1z1.2.840.10045.4.3.1z1.2.840.10045.4.3.2z1.2.840.10045.4.3.3z1.2.840.10045.4.3.4z1.2.840.10040.4.3z2.16.840.1.101.3.4.3.1z2.16.840.1.101.3.4.3.2z1.3.101.112z1.3.101.113z1.2.643.2.2.3z1.2.643.7.1.1.3.2z1.2.643.7.1.1.3.3N)r'   r(   r)   r   RSA_WITH_MD5RSA_WITH_SHA1_RSA_WITH_SHA1RSA_WITH_SHA224RSA_WITH_SHA256RSA_WITH_SHA384RSA_WITH_SHA512
RSASSA_PSSECDSA_WITH_SHA1ECDSA_WITH_SHA224ECDSA_WITH_SHA256ECDSA_WITH_SHA384ECDSA_WITH_SHA512DSA_WITH_SHA1DSA_WITH_SHA224DSA_WITH_SHA256ED25519ED448GOSTR3411_94_WITH_3410_2001!GOSTR3410_2012_WITH_3411_2012_256!GOSTR3410_2012_WITH_3411_2012_512r   r   r   r   rq      s,    rq   _SIG_OIDS_TO_HASHc                   @   sT   e Zd ZedZedZedZedZedZedZ	edZ
edZed	Zd
S )ExtendedKeyUsageOIDz1.3.6.1.5.5.7.3.1z1.3.6.1.5.5.7.3.2z1.3.6.1.5.5.7.3.3z1.3.6.1.5.5.7.3.4z1.3.6.1.5.5.7.3.8z1.3.6.1.5.5.7.3.9z2.5.29.37.0z1.3.6.1.4.1.311.20.2.2z1.3.6.1.5.2.3.5N)r'   r(   r)   r   SERVER_AUTHCLIENT_AUTHCODE_SIGNINGEMAIL_PROTECTIONTIME_STAMPINGOCSP_SIGNINGZANY_EXTENDED_KEY_USAGESMARTCARD_LOGONKERBEROS_PKINIT_KDCr   r   r   r   r      s    r   c                   @      e Zd ZedZedZdS )AuthorityInformationAccessOIDz1.3.6.1.5.5.7.48.2z1.3.6.1.5.5.7.48.1N)r'   r(   r)   r   
CA_ISSUERSOCSPr   r   r   r   r          r   c                   @   rI   )SubjectInformationAccessOIDz1.3.6.1.5.5.7.48.5N)r'   r(   r)   r   CA_REPOSITORYr   r   r   r   r      rL   r   c                   @   rM   )CertificatePoliciesOIDz1.3.6.1.5.5.7.2.1z1.3.6.1.5.5.7.2.2z2.5.29.32.0N)r'   r(   r)   r   CPS_QUALIFIERCPS_USER_NOTICEZ
ANY_POLICYr   r   r   r   r      rR   r   c                   @   r   )AttributeOIDz1.2.840.113549.1.9.7rT   N)r'   r(   r)   r   CHALLENGE_PASSWORDrp   r   r   r   r   r      r   r   
commonNameZcountryNameZlocalityNameZstateOrProvinceNameZstreetAddressZorganizationNameZorganizationalUnitNameZserialNumberZsurnameZ	givenNametitleZgenerationQualifierZx500UniqueIdentifierZdnQualifierZ	pseudonymZuserIDZdomainComponentZemailAddressZjurisdictionCountryNameZjurisdictionLocalityNameZjurisdictionStateOrProvinceNameZbusinessCategoryZpostalAddressZ
postalCoderm   rn   ro   ZunstructuredNameZmd5WithRSAEncryptionZsha1WithRSAEncryptionZsha224WithRSAEncryptionZsha256WithRSAEncryptionZsha384WithRSAEncryptionZsha512WithRSAEncryptionz
RSASSA-PSSzecdsa-with-SHA1zecdsa-with-SHA224zecdsa-with-SHA256zecdsa-with-SHA384zecdsa-with-SHA512zdsa-with-sha1zdsa-with-sha224zdsa-with-sha256Zed25519Zed448z&GOST R 34.11-94 with GOST R 34.10-2001z2GOST R 34.10-2012 with GOST R 34.11-2012 (256 bit)z2GOST R 34.10-2012 with GOST R 34.11-2012 (512 bit)Z
serverAuthZ
clientAuthZcodeSigningZemailProtectionZtimeStampingZOCSPSigningZmsSmartcardLoginZ	pkInitKDCZsubjectDirectoryAttributesZsubjectKeyIdentifierZkeyUsagesubjectAltNameZissuerAltNameZbasicConstraintsZsignedCertificateTimestampListZctPoisonZ	cRLReasonZinvalidityDateZcertificateIssuerZnameConstraintsZcRLDistributionPointsZcertificatePoliciesZpolicyMappingsZauthorityKeyIdentifierZpolicyConstraintsZextendedKeyUsageZfreshestCRLZinhibitAnyPolicyZissuingDistributionPointZauthorityInfoAccessZsubjectInfoAccessZOCSPNoCheckZ	cRLNumberZdeltaCRLIndicatorZ
TLSFeaturer   Z	caIssuersZcaRepositoryz	id-qt-cpszid-qt-unoticeZ	OCSPNonceZchallengePassword)wr+   Zcryptography.hazmat.primitivesr   objectr   r/   rJ   rN   rS   rq   rr   MD5rs   SHA1rt   ru   SHA224rv   SHA256rw   SHA384rx   SHA512rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   r   DictOptionalZHashAlgorithm__annotations__r   r   r   r   r   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   ry   r   r   r   r   r   r   r   r   r0   r1   r2   r3   r4   r5   rF   rH   rG   rP   rQ   rO   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rD   rE   rC   r   r   r   r   r   rK   r   r%   r   r   r   r   <module>   s  
E!








	






	
 !"#$%&'()*+,-./0369:;<=>?@ABCDEFGJMNOPQRSTUVWXYZ[\]^_`ab
