■掲示板に戻る■ 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 最新50



レス数が1000を超えています。残念ながら全部は表示しません。

ssh

579 :名無しさん@XEmacs :02/03/14 13:37
>>562
> ということで、わたしからの回答は二日後くらいに B-)

それでは。

まず、復号した challenge をそのまま response として送ると、悪意
あるサーバに何ができてしまうかについてだけど、これは RSA という
アルゴリズムに固有の「復号処理と署名処理が同型である」という特
徴を利用した攻撃ということになる。

で、クライアントにとって不利益となる (たとえば「わたしは○○氏
から100万円借りてます」とかいう) よな電子文書から採った Hash 値
をサーバが challenge として送っていたとすると思いねぇ。暗号化さ
れた乱数値だと信じてクライアントがそれを復号して返してしまうと、
サーバは

・クライアントにとって不利益となる電子文書
・クライアントの秘密鍵で変換された当該電子文書の Hash 値

という二つのデータを入手できるわけ。これが何かといえば、すなわ
ち電子署名された文書に他ならないので、特に電子署名法が有効な現
在では、この事実を否認するためにクライアント氏は裁判で相当な労
力を割かなければならない羽目にも陥りかねないということ。

ここから得られる教訓は、セキュアプロトコルを設計する際、どちら
か一方が結果に対して完全なコントロール権を握ることがないように
図るのが肝心、ってとこかな。

そのために SSH1 では送られた challenge の復号結果をクライアント
がさらに hash することでサーバの影響力を弱めている (復号と hash
が逆だとまだちょっと危ない) し、SSH2 (や SSLv3) では被署名デー
タの一部としてクライアント/サーバ両方がそれぞれ独自に生成した乱
数値を含めるようになっているわけ。

また、SSH ではクライアントの鍵は認証用にしか使われないため顕在
化しないけど、もし暗号化にも利用してるような場合、上でいう challenge
としてどこかで拾っておいた「クライアントの公開鍵で暗号化された
データ」が送られたりすると、サーバは労せずしてその復号結果を手
にすることができるわけだ。

えらく長くなってしまったので、もう一点は別便で。



次100 最新50

read.cgi ver5.26+ (01/10/21-)