代表的なアルゴリズム:「共通鍵(秘密鍵)暗号化方式」「公開鍵暗号化方式」
■共通鍵(秘密鍵)暗号化システム
・暗号化と復号化に同一の鍵を利用(秘密鍵のみ)
・暗号鍵を共通にしておく
・共通鍵なのでバレたら終わり(鍵の管理が必要)→安全な経路で秘密鍵を共有する必要がある
・(公開鍵暗号化システムに比べて)暗号化の処理は速い
・鍵の管理が大変(鍵が多くなっちゃう。相手の数だけ鍵が必要)
■公開鍵暗号化システム
・暗号化に受信者の公開鍵を利用(公開されているので入手可能)
・復号に受信者の秘密鍵を利用
・鍵をかけるのは誰でも同じ鍵でかけられるが、鍵を解くのは秘密鍵のみ→南京錠は鍵がなくても鍵をかけられるが鍵を解くには(秘密)鍵が必要
・暗号化の処理が遅い(共通鍵暗号方式の100〜1000倍)
■暗号方式
・ストリーム暗号方式:ビット、バイト単位で暗号化。処理が速い。暗号化してもデータサイズが変わらない。→SSLで利用(RC4)
・ブロック暗号方式:一定のブロック(64ビットとか128ビット)ごとに暗号化処理を行う。ストリーム暗号方式より処理が複雑。
■AES(Advanced Encryption Standard)
・DESと比べるとAESの方が優れている
■RSA(Rivest Shamir Adleman)暗号
公開鍵暗号のひとつ。大きな桁数を素因数分解するのは困難なことを利用する。
■楕円曲線暗号(Elliptical Curve Cryptosystem:ECC)
公開鍵暗号のひとつ。RSAよりも計算が速い。RSAよりも短い鍵で同程度の暗号強度を確保。
■ハイブリッド暗号(平文は共通鍵で暗号化。鍵は公開鍵で暗号化)
1. 平文(一般的に長い)を共通鍵で暗号化。
2. 鍵(共通鍵)(一般的に短い)を受信者の公開鍵で暗号化。
3. 暗号文(1)と暗号化した共通鍵(2)を送る
4. 共通鍵を受信者の秘密鍵で復号
5. 復号した共通鍵で暗号文(1)を復号
■デジタル署名:目的
・公開鍵暗号化システムを応用した技術
・メッセージが特定の個人から送られたことを確証することが目的
1.データのインテグリティ:平文が改ざんされると平文から算出されるハッシュ値が異なる(ハッシュ関数:入力データを基に固定長の擬似乱数(=ハッシュ値)を出力する関数)
2.認証:デジタル署名は秘密鍵所持者(=送信者)に限られる。→送信者本人であることが確認できる。
3.否認防止:このデジタル署名を作れるのは秘密鍵所持者(=送信者)しかいないため自分は送っていないと言い逃れできない。
■デジタル署名:平文は暗号化しない(メールなどで使う)
1.平文(P)の文書データにハッシュ関数を用いハッシュ値(H1)を算出する
2.送信者の秘密鍵(SK)でハッシュ値(H1)を暗号化する(CH1)
3.平文(P)と暗号化されたハッシュ値(CH1)を受信者に送信する
4.受信者は1のようにして平文よりハッシュ値(H2)を算出する
5.受信者は送付された暗号化されたハッシュ値(CH1)を送信者の公開鍵(PK)で復号化する(H3)
6.算出されたハッシュ値(H2)と復号されたハッシュ値(H3)が等しければ受信文書が送信者より送付されたことが証明される。
■デジタル署名:平文も暗号化する(通信内容暗号化:SSLなどで使う)
1.平文の文書データ(P)にハッシュ関数を用いハッシュ値(H1)を算出する
2.送信者の秘密鍵(SK)でハッシュ値(H1)を暗号化する(CH1)
3.[ 平文(P)と暗号化されたハッシュ値(CH1) ] を更に受信者の公開鍵で暗号化する
4.3.を送信する(メッセージ全てが暗号化されているので途中の人が見られない)
5.受信者は[ 平文(P)と暗号化されたハッシュ値(CH1) ] を受信者の秘密鍵で復号する(PとCH1になるはず)
6.2で暗号化されたハッシュ値を送信者の公開鍵で復号しハッシュ値(H2)を得る
7.5で復号された平文の文書データ(P)にハッシュ関数を用いハッシュ値(H3)を算出する
8.6で得たハッシュ値(H2)と7で得たハッシュ値(H3)を比較する
■公開鍵インフラ(Public Key Infrastructure:PKI)
・公開鍵インフラ(PKI)とは、公開鍵を安全に配布するため、信用ある機関により公開鍵の認証、配布、公表、保守、取消を行うことで公開鍵暗号化システムの安全性や信頼性を維持するスキーム。以下のような役割が必要。(信用されることが必要)
1.認証局(CA:Certificate Authority):技術面を保証
・公開鍵の所有者としてユーザの真性正を検査する
・ネットワーク上のユーザの身元証明書・暗号化に使う公開鍵から構成されるデジタル署名を発行
2.登録局(RA:Registrarion Authority):社会面を保証
・ユーザからの証明書発行依頼を検証し、認証局に発行を勧告する機関(認証局に付随)
3.証明書失効リスト(CRL:Certificate Revocation List):発行後、有効期限内に無効になったディジタル証明書を認証局が公開。
4.認証局運用規程(CPS:Certification Practice Statement):電子証明書を発行する発行局が採用する運用規定を定義する文書
■SSL(Secure Socket Layer)
・SSLはインターネット上で情報を暗号化して送受信するプロトコル。(安全な通信)
・秘密鍵と公開鍵の暗号プロセスを組み合わせて利用する。
・機密性、正当性、否認防止、完全性(インテグリティ:改ざん防止)の機能を提供
参考:ベリサイン サーバIDとSSL(セキュア・ソケット・レイヤー)暗号化通信|あなたの大切な情報を守る「SSL」という技術|日本ベリサイン
■IPsec(IP Securiy Protocol)
・IPsec(Security Architecture for Internet Protocol、アイピーセック)は、暗号技術を用いて、IP パケット単位でデータの改竄防止や秘匿機能を提供するプロトコルである。( IPsec - Wikipedia )
・AH (Authentication Header) :IPパケットに挿入するメッセージ認証用ヘッダ。認証および改竄防止機能を提供する。データそのものは暗号化されないので、盗聴防止には利用できない。( IPsec:AH - Wikipedia )
・ESP(Encapsulated Security Payload):IPパケットのデータを秘密鍵で暗号化するスキーム。暗号化と認証を行う。
( IPsec:ESP - Wikipedia )
・ESPプロトコルではIPパケット・レベルでの暗号化を規定している。トンネリング・モードとトランスポート・モードの2方式がある。トンネリング・モードは,IPパケットをヘッダーごと暗号化する手順。トランスポート・モードは,IPパケットのデータ部だけを暗号化する。( 「IPsec」とは:ITpro )