генерация пар ssh: rsa или dsa?

<p>ssh поддерживает два алгоритма подписи для пар ключей: rsa и dsa. что предпочтительнее, если есть? какова минимальная допустимая длина ключа для rsa?</p>

<p>rsa, как правило, предпочтительнее (теперь, когда выдача патента закончена), потому что он может достигать 4096 бит, где dsa должен быть ровно 1024 бит (по мнению <code>ssh-keygen</code>). 2048 бит - это <code>ssh-keygen</code> длина по умолчанию для ключей rsa, и я не вижу особой причины использовать более короткие ключи. (минимально возможное значение составляет 768 битов; я полагаю, что это "приемлемо", это ситуативно.)</p>

<p>это не симметричное или асимметричное шифрование. речь идет о конкретных алгоритмах (rsa и dsa), требующих большего числа битов для достижения приемлемого уровня безопасности. например, ecc - это также асимметричное шифрование, но оно обеспечивает хорошую безопасность при гораздо меньшем количестве битов, чем rsa или dsa.</p>

<p>если у вас есть недавняя реализация ssh, вы также можете рассмотреть ecdsa!</p>

<p>256-битные сертификаты, которые банки используют для соединений ssl, представляют собой симметричные шифры, такие как 3des или aes, отсюда и меньшее количество битов. когда вы видите 1024 и 2048 (и даже 4096), это асимметричные шифры.</p>

<p>ключи dsa имеют значительно более короткие подписи, чем ключи rsa (для того же "уровня безопасности"), поэтому одной из причин использования dsa может быть ограниченная среда.</p>