インターネットでの電子メールでは、インターネット取引でのクレジット番号や第三者には秘密にしたい内容のものがあります。ところがインターネットでは盗聴、改ざん、なりすましなどの危険が多くあります。それを防ぐために暗号・電子署名・認証などの方法があります。その概要を理解します。
実社会との比喩でいえば、次のようになります。
実社会 電子メール セキュリティ
はがき 平文メール 第三者の盗聴・改ざんの危険
封書 暗号化 第三者への秘密が保たれる
実印 電子署名 送信者が本人であることの証明
印鑑証明 認証 実印が本人のものであることを第三者が証明
配達証明 手段なし
第三者には解読されずに文書を送るためには、文書を暗号化するのが適切です。暗号化の方式は歴史的に区分すると、次のようになります。
古典的暗号に対して鍵の概念が明確になりました。あるビット列を用いて暗号化/復号するアルゴリズム(手順、数学的方法)を公開し、そのビット列を鍵として秘密にすればよいという考え方です。ドアの鍵ではメカニズムは周知だが、鍵は特定のドアにしか使えないし、特定の鍵をもっているのは当事者だけだというのに似ています。
ドアを閉める鍵と開く鍵は同一形状であるように、暗号化する鍵(ビット列)と復号する鍵(ビット列)は同一の暗号方式を共通鍵暗号といいます。
詳細:共通鍵暗号方式
暗号化で用いる鍵と異なる鍵で復号できる(ドアを閉める鍵と開く鍵が異なる)アルゴリズムが発見されました。その一方は秘密鍵にするが、他の鍵は公開鍵として誰に知られてもよいのです。例えば送信者Aが受信者Bに暗号文を送る場合、AはBの公開鍵で暗号化し、BはBの秘密鍵で復号できます。第三者であるCも(Aと同様に)、Bの公開鍵は知っているが秘密鍵を知らないので、Aからの暗号文を入手しても復号できないという仕組みです。
共通鍵暗号方式では、鍵をメールに同封したら第三者に漏洩する危険性があるし、多数の相手がいる場合は秘密にする鍵の個数が多くなり管理が困難になります。公開鍵暗号方式はその欠点が解消されますので、特にインターネット取引など相手が不特定多数の場合に適しておいます。現在では、公開鍵暗号方式が主流になっています。
詳細:公開鍵暗号方式
郵便では、送信者Aが本人である(なりすましをされていない)ことを証明するには、文書に実印を押し、それがAの実印であることを証明する印鑑証明を添付します。その実印に相当するのが電子署名で、Aの公開鍵を通知することです。
詳細:電子署名と公開鍵暗号方式
また、あらかじめAは第三者機関である認証局に公開鍵を登録しておき、受信者BはAの公開鍵から認証局の認証を確認することによって、印鑑証明に相当する機能が得られます。
この電子書名・認証が実印・印鑑証明と同じ法的根拠になることが「電子署名法」で定められています。
詳細:電子署名の認証
公開鍵暗号方式は共通鍵暗号方式の欠点を解消しますが、暗号化や復号にコンピュータに多大な負荷かかり、長文には適しません。それで、両者をうまく組み合わせた方式、しかも電子署名も含めた方式が求められます。それをハイブリッド暗号方式といいます(多くの場合、この方式を含めて公開鍵暗号方式といいます)
この方式では、ハッシュという方法により、暗号化した後で改ざんされていないかどうかを確認することができます。
詳細:ハイブリッド暗号方式
PKI(Public Key Infrastructure)とは、文字通りには「公開鍵基盤」であり、狭義には効果的な公開鍵の仕組みに関する技術ですが、広義(このほうが一般的)には、公開鍵暗号方式、電子署名、認証の仕組みなど、インターネットで安全な通信ができるようにするための環境を整備する総合的な技術や環境を指します。
電子政府推奨暗号とは、政府が電子システムを調達する際に使用を推奨する暗号方式です。技術的に安全性が確認された暗号方式を政府が示す性格もあり、「日本の標準暗号」でもあります。
CRYPTREC(Cryptography Research and Evaluation Committees)は、電子政府推奨暗号の安全性を評価・監視し、暗号技術の適切な実装法・運用法を調査・検討するプロジェクトです。暗号分野の有識者で組織され、内外の暗号方式を調査して、安全性及び実装性能が確認され、市場における利用実績が十分であるか、今後の普及が見込まれると判断された方式を電子政府推奨暗号リストとして公表しています。
公開鍵暗号、共通鍵暗号、ハッシュ関数、暗号利用モード、メッセージ認証コード、エンティティ認証について、それぞれ複数の方式をあげています。
電子政府推奨暗号リスト以外に
・推奨候補暗号リスト(安全性・実装性能は確認されているが、未だ採用実績が不十分なない暗号技術)
・運用監視暗号リスト(解読リスクが高まり推奨を取り消した暗号技術)
も示されています。