Current File : //lib64/python3.9/site-packages/cryptography/hazmat/backends/openssl/__pycache__/ec.cpython-39.pyc |
a
�a.2 � @ s� d dl mZ d dlmZmZmZ d dlmZmZm Z m
Z
d dlmZm
Z
d dlmZmZmZ ejd�dd�Zd d
� Zdd� Zd
d� Zdd� Zdd� ZG dd� de�ZG dd� de�ZG dd� dej�ZG dd� dej�ZdS )� )�utils)�InvalidSignature�UnsupportedAlgorithm�_Reasons)�_calculate_digest_and_algorithm�_check_not_prehashed�_evp_pkey_derive�_warn_sign_verify_deprecated)�hashes�
serialization)�AsymmetricSignatureContext�AsymmetricVerificationContext�ec��signature_algorithmc C s t | tj�stdtj��d S )Nz/Unsupported elliptic curve signature algorithm.)�
isinstancer ZECDSAr r Z UNSUPPORTED_PUBLIC_KEY_ALGORITHMr � r �M/usr/lib64/python3.9/site-packages/cryptography/hazmat/backends/openssl/ec.py�_check_signature_algorithm s
�r c C s� | j �|�}| �|| jjk� | j �|�}|| j jkr>td��| j js^| j � |�dkr^td��| j �
|�}| �|| jjk� | j�|��d�}|S )Nz@ECDSA keys with explicit parameters are unsupported at this timer �ascii)
�_lib�EC_KEY_get0_group�openssl_assert�_ffi�NULL�EC_GROUP_get_curve_nameZ NID_undef�
ValueErrorZCRYPTOGRAPHY_IS_LIBRESSLZEC_GROUP_get_asn1_flagZ
OBJ_nid2sn�string�decode)�backendZec_key�groupZnidZ
curve_name�snr r r �_ec_key_curve_sn$ s$ ����r"