PHP WebShell

Текущая директория: /usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/__pycache__

Просмотр файла: dsa.cpython-310.pyc

o

�)%a��@sddlZddlZddlmZddlmZddlmZmZddl	m
Z
mZmZGdd�dej
d�ZeZGd	d
�d
ej
d�ZeZGdd�dej
d�ZeZGd
d�de�ZGdd�de�ZGdd�de�Zddedefdd�Zddedefdd�Zdefdd�Zdefdd�ZdS) �N)�utils)�_get_backend)�_serialization�hashes)�AsymmetricSignatureContext�AsymmetricVerificationContextrc@s,eZdZejd	dd��Zejd
dd��ZdS)�
DSAParameters�return�
DSAPrivateKeycC�dS)z8
        Generates and returns a DSAPrivateKey.
        N���selfrr�O/usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/dsa.py�generate_private_key�z"DSAParameters.generate_private_key�DSAParameterNumberscCr)z0
        Returns a DSAParameterNumbers.
        Nrr
rrr�parameter_numbersrzDSAParameters.parameter_numbersN)r	r
)r	r)�__name__�
__module__�__qualname__�abc�abstractmethodrrrrrrrs
r)�	metaclassc	@s�eZdZejdefdd��Zejddd��Zejde	fdd��Z
ejd	ejde
fd
d��Zejded
ejejejfdefdd��Zejddd��Zejdejdejdejdefdd��ZdS)r
r	cCr�z6
        The bit length of the prime modulus.
        Nrr
rrr�key_size%rzDSAPrivateKey.key_size�DSAPublicKeycCr)zD
        The DSAPublicKey associated with this private key.
        Nrr
rrr�
public_key+rzDSAPrivateKey.public_keycCr)zL
        The DSAParameters object associated with this private key.
        Nrr
rrr�
parameters1rzDSAPrivateKey.parameters�signature_algorithmcCr)zN
        Returns an AsymmetricSignatureContext used for signing data.
        Nr)rrrrr�signer7rzDSAPrivateKey.signer�data�	algorithmcCr)z 
        Signs the data
        Nr)rr!r"rrr�sign@rzDSAPrivateKey.sign�DSAPrivateNumberscCr)z.
        Returns a DSAPrivateNumbers.
        Nrr
rrr�private_numbersJrzDSAPrivateKey.private_numbers�encoding�format�encryption_algorithmcCr�z6
        Returns the key serialized as bytes.
        Nr)rr&r'r(rrr�
