楕円曲線の上にたし算の構造が入って──
加藤教授:……では、ないんです。g2やg3は楕円曲線を一つ一つ決定しているパラメーターのようなものだと思って下さい。
実は1個の楕円曲線を見るのではない。g2とかg3が「動く」ことで、楕円曲線自体も動くのです。楕円曲線の「族」という考え方をすることで、g2とかg3の意味がわかってきますが、ここではそういうことはあまり関係ありません。
楕円曲線としてよく描かれるのでは、こんな感じの形です(グラフを板書する)。
加藤教授:この曲線上に2点あったときに、その2点を通る直線を引く、すると第3の点で交わる。その点をx軸の周りに線対象した時にぶつかる点を「P+Q」とします。
実はこんなふうに「P+Q」という記号を提示すると、ここの上にたし算の構造が入って、普通の計算ができるようになる、すなわち、ふつうのたし算を満たすような性質を持ち始めるのです。
たとえば、「結合法則」というのがあります。(P+Q)+RがP+(Q+R)と等しいというものです。また「交換法則」つまりP+Q = Q+Rという法則もあります。
取材班:ああー(それならば、わかる、という表情)........。
加藤教授:そのほかに大事なことは、普通のたし算の「ゼロ」に類似した点があって、それとPを足しても、変わらないということです。まあ、実は、この「ゼロ」という点はこの図には見えていないのですが........。ともかく、そんな感じで、ここにたし算の構造が入る。
この演算を使って、「点Pの2倍」といったことを考える。ここでいうたし算を、形式的にかけ算に読み換えて、Pの2倍はPの2乗、Pの3倍はPの3乗、というように想定すれば、Pという数の累乗を考えることができます。
そして、それらの「逆」を考えれば、「実数の世界で」対数を考えることができるのです。Pのn乗がQになるという式を逆に解く、という環境ができる。すなわち、Qが与えられたとき、Pという底数の何乗か?を考えることができます。
この問題は実数の対数問題とよく似ているのですが、重要なことは、「解くのがすごく難しい」こと。だからこそ、暗号への応用に使われるのです。
なんとなくわかりますか? だって、こんな難しい図形に難しい構造を入れられて、ここで対数問題を解いてくれ、と言われてもおいそれとは解けない。その「難しさ」に根ざした暗号の考え方が、暗号技術のスペックを上げ、堅牢なセキュリティーを実現させて、電子決済でかなりの大きな額のお金を動かすことができるクレジットカードなどのICチップに使われているのです。