Server IP : 209.38.156.173 / Your IP : 216.73.216.122 [ Web Server : Apache/2.4.52 (Ubuntu) System : Linux lakekumayuhotel 5.15.0-136-generic #147-Ubuntu SMP Sat Mar 15 15:53:30 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.1.2-1ubuntu2.22 Disable Function : NONE Domains : 2 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /lib/python3/dist-packages/cryptography/hazmat/primitives/kdf/__pycache__/ |
Upload File : |
o �)%a� � @ s� d dl Z d dlZd dlmZ d dlmZmZmZmZ d dl m Z d dlmZ d dl mZmZ d dlmZ dd � ZG d d� de�ZdS )� N)�utils)�AlreadyFinalized� InvalidKey�UnsupportedAlgorithm�_Reasons)�_get_backend)�HashBackend)� constant_time�hashes)�KeyDerivationFunctionc C s t �d| �S )Nz>I)�struct�pack)�n� r �L/usr/lib/python3/dist-packages/cryptography/hazmat/primitives/kdf/x963kdf.py� _int_to_u32be s r c @ sV e Zd Z ddejdedeje fdd�Z dedefd d �Z dededdfdd �ZdS )�X963KDFN� algorithm�length� sharedinfoc C st t |�}|jd }||krtd�|���|d urt�d|� || _|| _|| _t |t �s2tdtj ��|| _d| _d S )Nl �� z(Can not derive keys larger than {} bits.r z.Backend object does not implement HashBackend.F)r �digest_size� ValueError�formatr �_check_bytes� _algorithm�_length�_sharedinfo� isinstancer r r �BACKEND_MISSING_INTERFACE�_backend�_used)�selfr r r �backend�max_lenr r r �__init__ s$ � � zX963KDF.__init__�key_material�returnc C s� | j rt�d| _ t�d|� dg}d}d}| j|krQt�| j| j�}|� |� |� t |�� | jd ur9|� | j� |�|� � � |t|d �7 }|d7 }| j|ksd�|�d | j� S )NTr% � r � ���)r r r �_check_bytesliker r �Hashr r �updater r �append�finalize�len�join)r! r% �output�outlen�counter�hr r r �derive8 s$ � zX963KDF.derive�expected_keyc C s t �| �|�|�st�d S �N)r �bytes_eqr5 r )r! r% r6 r r r �verifyM s �zX963KDF.verifyr7 )�__name__� __module__�__qualname__r � HashAlgorithm�int�typing�Optional�bytesr$ r5 r9 r r r r r s ��� �r )r r? �cryptographyr �cryptography.exceptionsr r r r �cryptography.hazmat.backendsr �'cryptography.hazmat.backends.interfacesr �cryptography.hazmat.primitivesr r �"cryptography.hazmat.primitives.kdfr r r r r r r �<module> s