それらすべてが必要ですか?
いいえ、sshサーバーに必要なのは1つだけで、クライアントはssh接続用にその1種類のキーのみをサポートする必要があります。
RSA、DSA、ECDSA、EdDSA、およびEd25519はすべてデジタル署名に使用されますが、暗号化に使用できるのはRSAのみです。
RSA(Rivest–Shamir–Adleman)は、最初の公開鍵暗号システムの1つであり、安全なデータ伝送に広く使用されています。セキュリティは整数の因数分解に依存しているため、安全なRNG(Random Number Generator)は必要ありません。DSAと比較して、RSAは署名の検証は高速ですが、生成は低速です。
DSA(デジタル署名アルゴリズム)は、デジタル署名用の連邦情報処理標準です。セキュリティは、離散対数問題に依存しています。RSAと比較して、DSAは署名の生成は高速ですが、検証は低速です。不正な番号ジェネレータを使用すると、セキュリティが破られる可能性があります。
ECDSA(楕円曲線デジタル署名アルゴリズム)は、DSA(デジタル署名アルゴリズム)の楕円曲線実装です。楕円曲線暗号化は、より小さな鍵でRSAと比較的同じレベルのセキュリティレベルを提供できます。また、悪いRNGに敏感であるというDSAの欠点も共有しています。
EdDSA(エドワーズ曲線デジタル署名アルゴリズム)は、ツイストエドワーズ曲線に基づいたSchnorr署名のバリアントを使用したデジタル署名スキームです。署名の作成はEdDSAでは決定論的であり、そのセキュリティは特定の離散対数問題の難治性に基づいているため、すべての署名に高品質のランダム性を必要とするDSA&ECDSAよりも安全です。
Ed25519はEdDSA 署名スキームですが、SHA-512 / 256とCurve25519を使用しています。これは、DSA、ECDSA、およびEdDSAよりも優れたセキュリティを提供する安全な楕円曲線であり、さらに優れたパフォーマンスを備えています(人間には認識できません)。
その他の注意事項
RSAキーは最も広く使用されているため、最もよくサポートされているようです。
ECDSA(OpenSSH v5.7で導入)は、DSAよりも計算上軽いですが、処理能力が非常に低いマシンを使用しない限り、違いは目立ちません。
のとしてのOpenSSH 7.0、SSHは、もはやデフォルトでDSA鍵(SSH-DSS)をサポートしていません。SSH規格(RFC 4251以降)に従って、どこでも機能するために使用されるDSAキー。
Ed25519はopenSSH 6.5で導入されました。