暗号というと,秘密に通信する手段を想像する人が多いと思いますが, ここでいう暗号とは広義の意味の暗号のことで,多くの話題を含む分野を指します.主な話題としては,公開鍵暗号,ディジタル署名,ゼロ知識証明,マルチパーティ・プロトコル,秘密分散,ハッシュ関数,疑似乱数生成,共通鍵暗号,量子暗号などがあります.暗号はそのもの自体おもしろいのですが,さらに興味深いことに計算複雑さの理論,情報理論,あるいは数論と密接に関わっています.例えば,一方向性関数が存在するか,すなわち x から f(x) を計算するのは簡単だが f(x) から x を求めるは難しいような f が存在するかという問題は計算複雑さの本質的な部分に関わってきます.
暗号理論の分野は上記のような多くの話題からなる上に,それぞれの話題についても安全性の証明といった理論的な内容から高速な計算機実装といった応用的な内容まで幅広い内容を含みます.現在,暗号の分野は論文の数も研究者の人口も多いです.研究の進め方の一例としては,対象とする話題を一つ決め (例えば公開鍵暗号),さらにその話題の中で対象を一つ決め (例えば安全性の関係),そこを調べていくことです. また,研究を進めていくうえで役立つと思われる知識としては,代数系,アルゴリズムとデータ構造,計算複雑さの理論,確率と統計の基礎,情報理論などがあります.
以下では,本研究室で主に取り組んでいるテーマのいくつかを紹介します.
公開鍵暗号の安全性
公開鍵暗号は1976年にDiffie, Hellmanによって概念が提案され, 1978年にRivest, Shamir, Adlemanによって具体的実現方式が初めて提案されたシステムです.この公開鍵暗号の概念について簡単に説明します. 公開鍵暗号とは,公開鍵と秘密鍵の二つの鍵を使ってデータの暗号化,復号化を行なう方式です.公開鍵は暗号化専用の鍵であり,復号化を行うことはできません.また,公開鍵で暗号化したデータはそれに対応する秘密鍵でしか復号することができません. まず受信者Bobは公開鍵と秘密鍵のペアを用意し,公開鍵をだれでも見られるところに置きます.送信者AliceがBobにデータを送りたい場合は,Bobが公開している公開鍵をつかって暗号化を行ない,これをBobに送信します.そしてBobは自分の秘密鍵で復号化を行ないます.このとき,誰かが盗聴していたとしても,秘密鍵をもっているBob以外は暗号を解読できないというわけです.
次に安全性です.安全性といっても,いろいろな観点があります. 例えば,暗号は通信内容を隠して送ることが目的です.したがって,暗号文から平文がわからないということが重要です.また,暗号文から平文の内容を知ることができなくても,暗号文をうまく改ざんすることで,送ろうとした内容と違ったことが送られてしまうのも困ります.公開鍵暗号の安全性の分野は,どのような公開鍵暗号が,どのような安全性を満たすのか,ということについて研究する分野です.
ディジタル署名の安全性
電子化されたデータに承認印を押したい場合を考えます.例えば,印鑑パター ンの画像をデータに添付するのはどうでしょうか.これは問題が起こります.なぜなら,一度印鑑パターンを受信した人は,その後自由に他の文書にその印鑑のパターンの画像をつけることができてしまうからです.つまり,承認印付きの文書をいくらでも偽造できてしまうのです. よって,電子化された世界では新たな技術が必要となります.それがディジタル署名です.ディジタル署名の実現には,公開鍵暗号が有効です.簡単にいうと,公開鍵暗号の秘密鍵を使って署名をし,公開鍵を使って正当性を検証することになります.一般的に,文書に対して署名が偽造できないとき,ディジタル署名が安全であると言います.ディジタル署名の安全性の分野は,どのようなディジタル署名が,どのような安全性を満たすのか,ということについて研究する分野です.
量子計算暗号と量子暗号プロトコル
量子コンピュータは,1985年にDeutschにより提案・定式化された,量子力学の基本原理に基づく新しい計算モデルです. ちなみに現在のコンピュータはニュートン力学に基づく計算モデルだと考えられます.1994年にはShorにより,この量子コンピュータを用いると素因数分解や離散対数の計算がが多項式時間でできることが示されました.このことから,量子コンピュータが実現されれば,RSA方式をはじめとする現在広く使われているほとんどすべての公開鍵暗号は破られてしまうことになります.
よって,量子コンピュータが実現されても安全である公開鍵暗号についての研究は重要だと思われます.また,量子原理を用いた暗号プロトコルや情報理論についても研究されています.量子計算・通信では,量子力学の基本原理がとても単純な形でモデル化されていますので,研究をしていく上で量子力学の知識は特には必要とされません.ただし量子の世界の感覚はある程度必要となってきますが,これは研究を行なっていくなかで自然と身に着いてくるものだと思います.