Файловый менеджер - Редактировать - /opt/imh-python/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/__pycache__/hotp.cpython-39.pyc
Ðазад
a p�h& � @ s� d dl Z d dlZd dlZd dlmZmZ d dlmZmZ d dl m Z mZmZ d dl mZ eje eef Zdeeeje ejejeef ed�dd �ZG d d� de�ZdS )� N)�quote� urlencode)� constant_time�hmac)�SHA1�SHA256�SHA512)�InvalidToken�HOTP)�hotp� type_name�account_name�issuer�extra_parameters�returnc C s� d| j fdt�| j�fd| jj�� fg}|d ur>|�d|f� |�|� ||rbdt |�t |�f nt |�t |�d�}djf i |��S )N�digits�secret� algorithmr z%s:%s)�type�label� parametersz%otpauth://{type}/{label}?{parameters})�_length�base64� b32encode�_key� _algorithm�name�upper�append�extendr r �format)r r r r r r Zuriparts� r! ��/root/rpmbuild/BUILDROOT/imh-python39-modules-3.9.7-92.el8.x86_64/opt/imh-python/lib/python3.9/site-packages/cryptography/hazmat/primitives/twofactor/hotp.py� _generate_uri s � �� r# c @ st e Zd Zdeeeejedd�dd�Z eed�dd�Z eedd �d d�Zeed�dd �Ze eeje e d�dd�ZdS )r NT)�key�lengthr �backend�enforce_key_lengthr c C st t |�dk r|du rtd��t|t�s.td��|dk s>|dkrFtd��t|tttf�s^td��|| _|| _ || _ d S ) N� Tz'Key length has to be at least 128 bits.z)Length parameter must be an integer type.� � z(Length of HOTP has to be between 6 to 8.z)Algorithm must be SHA1, SHA256 or SHA512.)�len� ValueError� isinstance�int� TypeErrorr r r r r r )�selfr$ r% r r&