HOME»情報処理安全確保支援士掲示板»SSHサービスの認証方式
投稿する
SSHサービスの認証方式 [0729]
AESさん(No.1)
SSHサービスってパスワード認証と公開鍵認証方式がよく使われるかと思うんですが、「共通鍵認証方式ってないのかな」と思ってました。
これ、パスワード認証≒共通鍵認証方式って事なのでしょうか?
これ、パスワード認証≒共通鍵認証方式って事なのでしょうか?
2021.10.03 00:03
わいわいさん(No.2)
スレッド:[0720]でもトピックとして挙がっておりますが
SSHの認証方法として
・パスワード認証(昔から)
・公開鍵認証(昔から)
・CA認証 (ここ5年くらい前から広まり始めた)
3種類が存在します
パスワードは認証要素として「知識情報」を利用し
共通鍵であれば「所有情報」を利用しているので
異なるものと考えられます
技術的にはSSHの認証方式として共通鍵認証方式を実装することも
できると思います
ですが、共通鍵認証方式を実装したとしてもメリットが少なく
デメリットが多いので、実装には向かないと思われます
公開鍵認証方式と(もしあったとして)共通鍵認証方式を比較してみます
・公開鍵認証方式
認証に使う方法:ディジタル署名
鍵配送問題:ログイン先サーバに公開鍵を登録する際に、盗聴されていても
問題ない
公開鍵の漏えい:ログイン先サーバから公開鍵が漏えいしても問題ない
鍵の管理:複数サーバで同一の秘密鍵&公開鍵を利用しても問題はない
共通鍵認証方式
認証に使う方法:メッセージ認証コード(またはより単純な方法)
鍵配送問題:ログイン先サーバに共通鍵を登録する際に、盗聴されていたら
鍵が危たい化する
複数のサーバで同一の共通鍵を利用している場合は影響範囲が広範囲になる
共通鍵の漏えい:ログイン先サーバから共通鍵が漏えいすると
鍵が危たい化する
複数のサーバで同一の共通鍵を利用している場合は影響範囲が広範囲になる
鍵の管理:共通鍵が危たい化するリスクを考えるとサーバ毎に共通鍵を
作成する必要があり、煩雑になる
以上のように共通鍵認証があったとしても鍵の取り扱いで大きな問題があり、
実装には向かず、安全性という面ではパスワード認証より
も低いと考えられます
SSHの認証方法として
・パスワード認証(昔から)
・公開鍵認証(昔から)
・CA認証 (ここ5年くらい前から広まり始めた)
3種類が存在します
>これ、パスワード認証≒共通鍵認証方式って事なのでしょうか?
パスワードは認証要素として「知識情報」を利用し
共通鍵であれば「所有情報」を利用しているので
異なるものと考えられます
技術的にはSSHの認証方式として共通鍵認証方式を実装することも
できると思います
ですが、共通鍵認証方式を実装したとしてもメリットが少なく
デメリットが多いので、実装には向かないと思われます
公開鍵認証方式と(もしあったとして)共通鍵認証方式を比較してみます
・公開鍵認証方式
認証に使う方法:ディジタル署名
鍵配送問題:ログイン先サーバに公開鍵を登録する際に、盗聴されていても
問題ない
公開鍵の漏えい:ログイン先サーバから公開鍵が漏えいしても問題ない
鍵の管理:複数サーバで同一の秘密鍵&公開鍵を利用しても問題はない
共通鍵認証方式
認証に使う方法:メッセージ認証コード(またはより単純な方法)
鍵配送問題:ログイン先サーバに共通鍵を登録する際に、盗聴されていたら
鍵が危たい化する
複数のサーバで同一の共通鍵を利用している場合は影響範囲が広範囲になる
共通鍵の漏えい:ログイン先サーバから共通鍵が漏えいすると
鍵が危たい化する
複数のサーバで同一の共通鍵を利用している場合は影響範囲が広範囲になる
鍵の管理:共通鍵が危たい化するリスクを考えるとサーバ毎に共通鍵を
作成する必要があり、煩雑になる
以上のように共通鍵認証があったとしても鍵の取り扱いで大きな問題があり、
実装には向かず、安全性という面ではパスワード認証より
も低いと考えられます
2021.10.03 05:10
初受験 頑張ろうさん(No.3)
公開鍵認証といってもTSLみたいに公開鍵を使って秘密鍵の受け渡しをするんじゃなかったでした?
2021.10.06 18:59
わいわいさん(No.4)
SSHの初期フローは以下です
1.暗号化用の共通鍵を生成
DH鍵交換などで通信用の共通鍵を生成します
(この共通鍵は今回のみの使い捨てです)
2. 1で生成した共通鍵を使用しての暗号化通信開始
3.ユーザー認証を行う
この時、「パスワード認証」や「公開鍵認証」を使用して
正規のユーザーかの確認を行う
公開鍵認証は正規のユーザーか確認するのみに使われます
データ暗号化用の共通鍵はDH鍵交換によって生成されます
もし公開鍵暗号によって共通鍵を交換するとなると
パスワード認証の時は鍵ペア(公開鍵・秘密鍵)がないので
共通鍵の交換ができなくなってしまいます
このように公開鍵認証と公開鍵暗号は別物です
・公開鍵認証(秘密鍵でディジタル署名作成、公開鍵でディジタル署名検証)
・公開鍵暗号(公開鍵でメッセージ暗号化、秘密鍵でメッセージ復号)
そもそもがSSHのなかに
・公開鍵認証(秘密鍵・公開鍵)
・共通鍵暗号
というように鍵という言葉が3つでてくるので紛らわしいのかも
しれません
1.暗号化用の共通鍵を生成
DH鍵交換などで通信用の共通鍵を生成します
(この共通鍵は今回のみの使い捨てです)
2. 1で生成した共通鍵を使用しての暗号化通信開始
3.ユーザー認証を行う
この時、「パスワード認証」や「公開鍵認証」を使用して
正規のユーザーかの確認を行う
公開鍵認証は正規のユーザーか確認するのみに使われます
データ暗号化用の共通鍵はDH鍵交換によって生成されます
もし公開鍵暗号によって共通鍵を交換するとなると
パスワード認証の時は鍵ペア(公開鍵・秘密鍵)がないので
共通鍵の交換ができなくなってしまいます
このように公開鍵認証と公開鍵暗号は別物です
・公開鍵認証(秘密鍵でディジタル署名作成、公開鍵でディジタル署名検証)
・公開鍵暗号(公開鍵でメッセージ暗号化、秘密鍵でメッセージ復号)
そもそもがSSHのなかに
・公開鍵認証(秘密鍵・公開鍵)
・共通鍵暗号
というように鍵という言葉が3つでてくるので紛らわしいのかも
しれません
2021.10.06 19:29