ペアリング暗号

ペアリング暗号とは, 2000年頃に(多分日本で初めて)ひっそりと産声を上げ, 近年世界中でさかんに研究されている暗号技術です. ここではその理論や歴史, 応用例(のごく一部)について触れたいと思います.

登場予定キーワード : 公開鍵暗号, 離散対数問題, Diffie Hellmann問題, 楕円曲線, ペアリング, IDベース暗号, 不正者追跡, タイムカプセル暗号, PKI, DLP, DHP, ECDLP, CDHP, DDHP, elliptic curve, pairing, IBE, traitor tracing, timed-release cryptography

なお, 内容については十分注意はしますが, 間違っていても責任は負えません. また主観も入ってる気がします. 質問, 疑問, 突っ込み歓迎(BBSかメールにて).

ここで書こうと思っていた内容はまとめて本になりました(『クラウドを支えるこれからの暗号技術』). このページは途中で止まっているのでそちらを参照してください.


内容予定
雑談

のっけから私事で恐縮ですが1999年の秋頃, 暗号の勉強したいなと思った私は, 近所の大学にいらした笠原先生境先生のゼミにお邪魔させていただくことにしました.

数学科だった私は「楕円なんて暗号にどう使うんかいな」と思っていたので, 『楕円曲線暗号』(イアン・F・ブラケ他)の輪講(みなで読むこと)をお願いしたのです. 私が主に数学の部分を説明する代わりに, ゼミの人に暗号を基礎から教えていただこうというわけですな.

その中でWeilペアリングという写像(関数みたいなもの)が, ある種の暗号の攻撃に使われる話(MOVリダクション:そのうちに説明予定)が出てました.

Weilペアリング自体は『The Arithmetic of Elliptic Curves』(Silverman)などに載っている普通(?)の写像なのですが, 「うまいこと使うなあ」と思ったものです.

Galoisコホモロジーや完全系列が出てきたのではりきってた気がする. 工学部の方にはきつい部分があったかも. すんません.

突如現れた技術用語はさておき, 世の中は「ペアリングは暗号の攻撃に使うテクニックだ」という風潮だった(多分)と思ってください.

発端

そんな中, 「ペアリングを暗号自体に使えるのでは」という話がゼミにいらした大岸さん中心にでてきました. ペアリング暗号, IDベース暗号の出発点ですね. 面白いなあと, 安全性の根拠を考えるお手伝いをしたりしました. しかし, どういう仮定を置くべきか, とても難しかったです(今でも問題).

他に応用例は無いかなと思いつつ, のんびりやっていたので(「午後のこ~だ」も作ってたし)早一年. 2000年の師走, 「SCIS申し込んだから(光成さんも何かしましょう)」という神の声. 締め切りまで2週間. がびょ~ん, と慌ててネタを考える. 去年の予稿集をパラパラめくって, はたと目がとまった「不正者追跡」. 「これだ!」と急いで原稿を書く(笑).

ま, 「不正者追跡」って言葉を初めて見た人間がまともなものを書ける訳は無く(つっか, 「PKIって何?」って質問してた記憶が), ショボイものでしたが漸く本気で考えるようになったわけですな. そのときのネタを押し進めてIPA未踏ソフトに参加したりしたわけですから, きっかけなんてそんなものです.

強制されるの嫌いな癖に, 強制されないと動かないやつ. よい子はまねしちゃいけません.
広がり

ゼミの人たちで何度か発表してましたが, いまいち受けがよくなく(明確な安全性の議論をしてなかったせいもある...あ, でもtraitor tracingはもう少し反応があってもええんちゃうかと思ってましたが), そうこうしてるうちにBonehさんの記念的論文「Identity based encryption from the Weil pairing」がでて「ペアリングは暗号構築にも使えるんだ」と認識され一気に広がりました*. 一時は猫も杓子もって感じで食傷ぎみでしたが, 最近は落ち着いたのかな.

*そんなとき, 私はMPEGとか組み込みLinuxとか新人研修とかやってました. タイミングの悪いやつ(苦笑).
1st:2005/10/29, last update:2016/08/29

御意見は光成滋生<herumi@nifty.com>までお願いします