관리-도구
편집 파일: utils.cpython-39.pyc
a �a� � @ sP d dl Z d dlmZ d dlmZ d dlmZ dd� Zdd� Zd d � Z dd� Z dS ) � N)�utils)�hashes)� Prehashedc C s | j �|| jj�}| �|| jjk� | j�|| j j�}| j �|�}| �|dk� | j �||j �}| �|dk� | j� d�}| j �|| jj|�}| �|dk� | �|d dk� | j� d|d �}| j �|||�}|dkr�| �� }t d|��| j�||d �d d � S )N� zsize_t *r zunsigned char[]zError computing shared key.)Z_libZEVP_PKEY_CTX_newZ_ffiZNULLZopenssl_assert�gcZEVP_PKEY_CTX_freeZEVP_PKEY_derive_initZEVP_PKEY_derive_set_peerZ _evp_pkey�newZEVP_PKEY_deriveZ_consume_errors_with_text� ValueError�buffer)�backendZevp_pkeyZpeer_public_key�ctx�resZkeylen�bufZerrors_with_text� r �P/usr/lib64/python3.9/site-packages/cryptography/hazmat/backends/openssl/utils.py�_evp_pkey_derive s"