+
    i'  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 ^ RIHt ^ RIHtHtHtHt ^ R	IHt ^ R
IHt ^ RIHtHt  ! R R4      t]! 4       tR# )i    )annotations)openssl)binding)hashes)AsymmetricPadding)ec)utils)MGF1OAEPPSSPKCS1v15)CipherAlgorithm)AES)CBCModec                  s<   ] tR t^tRtRt]3t]P                  ]P                  ]P                  ]P                  ]P                  ]P                  ]P                  ]P                   ]P"                  ]P$                  ]P&                  ]P(                  3t]P.                  ]P0                  ]P2                  ]P4                  3tRtRt^R,          tRt^],          t R R lt!R R lt"R	 R
 lt#R R lt$R R lt%R R lt&R R lt'R R lt(R R lt)R R lt*R R lt+R R lt,R R lt-R R  lt.R! R" lt/R# R$ lt0R% R& lt1R' R( lt2R) R* lt3R+ R, lt4R- R. lt5R/ R0 lt6R1 R2 lt7R3 R4 lt8R5 R6 lt9R7 R8 lt:R9 R: lt;R; R< lt<R= R> lt=R? R@ lt>RA RB lt?RC RD lt@REtARF# )GBackendz!
OpenSSL API binding interfaces.
r   i   i  c                   V ^8  d   QhRR/#    returnNone Zformat   "S/usr/lib64/python3.14/site-packages/cryptography/hazmat/backends/openssl/backend.py__annotate__Backend.__annotate__E   s     < <$ <    c                	s    \         P                  ! 4       V n        V P                  P                  V n        V P                  P
                  V n        \        P                  ! 4       V n	        R # N)
r   ZBinding_bindingZffi_ffiZlib_librust_opensslis_fips_enabled_fips_enabledself   &r   __init__ZBackend.__init__E   sC    )MM%%	MM%%	)99;r   c               r   r   r   Zstrr   r   r   r   r   r   K   s     
 
# 
r   c                	sf    R V P                  4        RV P                   R\        P                   R2# )z<OpenSSLBackend(version: z, FIPS: z
, Legacy: z)>)openssl_version_textr"   r    Z_legacy_provider_loadedr#   r%   r   __repr__ZBackend.__repr__K   sC    '(A(A(C'D E''( )#;;<B@	
r   c                    V ^8  d   QhRRRR/# )r   okboolr   r   r   r   r   r   r   r   R   s     + + +$ +r   c                	s.    \         P                  ! V4      # r   )r   Z_openssl_assert)r$   r+      &&r   openssl_assertZBackend.openssl_assertR   s    &&r**r   c               r   r   r   r   r   r   r   r   U   s     < <d <r   c                	s    \         P                  ! \         P                  4       \         P                  ! 4       '       g   Q h\         P                  ! 4       V n        R # r   )r    Zenable_fipsZ
_providersr!   r"   r#   r%   r   _enable_fipsZBackend._enable_fipsU   s>     	  !8!89++----)99;r   c               r   r'   r   r   r   r   r   r   \   s     3 3c 3r   c                ,    \         P                  ! 4       # )z
Friendly string name of the loaded OpenSSL library. This is not
necessarily the same version as it was compiled against.

Example: OpenSSL 3.2.1 30 Jan 2024
)r    r(   r#   r%   r   r(   ZBackend.openssl_version_text\   s     0022r   c               r   )r   r   Zintr   r   r   r   r   r   e   s     . . .r   c                	r0   r   )r    Zopenssl_versionr#   r%   r   openssl_version_numberZBackend.openssl_version_numbere   s    ++--r   c               r*   r   	algorithmzhashes.HashAlgorithmr   r,   r   r   r   r   r   r   h   s     = =(< = =r   c                	    V P                   '       d   \        WP                  4      '       g   R # \        P                  P                  V4      # F)r"   
isinstance_fips_hashesr    r   hash_supportedr$   r3   r-   r   r8   ZBackend.hash_supportedh   s8    j<M<M&N&N""11)<<r   c               r*   r2   r   r   r   r   r   r   n   s     . .-.	.r   c                	s    V P                   '       d#   \        V\        P                  4      '       d   R # V P	                  V4      # r5   )r"   r6   r   SHA1r8   r9   r-   r   signature_hash_supportedZ Backend.signature_hash_supportedn   s4    
 *Y"D"D""9--r   c               r   r   r   r,   r   r   r   r   r   r   w   s     > >$ >r   c                	r    V P                   '       d   R # \        \        P                  P                  R4      # FZderive)r"   hasattrr    kdfZScryptr#   r%   r   scrypt_supportedZBackend.scrypt_supportedw   s*    <++22H==r   c               r   r<   r   r   r   r   r   r   }   s     @ @$ @r   c                	r=   r>   )r"   r?   r    r@   ZArgon2idr#   r%   r   argon2_supportedZBackend.argon2_supported}   s*    <++44h??r   c               r*   r2   r   r   r   r   r   r      s     . .(< . .r   c           
     	s   V P                   '       d#   \        V\        P                  4      '       d   R # \        P
                  '       dv   \        V\        P                  \        P                  \        P                  \        P                  \        P                  \        P                  \        P                  34      # V P                  V4      # )T)r"   r6   r   r:   r    CRYPTOGRAPHY_IS_AWSLCSHA224SHA256SHA384SHA512
