SSLとは
Secure Socket Layer の略で,暗号化された安全な通信を提供します。
概要
SSL は簡単に言うと,データを暗号化してやり取りするやり方の決まりです。
SSL では,公開鍵暗号 (RSA) と秘密鍵暗号を併用しています. 公開鍵暗号を使った暗号化・復号には時間がかかるので, より高速な秘密鍵暗号の鍵 (key) を公開鍵暗号で渡すようにしています。
暗号の必要性
インターネットでは現在 IPv4 というプロトコル(通信手順)が使われていますが, 暗号化が全く規定されていないため, 回線にラインモニタやパソコンなどを挿入すると非常に簡単に中身を覗くことができます。
インターネットは各サイトの相互接続によって成り立っていますので, 接続先が遠ければ遠いほど中継サイトが増えます. 自分が全く知らないところを通ることも少なくありません. そうなってくると,パケットを覗かれる可能性も次第に増えていきます。 安心できるかどうかは, 通り道になっているサイト全てをどこまで信用するかにかかってきます。
インターネットはどこにどんな人がつながっているかわかりませんから, クレジットカード番号などの大切な情報を送る場合には用心したほうが良いわけです。
安全性
絶対に不正解読不能な暗号というのは存在しません. もちろん,暗号文を正しく復号するには正しい鍵を知る必要がありますが, 鍵の種類は有限なので, すべての鍵を順に試して行けばいつか必ず正しい鍵にたどり着けます。 しかし,正しい鍵にいき着くまでに非常に長い時間(たとえば 1000 年)かかるなら, 暗号の目的は十分達成できることになります。
一般に,鍵の長さが n [bit] ある場合の 鍵の種類は 2n ですから, 鍵が長ければ長いほど種類が増えて解読が困難に(解読に時間がかかるように)なっていきます。 たとえば 40 ビットの長さの鍵なら最大で約 1 兆通り, 56 ビットなら約 7 京通り, 64 ビットなら約 1844 京通り試すといった具合です。
暗号化の方式の一つに RC4 というのがありますが, 日本で広く普及しているブラウザでは鍵の長さを 40 ビットにした RC4-40 というのがよく使われています。 この RC4-40 で暗号化された文書は, しらみつぶしに鍵を調べていった場合解読に平均 64 [MIPS 年] かかると言われています。 [MIPS 年] というのは計算量の単位で,計算機の性能 [MIPS] と動かし続けた時間 [年] を掛け合わせたものです. 例えば 64 [MIPS 年] なら 1 [MIPS] の性能の計算機を 64 [年],あるいは 32 [MIPS] の性能の計算機を 2 [年] 動かし続ける,といった具合です。
SSL を使うには
Netscape Communicator や Internet Explorer など,SSL に対応したブラウザがあれば OK です。
SSL を使うために特別の設定をする必要はありません。 対応しているブラウザを使っていれば, デフォルトの設定のままで必要なときには自動的に SSL が使われます。