
    #	hi                    \   S SK Jr  S SKrS SKrS SKJr  S SKJrJ	r	  S SK
J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        \R"                  R,                  r\R"                  R.                  r\R"                  R0                  r S     SS jjr S     SS jjrg)    )annotationsN)openssl)_serializationhashes)utilsc                  d    \ rS rSr\R
                  SS j5       r\R
                  SS j5       rSrg)DSAParameters   c                    g)z(
Generates and returns a DSAPrivateKey.
N selfs    _/var/www/html/env/lib/python3.13/site-packages/cryptography/hazmat/primitives/asymmetric/dsa.pygenerate_private_key"DSAParameters.generate_private_key           c                    g)z 
Returns a DSAParameterNumbers.
Nr   r   s    r   parameter_numbersDSAParameters.parameter_numbers   r   r   r   N)returnDSAPrivateKey)r   DSAParameterNumbers)	__name__
__module____qualname____firstlineno__abcabstractmethodr   r   __static_attributes__r   r   r   r	   r	      s4     
 	 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\R                          SS j5       rSrg	)r   !   c                    gz&
The bit length of the prime modulus.
Nr   r   s    r   key_sizeDSAPrivateKey.key_size"   r   r   c                    g)z4
The DSAPublicKey associated with this private key.
Nr   r   s    r   
public_keyDSAPrivateKey.public_key)   r   r   c                    g)z<
The DSAParameters object associated with this private key.
Nr   r   s    r   
parametersDSAPrivateKey.parameters/   r   r   c                    g)z
Signs the data
Nr   )r   data	algorithms      r   signDSAPrivateKey.sign5   r   r   c                    g)z
Returns a DSAPrivateNumbers.
Nr   r   s    r   private_numbersDSAPrivateKey.private_numbers?   r   r   c                    gz&
Returns the key serialized as bytes.
Nr   )r   encodingformatencryption_algorithms       r   private_bytesDSAPrivateKey.private_bytesE   r   r   r   Nr   int)r   DSAPublicKeyr   r	   )r/   bytesr0   +asym_utils.Prehashed | hashes.HashAlgorithmr   rA   )r   DSAPrivateNumbers)r8   _serialization.Encodingr9   z_serialization.PrivateFormatr:   z)_serialization.KeySerializationEncryptionr   rA   )r   r   r   r   propertyr   r   r&   r)   r,   r1   r4   r;   r    r   r   r   r   r   !   s      
 	 
 	 
 	 ? 
	  	 
 	) - H	
 
 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?   U   c                    gr%   r   r   s    r   r&   DSAPublicKey.key_sizeV   r   r   c                    g)z;
The DSAParameters object associated with this public key.
Nr   r   s    r   r,   DSAPublicKey.parameters]   r   r   c                    g)z
Returns a DSAPublicNumbers.
Nr   r   s    r   public_numbersDSAPublicKey.public_numbersc   r   r   c                    gr7   r   )r   r8   r9   s      r   public_bytesDSAPublicKey.public_bytesi   r   r   c                    g)z%
Verifies the signature of the data.
Nr   )r   	signaturer/   r0   s       r   verifyDSAPublicKey.verifys   r   r   c                    g)z
Checks equality.
Nr   )r   others     r   __eq__DSAPublicKey.__eq__~   r   r   r   Nr=   r@   )r   DSAPublicNumbers)r8   rD   r9   z_serialization.PublicFormatr   rA   )rS   rA   r/   rA   r0   rB   r   None)rW   objectr   bool)r   r   r   r   rE   r   r   r&   r,   rM   rP   rT   rX   r    r   r   r   r?   r?   U   s      
 	 
 	 
 	) , 
	  	  ?	
 
  	 r   r?   c                b    U S;  a  [        S5      e[        R                  R                  U 5      $ )N)i   i   i   i   z0Key size must be 1024, 2048, 3072, or 4096 bits.)
ValueErrorrust_openssldsagenerate_parameters)r&   backends     r   rb   rb      s0     //KLL//99r   c                8    [        U 5      nUR                  5       $ N)rb   r   )r&   rc   r,   s      r   r   r      s     %X.J**,,r   re   )r&   r>   rc   
typing.Anyr   r	   )r&   r>   rc   rf   r   r   )
__future__r   r   typing"cryptography.hazmat.bindings._rustr   r`   cryptography.hazmat.primitivesr   r   )cryptography.hazmat.primitives.asymmetricr   
asym_utilsABCMetar	   DSAParametersWithNumbersregisterra   r   DSAPrivateKeyWithSerializationr?   DSAPublicKeyWithSerializationrC   rZ   r   rb   r   r   r   r   <module>rr      s+  
 # 
  F A Ickk  )    |''55 6-ckk -` "/    |''55 6-S[[ -` !-    l&&33 4 $$66 ##44 "&&::  *.::&:: *.--&--r   