インストラクターブログ

サマーウォーズ③~RSA暗号~

こんにちは。学生スタッフのA.S.です。普段はなるほど館の方でたくさんブログを書いています。なるほど館にある①②をご覧いただくとより楽しめると思います。それでは「よろしくおねがいしまぁぁぁすっ!!」

夏と言えばサマーウォーズ①

サマーウォーズ②~ツェラーの公式~

サマーウォーズの要所に深く関わっているRSA暗号について書きたいと思います。現代のインターネットには主にRSA暗号が使われています。使えるくらい安全とされています、今のところは……。詳しくは後述します。

RSA暗号を理解するうえで重要なのが素数です。素数というのは1と自身でしか割れない数を指します。2, 3, 5, 7, 11, ……というやつです。突然ですが、3599は何と何を掛けたものでしょう?実は素数同士の積から掛けられた素数を導くのは時間がかかるのです。答えは59×61でした。RSA暗号では膨大な桁数の素数同士の掛け算を利用して、時間的に解くのが難しいことによって安全性を保っています。

RSA暗号を非常に噛み砕いて説明を試みます。まずあなたは二つの素数p,qを持っています。それらから積nと必要な数k,lを計算して、nとkを公開鍵として公開します。lはあなただけが持つ秘密鍵です。相手はメッセージを数字化し、公開鍵を使って暗号化した数字Cを送ります。あなたはCに秘密鍵を使うことでメッセージを見られるのです。第三者は秘密鍵が分からないのでCを盗み見たとしてもメッセージが分からないというわけです。

さてRSA暗号は、現代のコンピュータで時間的に解くのが難しいことが肝になっていることを分かっていただけたかと思います。しかし計算が圧倒的に早い量子コンピュータの登場によって、RSA暗号は解けてしまうと言われています。これが近年の情報科学のニーズが高まっている理由の一つになっていると思います。

ともかくRSA暗号を秒で解く健二は量子コンピュータ以上なので、おそらく人間ではない何かです。そんな健二が数学オリンピック代表になり損ねたということは……。サマーウォーズの世界は恐ろしいです。

150
なるほど館の「京」展示室