/usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/__pycache__
Edit: /usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/__pycache__/dh.cpython-310.pyc (8345B)
o
Ri+ @ s d dl mZmZ d dlmZ d dlmZ dd Zdd ZG dd d ej Z
d
efddZG d
d dej
ZG dd dejZdS ) )UnsupportedAlgorithm_Reasons)
serialization)dhc C s |j }|j}|| }|||jk |||j}|jrD|d}| | |j||j |
|d }|||j||j}||dk |S N BIGNUM **r )_lib_ffiDHparams_dupopenssl_assertNULLgcDH_freeCRYPTOGRAPHY_IS_LIBRESSLnewDH_get0_pqgBN_dupDH_set0_pqg)dh_cdatabackendlibffiparam_cdataqq_dupres r I/usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/dh.py_dh_params_dup s
r c C s t | |}t||S N)r
_DHParameters)r r r r r r _dh_cdata_to_parameters s
r" c @ sN e Zd Zdd ZdejfddZdejfddZde j
d e jdefd
dZ
dS )
r! c C s || _ || _d S r )_backend _dh_cdata)selfr r r r r __init__# s
z_DHParameters.__init__returnc C s | j jd}| j jd}| j jd}| j j| j||| | j |d | j jjk | j |d | j jjk |d | j jjkrFd }n| j |d }t j
| j |d | j |d |dS )Nr r pgr )r# r
r r r r$ r r
_bn_to_intr DHParameterNumbers)r% r) r* r q_valr r r parameter_numbers' s z_DHParameters.parameter_numbersc C s | j | S r )r# generate_dh_private_keyr% r r r generate_private_key8 s z"_DHParameters.generate_private_keyencodingformatc C s~ |t jjur
td| jjjs6| jjd}| jj | j
| jjj|| jjj |d | jjjkr6tdt
j| j||| j
S )Nz%Only PKCS3 serialization is supportedr r 'DH X9.42 serialization is not supported)r ParameterFormatPKCS3
ValueErrorr# r Cryptography_HAS_EVP_PKEY_DHXr
r r r$ r
r r UNSUPPORTED_SERIALIZATION_parameter_bytesr% r2 r3 r r r r parameter_bytes; s
z_DHParameters.parameter_bytesN)__name__
__module____qualname__r&