관리-도구
편집 파일: libssh.cpython-39.pyc
a � �g� � @ s d dl mZ G dd� de�ZdS )� )�ConfigGeneratorc @ s� e Zd ZdZddhZddddddd dddddd dddddddd d�Zddddddd�Zddddddd�Zdddddddddd� Zd d!d"�Z d#d$d%d&d'd(d)d*d+�Z d,d-d.d/d0d1d2d3d+�Zed4d5� �Z ed6d7� �Zd8S )9�LibsshGeneratorZlibsshZsshzaes256-gcm@openssh.comz aes256-ctr� z aes192-ctrzaes128-gcm@openssh.comz aes128-ctrzchacha20-poly1305@openssh.comz aes256-cbcz aes192-cbcz aes128-cbcz3des-cbc)zAES-256-GCMzAES-256-CTRzAES-192-GCMzAES-192-CTRzAES-128-GCMzAES-128-CTRzCHACHA20-POLY1305zCAMELLIA-256-GCMzAES-256-CCMzAES-192-CCMzAES-128-CCMzCAMELLIA-128-GCMzAES-256-CBCzAES-192-CBCzAES-128-CBCzCAMELLIA-256-CBCzCAMELLIA-128-CBCzRC4-128zDES-CBCzCAMELLIA-128-CTSz3DES-CBCzhmac-sha1-etm@openssh.comzhmac-sha2-256-etm@openssh.comzhmac-sha2-512-etm@openssh.com)zHMAC-MD5zUMAC-64zUMAC-128z HMAC-SHA1z HMAC-SHA2-256z HMAC-SHA2-512z hmac-sha1z hmac-sha2-256z hmac-sha2-512zecdh-sha2-nistp521zecdh-sha2-nistp384zecdh-sha2-nistp256z.curve25519-sha256,curve25519-sha256@libssh.orgzdiffie-hellman-group1-sha1zdiffie-hellman-group14-sha1zdiffie-hellman-group14-sha256zdiffie-hellman-group16-sha512zdiffie-hellman-group18-sha512) zECDHE-SECP521R1-SHA2-512zECDHE-SECP384R1-SHA2-384zECDHE-SECP256R1-SHA2-256zECDHE-X25519-SHA2-256zDHE-FFDHE-1024-SHA1zDHE-FFDHE-2048-SHA1zDHE-FFDHE-2048-SHA2-256zDHE-FFDHE-4096-SHA2-512zDHE-FFDHE-8192-SHA2-512z"diffie-hellman-group-exchange-sha1z$diffie-hellman-group-exchange-sha256)zDHE-SHA1zDHE-SHA2-256zssh-rsazssh-dsszrsa-sha2-256zrsa-sha2-512zecdsa-sha2-nistp256zecdsa-sha2-nistp384zecdsa-sha2-nistp521zssh-ed25519)zRSA-SHA1zDSA-SHA1zRSA-SHA2-256zRSA-SHA2-512zECDSA-SHA2-256zECDSA-SHA2-384zECDSA-SHA2-512z EDDSA-ED25519zssh-rsa-cert-v01@openssh.comzssh-dss-cert-v01@openssh.comz!rsa-sha2-256-cert-v01@openssh.comz!rsa-sha2-512-cert-v01@openssh.comz(ecdsa-sha2-nistp256-cert-v01@openssh.comz(ecdsa-sha2-nistp384-cert-v01@openssh.comz(ecdsa-sha2-nistp521-cert-v01@openssh.comz ssh-ed25519-cert-v01@openssh.comc C s� |j }d}d}d}|d D ]0}z| �|| j| |�}W q tyH Y q0 q|r`|d| d 7 }d}|jd dkr�|d D ]0}z| �|| j| |�}W qz ty� Y qz0 qz|jd d kr�|d D ]0}z| �|| j| |�}W q� ty� Y q�0 q�|�r |d | d 7 }d}|d D ]�}|d D ]�}|jd �rlz$| j|d | } | �|| |�}W n t�yj Y n0 |d D ]H} z,| j |d | d | } | �|| |�}W n t�y� Y n0 �qt�q"�q|�r�|d| d 7 }d}|d D ]n}z| �|| j | |�}W n t�y Y n0 |jd �r�z| �|| j| |�}W n t�yR Y n0 �q�|�r~|d| d 7 }|d| d 7 }|S )Nr �,ZcipherzCiphers � ZetmZDISABLE_ETMZmacZDISABLE_NON_ETMzMACs Zkey_exchange�hashZarbitrary_dh_groups�-�groupzKexAlgorithms �signZ ssh_certszHostKeyAlgorithms zPubkeyAcceptedKeyTypes )Zenabled�append� cipher_map�KeyErrorZenums�mac_map_etm�mac_mapZintegers�gx_map�kx_map�sign_map�sign_map_certs)�clsZpolicy�pZcfg�sep�s�iZkx�h�val�g� r �</usr/share/crypto-policies/python/policygenerators/libssh.py�generate_configa st zLibsshGenerator.generate_configc C s dS )NTr )r Zconfigr r r �test_config� s zLibsshGenerator.test_configN)�__name__� __module__�__qualname__ZCONFIG_NAMEZSCOPESr r r r r r r �classmethodr r r r r r r s� �� � ���� Fr N)Zconfiggeneratorr r r r r r �<module> s