private_bytesPrzDSAPrivateKey.private_bytesN)r	r)r	r$)rrrr�abstractproperty�intrrrrrr�
HashAlgorithmrr �bytes�typing�Union�
asym_utils�	Prehashedr#r%r�Encoding�
PrivateFormat�KeySerializationEncryptionr*rrrrr
$sB�����	����r
c	@s�eZdZejdefdd��Zejdefdd��Z	ejde
dejde
fdd	��Zejddd��Zejd
ejdejde
fdd��Zejde
de
dejejejffdd��ZdS)rr	cCrrrr
rrrr`rzDSAPublicKey.key_sizecCr)zK
        The DSAParameters object associated with this public key.
        Nrr
rrrrfrzDSAPublicKey.parameters�	signaturercCr)zQ
        Returns an AsymmetricVerificationContext used for signing data.
        Nr)rr6rrrr�verifierlrzDSAPublicKey.verifier�DSAPublicNumberscCr)z-
        Returns a DSAPublicNumbers.
        Nrr
rrr�public_numbersvrzDSAPublicKey.public_numbersr&r'cCrr)r)rr&r'rrr�public_bytes|rzDSAPublicKey.public_bytesr!r"cCr)z5
        Verifies the signature of the data.
        Nr)rr6r!r"rrr�verify�rzDSAPublicKey.verifyN)r	r8)rrrrr+r,rrrrr.rr-rr7r9rr3�PublicFormatr:r/r0r1r2r;rrrrr_s>���	���	���rc@sheZdZdededefdd�Ze�d�Ze�d�Ze�d�Z	dd
e
fdd�Zd
d�Zdd�Z
dd�Zd	S)r�p�q�gcCs<t|t�rt|t�rt|t�std��||_||_||_dS)Nz;DSAParameterNumbers p, q, and g arguments must be integers.)�
isinstancer,�	TypeError�_p�_q�_g)rr=r>r?rrr�__init__�s����
zDSAParameterNumbers.__init__rBrCrDNr	cC�t|�}|�|�S�N)r�load_dsa_parameter_numbers�r�backendrrrr��
zDSAParameterNumbers.parameterscCs2t|t�stS|j|jko|j|jko|j|jkSrG)r@r�NotImplementedr=r>r?�r�otherrrr�__eq__�s
$zDSAParameterNumbers.__eq__cC�
||kSrGrrMrrr�__ne__��
zDSAParameterNumbers.__ne__cC�dj|d�S)Nz9<DSAParameterNumbers(p={self.p}, q={self.q}, g={self.g})>r
�r'r
rrr�__repr__����zDSAParameterNumbers.__repr__rG)rrrr,rEr�read_only_propertyr=r>r?rrrOrQrUrrrrr�s


rc@sZeZdZdedefdd�Ze�d�Ze�d�Z	dde
fd	d
�Zdd�Zd
d�Z
dd�ZdS)r8�yrcCs4t|t�s	td��t|t�std��||_||_dS)Nz/DSAPublicNumbers y argument must be an integer.z9parameter_numbers must be a DSAParameterNumbers instance.)r@r,rAr�_y�_parameter_numbers)rrXrrrrrE�s

�
zDSAPublicNumbers.__init__rYrZNr	cCrFrG)r�load_dsa_public_numbersrIrrrr�rKzDSAPublicNumbers.public_keycC�&t|t�stS|j|jko|j|jkSrG)r@r8rLrXrrMrrrrO�s


�zDSAPublicNumbers.__eq__cCrPrGrrMrrrrQ�rRzDSAPublicNumbers.__ne__cCrS)NzJ<DSAPublicNumbers(y={self.y}, parameter_numbers={self.parameter_numbers})>r
rTr
rrrrU�rVzDSAPublicNumbers.__repr__rG)rrrr,rrErrWrXrrrrOrQrUrrrrr8�s

	r8c@sReZdZdedefdd�Ze�d�Ze�d�Z	dde
fd	d
�Zdd�Zd
d�Z
dS)r$�xr9cCs4t|t�s	td��t|t�std��||_||_dS)Nz0DSAPrivateNumbers x argument must be an integer.z3public_numbers must be a DSAPublicNumbers instance.)r@r,rAr8�_public_numbers�_x)rr]r9rrrrE�s

�
zDSAPrivateNumbers.__init__r_r^Nr	cCrFrG)r�load_dsa_private_numbersrIrrr�private_key�rKzDSAPrivateNumbers.private_keycCr\rG)r@r$rLr]r9rMrrrrO�s
�zDSAPrivateNumbers.__eq__cCrPrGrrMrrrrQ�rRzDSAPrivateNumbers.__ne__rG)rrrr,r8rErrWr]r9r
rarOrQrrrrr$�s

r$rr	cCrFrG)r�generate_dsa_parameters�rrJrrr�generate_parametersrKrdcCrFrG)r�'generate_dsa_private_key_and_parametersrcrrrrrKrrcCsX|j��dvrtd��|j��dvrtd��d|jkr%|jks*td��td��dS)N)iiiiz5p must be exactly 1024, 2048, 3072, or 4096 bits long)����z,q must be exactly 160, 224, or 256 bits long�zg, p don't satisfy 1 < g < p.)r=�
bit_length�
ValueErrorr>r?)rrrr�_check_dsa_parameterss���rl�numberscCsT|jj}t|�|jdks|j|jkrtd��|jjt|j|j|j	�kr(td��dS)Nrzx must be > 0 and < q.z y must be equal to (g ** x % p).)
r9rrlr]r>rkrX�powr?r=)rmrrrr�_check_dsa_private_numberss�rorG)rr/�cryptographyr�cryptography.hazmat.backendsr�cryptography.hazmat.primitivesrr�)cryptography.hazmat.primitives.asymmetricrrr1�ABCMetar�DSAParametersWithNumbersr
�DSAPrivateKeyWithSerializationr�DSAPublicKeyWithSerialization�objectrr8r$r,rdrrlrorrrr�<module>s&83''

Выполнить команду


Для локальной разработки. Не используйте в интернете!