Vous ne faites pas générer la clé utilisée par aes
lorsque vous utilisez ssh-keygen
. Depuis aes
est un chiffre symétrique , ses clés ne le font pas venez par paires. Les deux extrémités de la communication utilisent la même clé.
La clé générée par ssh-keygen utilise la cryptographie à clé publique pour l'authentification. À partir du ssh-keygen
manuel :
ssh-keygen generates, manages and converts authentication keys for
ssh(1). ssh-keygen can create RSA keys for use by SSH protocol version 1
and DSA, ECDSA, Ed25519 or RSA keys for use by SSH protocol version 2.
Du ssh
manuel :
Public key authentication works as follows: The scheme is based on
public-key cryptography, using cryptosystems where encryption and
decryption are done using separate keys, and it is unfeasible to derive
the decryption key from the encryption key. The idea is that each user
creates a public/private key pair for authentication purposes. The
server knows the public key, and only the user knows the private key.
ssh implements public key authentication protocol automatically, using
one of the DSA, ECDSA, Ed25519 or RSA algorithms.
Le problème avec la cryptographie à clé publique est qu'elle est assez lente. La cryptographie à clé symétrique est beaucoup plus rapide et est utilisée par ssh
pour le transfert de données proprement dit. La clé utilisée pour la cryptographie symétrique est générée à la volée après l'établissement de la connexion (en citant le sshd
manuel):
For protocol 2, forward security is provided through a Diffie-Hellman key
agreement. This key agreement results in a shared session key. The rest
of the session is encrypted using a symmetric cipher, currently 128-bit
AES, Blowfish, 3DES, CAST128, Arcfour, 192-bit AES, or 256-bit AES. The
client selects the encryption algorithm to use from those offered by the
server. Additionally, session integrity is provided through a
cryptographic message authentication code (hmac-md5, hmac-sha1, umac-64,
umac-128, hmac-ripemd160, hmac-sha2-256 or hmac-sha2-512).
Si vous souhaitez utiliser aes256-cbc
vous devez le spécifier sur la ligne de commande à l'aide de l'option -c, dans sa forme la plus basique, cela ressemblerait à ceci :
$ ssh -c aes256-cbc [email protected]
Vous pouvez également spécifier votre sélection préférée de chiffrements dans ssh_config
, en utilisant une liste séparée par des virgules. Il n'est cependant pas recommandé de modifier les valeurs par défaut, car il vaut mieux laisser cela aux experts. De nombreuses considérations et des années d'expérience ont été prises en compte dans le choix des valeurs par défaut par les développeurs OpenSSH.