Файловый менеджер - Редактировать - /opt/imh-python/lib/python3.9/site-packages/Cryptodome/PublicKey/__pycache__/DSA.cpython-39.pyc
Ðазад
a b�h[W � @ s g d �Z ddlZddlZddlZddlmZmZmZmZm Z ddl mZ ddlm Z mZ ddlmZ ddlmZmZmZmZmZ ddlmZ dd lmZmZmZ dd lmZmZm Z G dd� de!�Z"d d� Z#d!dd�Z$d"dd�Z%dd� Z&dd� Z'dd� Z(dd� Z)dd� Z*d#dd�Z+e+Z,d Z-dS )$)�generate� construct�DsaKey� import_key� N)�bchr�bord�tobytes�tostr� iter_range)�Random)�PKCS8�PEM)�SHA256)� DerObject�DerSequence� DerInteger�DerObjectId�DerBitString)�Integer)�test_probable_prime� COMPOSITE�PROBABLY_PRIME)�_expand_subject_public_key_info�_create_subject_public_key_info� _extract_subject_public_key_infoc @ s� e Zd ZdZg d�Zdd� Zdd� Zdd� Zd d � Zdd� Z d d� Z dd� Zdd� Zdd� Z dd� Zdd� Zdd� Zdd� Zd/dd �ZeZd!d"� Zd#d$� Zd%d&� Zd'd(� Zd)d*� Zd+d,� Zd-d.� ZdS )0r a� Class defining an actual DSA key. Do not instantiate directly. Use :func:`generate`, :func:`construct` or :func:`import_key` instead. :ivar p: DSA modulus :vartype p: integer :ivar q: Order of the subgroup :vartype q: integer :ivar g: Generator :vartype g: integer :ivar y: Public key :vartype y: integer :ivar x: Private key :vartype x: integer ��y�g�p�q�xc C sp t |�� �}t d�}|�|�s2tdt|| � ��|| }|rb|t d�krbtdt|t d� � ��t|�| _d S )N�r r r r z$Some DSA components are missing = %s�r zUnknown DSA components = %s)�set�keys�issubset� ValueError�str�dict�_key)�self�key_dictZ input_setZ public_setZ extra_set� r, ��/root/rpmbuild/BUILDROOT/imh-python39-modules-3.9.7-92.el8.x86_64/opt/imh-python/lib/python3.9/site-packages/Cryptodome/PublicKey/DSA.py�__init__e s ��zDsaKey.__init__c s� � � � std��d| k r&� jk s0n td��� fdd�dD �\}}}}tjd|d�}|| �|�}|| } t|||�| } ||| | | | }tt | |f�S )Nz)DSA public key cannot be used for signing� zk is not between 2 and q-1c s g | ]}� j | �qS r, �r) ��.0�comp�r* r, r- � <listcomp>w � z DsaKey._sign.<locals>.<listcomp>)r r r r )Z min_inclusiveZ max_exclusive) �has_private� TypeErrorr r&