+
     h  c                  s    ^ RI Ht ^ RIHt ^ RIHt ^ RIHt ^RI	H
t
 ^RIHtHtHtHtHtHtHt ]P$                  ! R4      tR t ! R	 R
]4      tR# )i    )annotations)x509)InvalidSignature)default_backend)CoseKey)AttestationAttestationResultAttestationTypeInvalidDatar   _validate_cert_commoncatch_builtinsz1.3.6.1.4.1.45724.1.1.4c                s   \        V 4       V P                  P                  \        P                  P
                  4      pV'       g   \        R 4      hV P                  P                  \        P                  P                  4      pV'       g   \        R4      hV P                  P                  \        P                  P                  4      pV'       g   \        R4      hV^ ,          pVP                  R8w  d   \        R4      hV P                  P                  \        P                  P                  4      pV'       g   \        R4      h V P                  P                  \        4      pVP                  '       d   \        R4      hVP                  P                  R,          pW8w  d   \        R4      hR#   \        P                   d     R# i ; i)	zSubject must have C set!zSubject must have O set!z3Subject must have OU = "Authenticator Attestation"!zAuthenticator AttestationzSubject must have CN set!z/AAGUID extension must not be marked as critical:i   NNzDAAGUID in Authenticator data does not match attestation certificate!N)r	   ZsubjectZget_attributes_for_oidr   ZNameOIDZCOUNTRY_NAMEr   ZORGANIZATION_NAMEZORGANIZATIONAL_UNIT_NAMEZvalueZCOMMON_NAMEZ
extensionsZget_extension_for_oid
OID_AAGUIDZcriticalZExtensionNotFound)	certaaguidZcZoZousZouZcnZextZ
ext_aaguids	   &&       =/usr/lib/python3.14/site-packages/fido2/attestation/packed.py_validate_packed_certr   0   sU   $++DLL,E,EFA455++DLL,J,JKA455
,,
-
-dll.S.S
TCOPP	QB	xx..OPP		,	,T\\-E-E	FB566
oo33J?<<<OPPYY__R(
V    !! s   
0F6 ;9F6 6GGc                  s*    ] tR t^RtRt]R 4       tRtR# )PackedAttestationZpackedc                	s   R V9   d   \        R4      hVR,          pVP                  R4      pV'       d   \        P                  ! V^ ,          \	        4       4      p\        WbP                  P                  4       \        P                  ! V4      P                  VP                  4       4      p\        P                  pMV\        P                  ! VP                  P                  4      pVP                  V8w  d   \!        R4      h\        P"                  p VP%                  W#,           VR,          4       \'        Y;'       g    . 4      #   \(         d    \+        4       hi ; i)Z
ecdaaKeyIdzECDAA not implementedalgx5czWrong algorithm of public key!Zsig)ZNotImplementedErrorZgetr   Zload_der_x509_certificater   r   Zcredential_datar   r   Zfor_algZfrom_cryptography_keyZ
public_keyr   ZBASICZparseZ	ALGORITHMr   ZSELFverifyr   _InvalidSignaturer   )	ZselfZ	statementZ	auth_dataZclient_data_hashr   r   r   Zpub_keyZatt_types	   &&&&     r   r   ZPackedAttestation.verifyU   s   9$%&=>>mmE"11#a&/:KLD!$(A(A(H(HIooc*@@ARSG&,,HmmI$=$=$H$HIG  C'!"BCC&++H	%NN9759IJ$Xyyb99  	%"$$	%s   3E	 	E N)Z__name__Z
__module__Z__qualname__Z__firstlineno__ZFORMATr
   r   Z__static_attributes__r       r   r   r   R   s    F% %r   r   N)Z
__future__r    Zcryptographyr   Zcryptography.exceptionsr   r   Zcryptography.hazmat.backendsr   Zcoser   Zbaser   r   r   r   r	   r
   ZObjectIdentifierr   r   r   r   r   r   <module>r      sJ   8 #  I 8    ""#<=
D% %r   