開発NOTE

「双線型写像ベクトル空間」という土台づくりから始めました。

今回の「関数型暗号」は双線型写像ベクトル空間という数学的な仕組みを用いた従来にない暗号技術です。双線型写像ベクトル空間という仕組みは言わば暗号開発の土台のようなものです。暗号開発には既存の技術を組み合わせるなど、さまざまなアプローチがありますが、まったく新しい暗号を開発するために、その土台から作り上げたのです。私たち自身の手で暗号用に開拓した数学的仕組みの上でいろいろなことを考え、開発を行う。それはいままで誰もやったことのない新しいことばかりで、開発者にとって非常に刺激的な経験です。現在の暗号技術のトレンドのひとつに「暗号技術の高度化」があります。情報を隠すという暗号本来のコンセプトを超えて、別の機能を付加することです。私たちは「関数型暗号」という切り口で、暗号の高度化に取り組んでおり、アクセス制御や検索可能暗号もその一例です。付加機能の開発やさらなる安全性の向上などに日々取り組んできましたが、その都度感じるのは、双線型写像ベクトル空間という土台の確かさです。研究の成果を従来の方式と比べるたびに、私たちが開拓した数学的仕組みの優位性や大きな可能性を実感しています。

安全性と利便性、それを両立できるのが「関数型暗号」です。

セキュリティーやインターネットの分野は、技術の進歩が目ざましく、5年10年先の正確な予測は困難です。暗号技術はいまの社会だけでなく、将来という未知の環境を見すえ、開発を進める必要があります。それにはどんな小さなリスクも見逃さず、あらゆるシナリオを想定し、数学的に安全性を証明しなければなりません。安全性の評価は実験などで結果がでるものではなく、ある意味目には見えないので、証明が本当に正しいかをいつも反芻しながら、何度も繰り返します。もしどこかに穴があれば、暗号が価値のないものになるからです。暗号技術の第一義の目的は当然安全性です。しかし安全性を高めるために、厳しいアクセス制御などで手間が増えてしまっては、使いづらいものになってしまいます。本来トレードオフの関係にある安全性と利便性をいかにして共に高めていくか。「関数型暗号」は、まさにそのいいとこ取りできる方式なのです。アクセス制御も暗号アルゴリズムに委ね、高いレベルの安全性が保証され、しかも使いやすい。それが「関数型暗号」なのです。

近い将来の実用化に向け、安全性・処理性能・機能の向上に取り組んでいます。

今回の開発で三本柱となるのが、安全性・処理性能・機能です。研究をスタートしたのは4~5年前になりますが、この3本柱を中心に実用化に向け開発を続けてきました。例えば処理性能で言えば、当初より格段に向上しています。情報を守る乱数を減らしても安全性を落とさないアルゴリズムを開発し、暗号文のサイズや復号時間を大幅に改善することに成功しました。また“暗号を安全・便利に使う”技術だけでなく、“鍵を安全・便利に発行する”技術の開発も行なっています。それが「分散型複数鍵発行センター方式」です。従来はセントラルオーソリティーと呼ばれる機関を中心として属性情報を含んだ鍵発行が行われてきました。一元集中型の場合、そこが攻撃されると被害が広範囲におよびかねません。「分散型複数鍵発行センター方式」ではセントラルオーソリティなしで誰もが鍵発行センターになれ、しかもそれぞれのセンターが発行した鍵が一体となって利用できるのです。例えば役所が発行した住民票と企業が発行した在籍証明、この2つがそれぞれ間違いなく本人のものとして紐付けできるのです。今後もまだまだ開発は続きますが、かならずや近い将来「関数型暗号」は社会に貢献する技術になると確信しています。

■処理性能の向上

上:従来のアルゴリズム 下:新しいアルゴリズム