
    #	h\                    <   S SK Jr  S SKrS SKJr  S SKJr  \R                  R                  r	\R                  R                  r
\R                  R                  r\R                  R                  r " S S\R                  S9r\r\R!                  \R                  R                  5         " S S	\R                  S9r\r\R!                  \R                  R"                  5         " S
 S\R                  S9r\r\R!                  \R                  R&                  5        g)    )annotationsN)openssl)_serializationc                      \ rS rSr\R
                  SS j5       r\R
                        SS j5       r\R
                  S	S j5       rSr	g)
DHParameters   c                    g)z'
Generates and returns a DHPrivateKey.
N selfs    ^/var/www/html/env/lib/python3.13/site-packages/cryptography/hazmat/primitives/asymmetric/dh.pygenerate_private_key!DHParameters.generate_private_key           c                    g)z-
Returns the parameters serialized as bytes.
Nr
   r   encodingformats      r   parameter_bytesDHParameters.parameter_bytes   r   r   c                    g)z
Returns a DHParameterNumbers.
Nr
   r   s    r   parameter_numbersDHParameters.parameter_numbers%   r   r   r
   N)returnDHPrivateKey)r   _serialization.Encodingr   z_serialization.ParameterFormatr   bytes)r   DHParameterNumbers)
__name__
__module____qualname____firstlineno__abcabstractmethodr   r   r   __static_attributes__r
   r   r   r   r      sj     
 	) / 
	  	 r   r   )	metaclassc                      \ rS rSr\\R                  S	S j5       5       r\R                  S
S j5       r\R                  SS j5       r	\R                        SS j5       r
\R                  SS j5       rSrg)DHPublicKey0   c                    gz&
The bit length of the prime modulus.
Nr
   r   s    r   key_sizeDHPublicKey.key_size1   r   r   c                    g)z:
The DHParameters object associated with this public key.
Nr
   r   s    r   
parametersDHPublicKey.parameters8   r   r   c                    g)z
Returns a DHPublicNumbers.
Nr
   r   s    r   public_numbersDHPublicKey.public_numbers>   r   r   c                    gz&
Returns the key serialized as bytes.
Nr
   r   s      r   public_bytesDHPublicKey.public_bytesD   r   r   c                    g)z
Checks equality.
Nr
   )r   others     r   __eq__DHPublicKey.__eq__N   r   r   r
   Nr   intr   r   )r   DHPublicNumbers)r   r   r   z_serialization.PublicFormatr   r   )r:   objectr   bool)r    r!   r"   r#   propertyr$   r%   r-   r0   r3   r7   r;   r&   r
   r   r   r)   r)   0   s      
 	 
 	 
 	) , 
	  	 r   r)   c                     \ rS rSr\\R                  S
S j5       5       r\R                  SS j5       r\R                  SS j5       r	\R                  SS j5       r
\R                  SS j5       r\R                          SS j5       rSrg	)r   Y   c                    gr,   r
   r   s    r   r-   DHPrivateKey.key_sizeZ   r   r   c                    g)z3
The DHPublicKey associated with this private key.
Nr
   r   s    r   
public_keyDHPrivateKey.public_keya   r   r   c                    g)z;
The DHParameters object associated with this private key.
Nr
   r   s    r   r0   DHPrivateKey.parametersg   r   r   c                    g)zV
Given peer's DHPublicKey, carry out the key exchange and
return shared key as bytes.
Nr
   )r   peer_public_keys     r   exchangeDHPrivateKey.exchangem   r   r   c                    g)z
Returns a DHPrivateNumbers.
Nr
   r   s    r   private_numbersDHPrivateKey.private_numberst   r   r   c                    gr6   r
   )r   r   r   encryption_algorithms       r   private_bytesDHPrivateKey.private_bytesz   r   r   r
   Nr=   )r   r)   r?   )rN   r)   r   r   )r   DHPrivateNumbers)r   r   r   z_serialization.PrivateFormatrU   z)_serialization.KeySerializationEncryptionr   r   )r    r!   r"   r#   rC   r$   r%   r-   rI   r0   rO   rR   rV   r&   r
   r   r   r   r   Y   s      
 	 
 	 
 	  	 
 	) - H	
 
 r   r   )
__future__r   r$   "cryptography.hazmat.bindings._rustr   rust_opensslcryptography.hazmat.primitivesr   dhgenerate_parametersrX   r@   r   ABCMetar   DHParametersWithSerializationregisterr)   DHPublicKeyWithSerializationr   DHPrivateKeyWithSerializationr
   r   r   <module>rd      s   
 # 
 F 9"oo99   ??33 //11!__77 S[[ 0 !-    loo22 3"CKK "J  +    \__00 1*S[[ *Z !-    loo22 3r   