- 締切済み
SSH DSA RSA 鍵の違いについて
いつも参考にさせていただいてます。 今SSHで使えるRSA1、RSA、DSA鍵の違いについて調べております。 RSA1はSSH1で使える鍵で RSA、DSAはSSH2で使える鍵と理解しておりますが RSA1・RSA・DSAでの違いって何なんでしょうか。 #RSA1・RSAで違いはないと思いますが、念のため・・・ また、上記三種の鍵のメリット・デメリットを教えていただければ大変 助かります。 よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- hanabutako
- ベストアンサー率54% (492/895)
RSA1 メリット: SSH1しか使えない環境で使える デメリット: SSH1には通信内容を改竄される脆弱性があるため、どうしても使用しないといけない場合を除き使うべきではない 参考までに: http://en.wikipedia.org/wiki/Secure_Shell#Notable_vulnerabilities DSA メリット: RFC 4251に規定されているのでSSH2で必ず使える デメリット: ssh-keygenによっては鍵長が1024bitと今になっては心もとない長さしか使えない RSA メリット: 4096bitなど長い鍵長が選べる (鍵長を長くすると当然、作成も署名・検証も遅いですが) デメリット: RFC 4251には無い (でも、大抵使えるので実際に問題になることはない) 参考までに: http://security.stackexchange.com/questions/23383/ssh-key-type-rsa-dsa-ecdsa-are-there-easy-answers-for-which-to-choose-when というわけで、その3つで悩むなら自分はRSAを選んで、128bitの共通鍵と同等のRSA鍵は3072bitという説があるので、3072bitの公開鍵を作りますね。 http://en.wikipedia.org/wiki/Key_size#Asymmetric_algorithm_key_lengths まあ、最近のOpenSSHにはecdsaやed25519など楕円曲線暗号を使ったアルゴリズムも選べるようになっていますので、それで問題ない場合には自分はそちらも検討すると思います。 ecdsaのメリットはed25519よりも普及していることで、ed25519のメリットはecdsaよりも高速であることでしょう。 http://security.stackexchange.com/questions/50878/ecdsa-vs-ecdh-vs-ed25519-vs-curve25519
補足
ありがとうございます。大変参考になりました。 RSA1は旧環境での運用の場合、どうしても不可避 の場合において使用するものと判断しました。 また、追加でお聞きしたのですが、 DSAが1024bitの鍵長までしか扱えないのに対し RSA1・RSAで扱える鍵の最大の長さってどのく らいなのでしょう? また、ssh-keygenによりとありますが、最新バ ージョンでは1024bitを超える鍵生成、SSHデー モンでの1024bitを超える鍵での公開鍵認証方式 をサポートされているのでしょうか。 #クライアント側がSSH2を使えても、版数が低かっ #たらサーバ側で作った1024bitを超える秘密鍵を #をもらってもクライアント側で取り扱えないです #よね 続いて鍵長ですが、WinScp、Linux sftpコマンド 等、各クライアントに対して最大公約数的に互換 性を保ちRSA鍵を作るなら、2048bitが推奨でしょ うか。 #クライアントにより、扱えない鍵長があることを #考えてます 「128bitの共通鍵と同等のRSA鍵は3072bit」とあ りますが、当方学生のため、ここでの意味をもう 少し砕いてくださると助かります。 ちなみに128bitの共通鍵、2048bitのRSA鍵、1024 bitのDSA鍵を比較した場合、そのDSA鍵はどのくら い脆弱なのでしょうか。 若輩ものですがよろしくお願いします。