この特集のトップページへ

Directory first step 4... ディレクトリサービスを支えるテクノロジ群
sankaku.gif 暗号化

 ディレクトリサービスは,ディレクトリに格納されているさまざまな情報をユーザーやコンピュータに対して提供する。たとえば,ディレクトリにはユーザー個人に関する情報や企業などの組織に関する情報が格納される。当然ながら,これらの情報には他人には見られたくない情報が含まれていることもある。しかし,ディレクトリサービスとのやり取りは,基本的にネットワークを介して実行されるため,盗聴,改ざん,消去など,さまざまな危険に直面することになる。このような問題を解決する手段の1つが,暗号化である。暗号化とは,データを一見意味のない情報の羅列に変換することを指し,暗号化された情報を元の状態に戻すことを復号化と呼ぶ。

 今日利用されている暗号化の方式は,主に秘密鍵暗号方式と公開鍵暗号方式の2つに大別される。代表的な秘密鍵暗号方式には,RC2,RC4,FEAL,DES,IDEAなどがあり,公開鍵暗号方式にはRSAなどがある。

Table 4 秘密鍵暗号方式と公開鍵暗号方式の特徴
暗号方式 秘密鍵暗号 公開鍵暗号
鍵の公開 公開しない 暗号化鍵のみを公開する
特徴 暗号化鍵と復号化鍵が同じ 暗号化鍵と復号化鍵が異なる
利用範囲 少人数の限定した範囲の通信 電子商取引などの1対多の通信
アルゴリズム DES(Data Encryption Standard),FEAL(Fast Encipherment Algorithm),IDEA(Intermational Data Encryption Algorithm),RC2/4/5(Rivest Code 2/4/5) RSA(Rivest-Shamir-Adleman)

sankaku2.gif 公開鍵暗号方式(Public Key Infrastructure)

 暗号化された通信を実現するときに必要となる暗号化鍵を,送信者のプライベート鍵(復号化鍵)から生成して公開する方式である。受信者は,公開されている公開鍵と自分のプライベート鍵からデータを復号化する。これにより,公開されている情報に基づいて暗号化通信を実現することができる。

 暗号化鍵は公開されているので,そのままでは容易に第三者に解錠されてしまうおそれがある。これを防ぐため,暗号化と復号化のときに「一方向関数」が利用される。一方向関数とは,初期値から結果の値を求めることは容易な半面,逆に結果の値から初期値を求めることが非常に難しい,という性質を備えた関数である。

 公開鍵暗号方式は,主にデジタル署名などで利用されている。

sankaku2.gif 秘密鍵暗号方式

 秘密鍵暗号は,暗号化通信を実現するまえに,あらかじめ送信者と受信者が共通の鍵を共有し,この鍵を使用して暗号化および復号化を行う方式である。公開鍵暗号方式と比較すると,(1)コンピュータへの実装が容易である,(2)暗号化するときの処理効率がよいので高速である,(3)鍵長が十分長ければ総当り攻撃に対しても有効である,といった利点があるため,データストリームの暗号化に最も利用されている方式といえる。しかし,3者以上で通信する場合は,全ユーザーに対して鍵を安全に配布しなければならないため,運用が難しいという欠点もある。

Fig.13 公開鍵暗号方式(上)と秘密鍵暗号方式(下)
fig13.gif
prevpg.gif Directory first step(前編) 20/21 nextpg.gif