件のIBM developerWorksサイトのOpenSSH解説ウェブページの第1回では、『RSA/DSA鍵の仕組み』という章でSSHのRSA/DSA鍵を使ったユーザ認証に関して、
ここから先がかなりおもしろいところです。Remoteboxのsshdは乱数を生成し、先にコピーしておいた公開鍵を使用してそれを暗号化します。次いで、この暗号化した乱数をlocalboxで実行されているsshに送り返します。それを受けてsshは、私有鍵を使用してこの乱数の暗号化を解除してそれをremoteboxに送り返します。これは要するに「ほら、対応する私有鍵を間違いなく持っていますよ。メッセージの暗号化を解除できましたよ。」と言っていることになります。という説明を行なっている。詳しくは省くが、これはいわゆる"Challenge & Response"と呼ばれるスキームに基づく認証方法を、公開鍵暗号の仕掛けを用いて実現したものと言える。
で、これは一見正しそうに見えるかもしれないのだが、
このうち 1. と 2. は言うまでもなく明らかなので、最後の項目についてだけちょっと補足しておこうか。とも思ったんだけど、内容は2chのUNIX板sshスレッドで指摘したことと同じなので、それに対する説明ですべてが尽きてる気もするんで、とりあえずそっちを見てみてそれでもまだなんか疑問とかあったらメールしてちょ。
2002.5.30 追記:
そういえば、上のリンクで出て来るMITMって言葉について思い出したことがあったもんで、二つのMITMって?という文章を追加したっす。
あと、この著者最後まで一貫してRSA 鍵は SSH1 でしか使えないという論調で通してるんだけど、この記事が書かれた 2001 年 7 月にはとっくに SSH2 @ OpenSSH でも RSA 鍵が使えるようになってるんだよねー。こういう情報の遅さも致命的なんだよなぁ。いまどき SSH1 プロトコルを使うなんてのもそもそも危ないことなんだしね。