注目される暗号の安全性問題(2) | ScanNetSecurity
2024.04.27(土)

注目される暗号の安全性問題(2)

「暗号が破られる」とのセンセーショナルなニュースが時々報じられます。学会等で暗号の攻撃方法(暗号を破る方法)が発見された場合、対象となった暗号が流通している暗号方式であれば殊更その反響は大きくなります。今日暗号は、インターネット社会において無くてはな

特集 特集
「暗号が破られる」とのセンセーショナルなニュースが時々報じられます。学会等で暗号の攻撃方法(暗号を破る方法)が発見された場合、対象となった暗号が流通している暗号方式であれば殊更その反響は大きくなります。今日暗号は、インターネット社会において無くてはならない極めて基本的な基盤技術となっています。本コラムでは暗号の安全性と現実の対応について解説しています。今回は、暗号の基礎、暗号方式について説明します。

●暗号方式の分類

暗号は、暗号鍵と呼ばれる情報(パラメータ)と暗号化の処理メカニズム(アルゴリズム)によって、暗号化の対象とする文書(平文)を暗号文に変換するものです。その暗号鍵の特性の違いによって、秘密鍵(対称鍵)暗号方式と公開鍵(非対称鍵)暗号方式とに分類されます。秘密鍵暗号方式としてはDES,公開鍵暗号方式としてはRSAが良く知られています。また、長いメッセージを圧縮するためのハッシュ関数は、暗号化の補助、ユーザ認証やディジタル署名などに応用されているため、暗号方式の標準化と同様に議論されています。ハッシュ関数は、ハッシュ値(圧縮後の値)から元のメッセージを再現することはできず(不可逆な一方向性関数)、また同じハッシュ値を持つ異なるメッセージを作成することが極めて困難であることが求められます。

(1)秘密鍵(対称鍵)暗号方式

文書(平文)を暗号化する鍵と暗号化された文書を復号化する鍵が同じ(対称)である暗号方式を秘密鍵暗号方式と呼んでいます。暗号化のメカニズム(アルゴリズム)については、公開されていますから、暗号・複合化のための鍵は秘密にしておかなければなりません。また、この暗号文書を送受信するためには、文書の暗号化に使用する秘密鍵を安全に相手に送り、鍵情報を共有する必要があります。暗号化と復号化の様子を図1に従って簡単に説明しましょう。大事な文書を「結奈(ユナ)さん」から「実優(ミユ)さん」に暗号通信で送受信する場合を想定します。送信者である「結奈さん」は、文書を両者しか知らない秘密鍵(KS)で暗号化し、暗号文を「実優さん」に送信します。「実優さん」は受信した暗号文を暗号化した時と同様の秘密鍵(KS)を使い暗号文を復号化して元の文書(平文)にします。

図1参照 : https://www.netsecurity.ne.jp/dl/cipher.pdf

(2)公開鍵(非対称鍵)暗号方式

文書(平文)を暗号化する鍵と暗号化された文書を復号化する鍵が異なる(非対称)暗号方式を公開鍵暗号方式と呼んでいます。この暗号方式では、一つの鍵を秘密にしておき、一方の鍵を公開にすることができます。当然一方の鍵から他方の鍵を作成・推測することが不可能なように作られています。

図1参照 : https://www.netsecurity.ne.jp/dl/cipher.pdf

(3)暗号方式の特徴

秘密鍵暗号方式では、暗号処理の特徴から高速処理が可能であり、長いメッセージの暗号化に向いていると言えます。一方公開鍵暗号方式は秘密鍵暗号方式に比較して暗号化のための処理速度が大きいため、鍵情報や認証情報、署名情報等の比較的短いメッセージの暗号化に適しています。また、秘密鍵暗号方式に暗号通信をする場合、秘密鍵を送受信者同士で共有する必要があります。一方公開鍵暗号方式では秘密鍵の共有は不要な方式です。

そこで、秘密鍵暗号方式の秘密鍵を安全に配送する手段として、事前に公開鍵暗号方式により秘密の鍵情報を暗号化して送ることも一般的に行われています。

(4)ハッシュ関数

ハッシュ関数はメッセージを一定の長さに圧縮する機能を持っています。すなわち任意のメッセージを一定サイズのハッシュ値に「圧縮」するアルゴリズムで、暗号との組み合わせで認証や電子署名機能を効率的に実行するために使われます。安全に認証、電子署名を実現するためのハッシュ関数は、次の性質を持つことが求められます。

・ハッシュ値(ハッシュ関数を使ってメッセージを圧縮した値)から元のメッセージを求めることが困難であること

・あるメッセージと同じハッシュ値になるような別のメッセージを求めることが困難であること

・同じハッシュ値となるような元のメッセージを求めることが困難であること

●暗号が破られるとは

前節で説明しましたように、暗号処理のメカニズムは公開されていますので、暗号文から元の文書(平文)を求めるようとするには、暗号処理時に使用した秘密鍵を求めることです。もちろん鍵の長さは数十ビットとか数百ビットですので、全数の鍵を総当りで試してみて、それらしい文書が求められる鍵を発見することができます(総当り攻撃)。しかし一般には極めて大きな時間がかかり現実的には鍵を見つけることができません。ところが最近では、計算機能力が飛躍的に高度化しておりますし、ネットワークを介して多くの計算機を使った分散処理によって、現実的な時間で秘密鍵を求められてしまう場合が出てきます。さらに暗号研究者たちにより効率的な暗号解読技術の研究が進展しており、総当り攻撃より短い時間で鍵を発見する技術も進歩しています…

【執筆:東京大学 情報セキュリティコミュニティ 副代表 林 誠一郎】

NTTデータ・セキュリティ|セキュリティ対策コラム
http://www.nttdata-sec.co.jp/column/
──
※ この記事は Scan購読会員向け記事をダイジェスト掲載しました
購読会員登録案内
http://www.ns-research.jp/cgi-bin/ct/p.cgi?m-sc_netsec
《ScanNetSecurity》

Scan PREMIUM 会員限定記事

もっと見る

Scan PREMIUM 会員限定記事特集をもっと見る

カテゴリ別新着記事

「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」
「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」

ページ右上「ユーザー登録」から会員登録すれば会員限定記事を閲覧できます。毎週月曜の朝、先週一週間のセキュリティ動向を総括しふりかえるメルマガをお届け。(写真:ScanNetSecurity 名誉編集長 りく)

×