SHA512_224
SHA512_256r8   r9   r-   r   hmac_supportedZBackend.hmac_supported   s    *Y"D"D---KKMMMMMMMM%%%%  ""9--r   c               $    V ^8  d   QhRRRRRR/# )r   cipherr   moder   r   r,   r   r   r   r   r   r      s&     C C Cd Ct Cr   c                	s    V P                   '       d   \        WP                  4      '       g   R # \        P                  P                  W4      # r5   )r"   r6   _fips_ciphersr    Zcipherscipher_supported)r$   rL   rM      &&&r   rO   ZBackend.cipher_supported   s;     f&8&899##44VBBr   c               r*   r2   r   r   r   r   r   r      s     . ./C . .r   c                	s$    V P                  V4      # r   )rJ   r9   r-   r   pbkdf2_hmac_supportedZBackend.pbkdf2_hmac_supported   s    ""9--r   c               r   )r   r   zlist[rust_openssl.OpenSSLError]r   r   r   r   r   r      s     2 2!@ 2r   c                	r0   r   )r    Zcapture_error_stackr#   r%   r   _consume_errorsZBackend._consume_errors   s    //11r   c               r*   r2   r   r   r   r   r   r      s     
 
.B 
t 
r   c                	s   V P                   '       d#   \        V\        P                  4      '       d   R # \        V\        P                  \        P                  \        P
                  \        P                  \        P                  34      # r5   )r"   r6   r   r:   rD   rE   rF   rG   r9   r-   r   _oaep_hash_supportedZBackend._oaep_hash_supported   sY    *Y"D"D	
 		
r   c               r*   r   paddingr   r   r,   r   r   r   r   r   r      s      -> 4 r   c                	sN   \        V\        4      '       d   R # \        V\        4      '       dy   \        VP                  \        4      '       dY   V P
                  '       d"   VP                  \        P                  8w  d   R# V P                  VP                  P                  4      # \        V\        4      '       di   \        VP                  \        4      '       dI   V P                  VP                  P                  4      ;'       d    V P                  VP                  4      # R# )TF)r6   r
   r	   Z_mgfr   r"   Z_salt_lengthZDIGEST_LENGTHr8   Z
