Anda tidak buat kunci yang digunakan oleh aes
saat Anda menggunakan ssh-keygen
. Sejak aes
adalah sandi simetris , kuncinya tidak datang berpasangan. Kedua ujung komunikasi menggunakan kunci yang sama.
Kunci yang dihasilkan oleh ssh-keygen menggunakan kriptografi kunci publik untuk otentikasi. Dari ssh-keygen
petunjuk:
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.
Dari ssh
petunjuk:
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.
Masalah dengan kriptografi kunci publik adalah sangat lambat. Kriptografi kunci simetris jauh lebih cepat dan digunakan oleh ssh
untuk transfer data yang sebenarnya. Kunci yang digunakan untuk kriptografi simetris dihasilkan dengan cepat setelah koneksi dibuat (mengutip dari sshd
petunjuk):
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).
Jika Anda ingin menggunakan aes256-cbc
Anda perlu menentukannya pada baris perintah menggunakan opsi -c, dalam bentuknya yang paling dasar akan terlihat seperti ini:
$ ssh -c aes256-cbc [email protected]
Anda juga dapat menentukan cipher pilihan Anda di ssh_config
, menggunakan daftar yang dipisahkan koma. Mengotak-atik default, bagaimanapun, tidak disarankan karena ini sebaiknya diserahkan kepada ahlinya. Ada banyak pertimbangan dan pengalaman bertahun-tahun yang digunakan untuk memilih default oleh developer OpenSSH.