
    M j                    h   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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&                  R0                  r\R&                  R2                  r\R&                  R4                  r S     SS jjr S     SS jjrg)    )annotationsN)openssl)_serializationhashes)utils)Bufferc                  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    ~/root/GenerationalWealth/GenerationalWealth/venv/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                  z   \ 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\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.parameters0   r   r   c                    g)z
Signs the data
Nr   )r   data	algorithms      r   signDSAPrivateKey.sign6   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_bytesF   r   r   c                    gz
Returns a copy.
Nr   r   s    r   __copy__DSAPrivateKey.__copy__Q   r   r   c                    gz
Returns a deep copy.
Nr   r   memos     r   __deepcopy__DSAPrivateKey.__deepcopy__W   r   r   r   Nr   intr   DSAPublicKeyr   r
   )r1   r   r2   +asym_utils.Prehashed | hashes.HashAlgorithmr   bytes)r   DSAPrivateNumbers)r:   _serialization.Encodingr;   z_serialization.PrivateFormatr<   z)_serialization.KeySerializationEncryptionr   rO   r   )rF   dictr   r   )r   r   r   r   propertyr    r!   r(   r+   r.   r3   r6   r=   rA   rG   r"   r   r   r   r   r   "   s     
 	 
 	 
 	 ? 
	  	 
 	) - H	
 
  	 
 	 r   r   c                  z   \ 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\R                  SS j5       r\R                  SS	 j5       rS
rg)rL   b   c                    gr'   r   r   s    r   r(   DSAPublicKey.key_sizec   r   r   c                    g)z;
The DSAParameters object associated with this public key.
Nr   r   s    r   r.   DSAPublicKey.parametersj   r   r   c                    g)z
Returns a DSAPublicNumbers.
Nr   r   s    r   public_numbersDSAPublicKey.public_numbersp   r   r   c                    gr9   r   )r   r:   r;   s      r   public_bytesDSAPublicKey.public_bytesv   r   r   c                    g)z%
Verifies the signature of the data.
Nr   )r   	signaturer1   r2   s       r   verifyDSAPublicKey.verify   r   r   c                    g)z
Checks equality.
Nr   )r   others     r   __eq__DSAPublicKey.__eq__   r   r   c                    gr@   r   r   s    r   rA   DSAPublicKey.__copy__   r   r   c                    grD   r   rE   s     r   rG   DSAPublicKey.__deepcopy__   r   r   r   NrI   rM   )r   DSAPublicNumbers)r:   rQ   r;   z_serialization.PublicFormatr   rO   )ra   r   r1   r   r2   rN   r   None)re   objectr   boolrK   )rF   rR   r   rL   )r   r   r   r   rS   r    r!   r(   r.   r[   r^   rb   rf   rA   rG   r"   r   r   r   rL   rL   b   s     
 	 
 	 
 	) , 
	  	  ?	
 
  	 
 	 
 	 r   rL   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   rt   rt      s0     //KLL//99r   c                8    [        U 5      nUR                  5       $ N)rt   r   )r(   ru   r.   s      r   r   r      s     %X.J**,,r   rw   )r(   rJ   ru   
typing.Anyr   r
   )r(   rJ   ru   rx   r   r   )
__future__r   r    typing"cryptography.hazmat.bindings._rustr   rr   cryptography.hazmat.primitivesr   r   )cryptography.hazmat.primitives.asymmetricr   
asym_utilscryptography.utilsr   ABCMetar
   DSAParametersWithNumbersregisterrs   r   DSAPrivateKeyWithSerializationrL   DSAPublicKeyWithSerializationrP   rl   r   rt   r   r   r   r   <module>r      s.  
 # 
  F A I %ckk  )    |''55 69ckk 9x "/    |''55 69S[[ 9x !-    l&&33 4 $$66 ##44 "&&::  *.::&:: *.--&--r   