ネットワーク内のクライアントはユーザーハッシュと呼ばれる一意の値によって特定されます。
このユーザーハッシュはpreferences.dat 内に格納され、他のユーザーにクレジットを与えるために使用されます。
eMuleは他のユーザハッシュ値を利用されたり、操作されたりすることを防ぐために非対称暗号化方式を使用しています。
この方式はユーザーハッシュを取得して、他のクライアントからあなたが適切に識別されることを保証するために、公開鍵と秘密鍵を使用します。
安全なユーザー認証は"設定→セキュリティ→安全な認証を使用する" を有効にすることで使用できます。これを使用することを推奨します。
安全なユーザー認証の動作:
クライアントAは彼のクレジットが彼だけの手によって安全に使用できるようにしたいと思っています。
彼は秘密の384ビットRSAキーを作成して、それをcryptkey.dat ファイル内に格納します。
この秘密鍵はこの暗号方式が初めて使用される時に作成されます。
このキーを失うことは、クライアントAが最早クレジットの正式な所有者であると立証できなくなるために、彼の全てのクレジットが失われてしまうことを意味します。
2つの暗号化をサポートしたクライアント同士が初めてデータ交換を行う時、それらの両方が公開鍵をランダムな値と共にその相手に送信します。 そして彼らの両方が相手の鍵をclients.metファイル内に格納します。鍵だけが保存され、ランダム値は以下の接続でそれぞれ生成されます。
後日クライアントAがクライアントB上で自分を識別したい時は、まずデジタル署名を作成してそれをBに送信します。 この署名というのは彼の秘密鍵とBの公開鍵とランダム値から構成されます。これはクライアントAがIPを変更するか、クライアントBがeMuleを終了させるまで有効になります。
Aの署名を受信した後、クライアントBはそれが彼の公開鍵Bと正しいランダム値から作成できるかどうかチェックします。 もしこれがクライアントAの公開鍵と一致するなら、クライアントAは正しく特定されたことになります。
注意: | |
> | cryptkey.dat ファイルを紛失したり削除した場合は、preferences.dat ファイルも削除しなければなりません。 さもなければ新しいクレジットを既知のクライアント上で集めることができなくなります。 |
> | 古いシステムから安全なユーザー認証に切り替える時、"安全でない"クレジットは全て失われます。 セキュリティ上の理由から、現在ではこれらのクレジットを安全なシステムへ転送する方法が用意されています。 |
適用バージョン: v0.29b以降
最終更新日: 2003/06/20 Monk
18.03.2004 13:44