_algorithmr   rS   r$   rU   r-   r   rsa_padding_supportedZBackend.rsa_padding_supported   s    gx((%%*W\\4*H*H """((C,=,==&&w||'>'>??&&:gllD+I+I,,'' @ @++G,>,>?@ r   c               r*   rT   r   r   r   r   r   r      s     7 70A 7d 7r   c                	sx    V P                   '       d   \        V\        4      '       d   R # V P                  V4      # r5   )r"   r6   r
   rW   rV   r-   r   rsa_encryption_supportedZ Backend.rsa_encryption_supported   s.    *Wh"?"?--g66r   c               r   r<   r   r   r   r   r   r      s     
 
t 
r   c                	s^    \         P                  '       * ;'       d    V P                  '       * # r   )r    CRYPTOGRAPHY_IS_BORINGSSLr"   r#   r%   r   dsa_supportedZBackend.dsa_supported   s)    666 ' '&&&	
r   c               r*   r2   r   r   r   r   r   r      s     8 8,@ 8T 8r   c                	sT    V P                  4       '       g   R # V P                  V4      # r5   )rZ   r;   r9   r-   r   dsa_hash_supportedZBackend.dsa_hash_supported   s%    !!##,,Y77r   c               r   r<   r   r   r   r   r   r      s     
 
T 
r   c                	sZ    V P                  V\        R VP                  ,          4      4      # )s    )rO   r   Z
block_sizer9   r-   r   cmac_algorithm_supportedZ Backend.cmac_algorithm_supported   s*    $$s7Y%9%99:
 	
r   c               r*   )r   curveec.EllipticCurver   r,   r   r   r   r   r   r      s     6 6.> 64 6r   c                	r4   r5   )r"   r6   _fips_ecdh_curvesr    r   Zcurve_supported)r$   r]   r-   r   elliptic_curve_supportedZ Backend.elliptic_curve_supported   s=    j))'
 '
 ..u55r   c               rK   )r   signature_algorithmz"ec.EllipticCurveSignatureAlgorithmr]   r^   r   r,   r   r   r   r   r   r      s(     
 
?
  
 
	
r   c                	s   \        V\        P                  4      '       g   R # V P                  V4      ;'       dH    \        VP                  \
        P                  4      ;'       g    V P                  VP                  4      # r5   )r6   r   ZECDSAr`   r3   
asym_utilsZ	Prehashedr8   )r$   ra   r]   rP   r   ,elliptic_curve_signature_algorithm_supportedZ4Backend.elliptic_curve_signature_algorithm_supported   sn     -rxx88,,U3 
 
*44j6J6JK B B""#6#@#@A	
r   c               rK   )r   r3   zec.ECDHr]   r^   r   r,   r   r   r   r   r   r      s$     
 
 
)9
	
r   c                	sh    V P                  V4      ;'       d    \        V\        P                  4      # r   )r`   r6   r   ZECDH)r$   r3   r]   rP   r   +elliptic_curve_exchange_algorithm_supportedZ3Backend.elliptic_curve_exchange_algorithm_supported   s1     ,,U3 
 

rww9
 	
r   c               r   r<   r   r   r   r   r   r      s     
 
d 
r   c                	f    \         P                  '       * ;'       d    \         P                  '       * # r   r    rY   rC   r#   r%   r   dh_supportedZBackend.dh_supported   )    666 7 7 666	
r   c               r   r<   r   r   r   r   r   r     s     < < <r   c                	s4    V P                   P                  ^8H  # )i   )r   ZCryptography_HAS_EVP_PKEY_DHXr#   r%   r   dh_x942_serialization_supportedZ'Backend.dh_x942_serialization_supported  s    yy66!;;r   c               r   r<   r   r   r   r   r   r     s     & &$ &r   c                	$    V P                   '       * # r   r"   r#   r%   r   x25519_supportedZBackend.x25519_supported      %%%%r   c               r   r<   r   r   r   r   r   r   	  s     
 
 
r   c                	    V P                   '       d   R # \        P                  '       * ;'       d3    \        P                  '       * ;'       d    \        P                  '       * # r5   r"   r    ZCRYPTOGRAPHY_IS_LIBRESSLrY   rC   r#   r%   r   x448_supportedZBackend.x448_supported	  N    555 7 7 :::7 7 666	
r   c               r   r<   r   r   r   r   r   r     s     & &4 &r   c                	rj   r   rk   r#   r%   r   ed25519_supportedZBackend.ed25519_supported  rm   r   c               r   r<   r   r   r   r   r   r     s     
 
 
r   c                	rn   r5   ro   r#   r%   r   ed448_supportedZBackend.ed448_supported  rq   r   c               r   r<   r   r   r   r   r   r     s     
 
t 
r   c                	sT    \         P                  ;'       d    V P                  '       * # r   )r    Z#CRYPTOGRAPHY_OPENSSL_320_OR_GREATERr"   r#   r%   r   ecdsa_deterministic_supportedZ%Backend.ecdsa_deterministic_supported  s&    << ' '&&&	
r   c               r   r<   r   r   r   r   r   r   $  s     & &D &r   c                	rj   r   rk   r#   r%   r   poly1305_supportedZBackend.poly1305_supported$  rm   r   c               r   r<   r   r   r   r   r   r   '  s     
 
 
r   c                	re   r   rf   r#   r%   r   pkcs7_supportedZBackend.pkcs7_supported'  rh   r   )r   r   r"   r   N)BZ__name__Z
__module__Z__qualname__Z__firstlineno__Z__doc__Znamer   rN   r   rD   rE   rF   rG   rH   rI   ZSHA3_224ZSHA3_256ZSHA3_384ZSHA3_512ZSHAKE128ZSHAKE256r7   r   Z	SECP224R1Z	SECP256R1Z	SECP384R1Z	SECP521R1r_   Z_fips_rsa_min_key_sizeZ_fips_rsa_min_public_exponentZ_fips_dsa_min_modulusZ_fips_dh_min_key_sizeZ_fips_dh_min_modulusr&   r)   r.   r/   r(   r1   r8   r;   rA   rB   rJ   rO   rQ   rR   rS   rW   rX   rZ   r[   r\   r`   rc   rd   rg   ri   rl   rp   rr   rs   rt   ru   rv   Z__static_attributes__r   r   r   r   r      so    D FM 	L 	


	 "$)!I  55<
+<3.=.>@.&C.2
,7
8


6


<&
&

&
 
r   r   N)Z
__future__r    Z"cryptography.hazmat.bindings._rustr   r    Z$cryptography.hazmat.bindings.opensslr   Zcryptography.hazmat.primitivesr   Z*cryptography.hazmat.primitives._asymmetricr   Z)cryptography.hazmat.primitives.asymmetricr   r   rb   Z1cryptography.hazmat.primitives.asymmetric.paddingr   r   r	   r
   Z&cryptography.hazmat.primitives.ciphersr   Z1cryptography.hazmat.primitives.ciphers.algorithmsr   Z,cryptography.hazmat.primitives.ciphers.modesr   r   r   Zbackendr   r   r   <module>rw      sK   
 # F 8 1 H 8 I L
 L
^ )r   