По умолчанию в моей текущей версии (6.9p1
) OpenSSH Server создает четыре типа ключей хоста:
$ ls /etc/ssh/ssh_host_*_key.pub
/etc/ssh/ssh_host_dsa_key.pub
/etc/ssh/ssh_host_ecdsa_key.pub
/etc/ssh/ssh_host_ed25519_key.pub
/etc/ssh/ssh_host_rsa_key.pub
В ходе тестирования я заметил, что, по крайней мере, при использовании той же версии клиента OpenSSH (6.9p1
) ключ ECDSA будет использоваться хостом, независимо от типа ключа клиента.
Где OpenSSH решает, какой приоритет имеют поддерживаемые алгоритмы? Является ли эта информация редактируемой или жестко закодированной в исходный код текущей версии?
И что еще более важно, почему OpenSSH решил уделить первоочередное внимание алгоритму ECDSA?