관리-도구
편집 파일: dh.cpython-39.pyc
a �a�+ � @ s� d dl mZmZ d dlmZ d dlmZ dd� Zdd� ZG dd � d ej �Z ed �dd�ZG d d� dej �ZG dd� dej�ZdS )� )�UnsupportedAlgorithm�_Reasons)� serialization)�dhc C s� |j }|j}|�| �}|�||jk� |�||j�}|jr�|�d�}|� | |j||j� |� |d �}|�||j||j�}|�|dk� |S �N� BIGNUM **r � )�_lib�_ffiZDHparams_dup�openssl_assert�NULL�gcZDH_freeZCRYPTOGRAPHY_IS_LIBRESSL�new�DH_get0_pqg�BN_dupZDH_set0_pqg)�dh_cdata�backend�libZffi�param_cdata�qZq_dup�res� r �M/usr/lib64/python3.9/site-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 @ sJ e Zd Zdd� Zejd�dd�Zejd�dd�Ze j e jed�d d �Z 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 j�d�}| j j�d�}| j j�d�}| j j�| j|||� | j �|d | j jjk� | j �|d | j jjk� |d | j jjkr�d }n| j �|d �}t j | j �|d �| j �|d �|d�S )Nr r ��p�gr )r r r r r r r r � _bn_to_intr �DHParameterNumbers)r r$ r% r �q_valr r r �parameter_numbers'