File manager - Edit - /usr/local/CyberPanel/lib/python3.10/site-packages/paramiko/__pycache__/ed25519key.cpython-310.pyc
Back
o �h! � @ sx d dl Z d dlmZ d dlmZ d dlZd dlmZ d dl m Z mZmZ d dl mZ d dlmZmZ G dd � d e �ZdS ) � N)�default_backend)�Cipher)�Message)�PKey�OPENSSH_AUTH_MAGIC�_unpad_openssh)�b)�SSHException�PasswordRequiredExceptionc @ sf e Zd ZdZdZ ddd�Zdd� Zdd � Zed d� �Z dd � Z dd� Zdd� Zddd�Z dd� ZdS )� Ed25519Keya Representation of an `Ed25519 <https://ed25519.cr.yp.to/>`_ key. .. note:: Ed25519 key support was added to OpenSSH in version 6.5. .. versionadded:: 2.2 .. versionchanged:: 2.3 Added a ``file_obj`` parameter to match other key classes. zssh-ed25519Nc C s� d | _ d }}|d u r|d urt|�}|d ur)| j|| jdd� tj�|�� �}n.|d urKt|d��}| � d|�\} }W d � n1 sEw Y n|d urW| � d|�\} }|s[|ra| � ||�}|d u rm|d u rmtd��|| _|| _ d S )Nz ssh-ed25519-cert-v01@openssh.com)�msg�key_type� cert_type�r�OPENSSHz need a key)�public_blobr �_check_type_and_load_cert�name�nacl�signing� VerifyKey� get_binary�open�_read_private_key�_parse_signing_key_data� ValueError�_signing_key�_verifying_key) �selfr �data�filename�password�file_obj� verifying_key�signing_key�f�pkformat� r'