4. そうだったんですね、送信ボタン〜素因数分解〜 《オトナのための中学数学》
記事:吉田健介(READING LIFE編集部公認ライター)
「なあなあ、今日の授業理解できた?」
「ああ、余裕」
「俺も! 今日の計算は大丈夫だ。あれくらいなら簡単にできる」
「素因数分解…… 名前は格好いいよな」
「確かに。何かの魔法みたいな名前」
「けど、素因数分解って将来役に立つ?」
「さあ、単なるかけ算だもんな。ま、関係ないよ。テストはいけるでしょ」
素因数分解。懐かしい響き。
素数に分解するのだ。かけ算を使って。
レゴブロックをパーツに分解するように、素数というパーツに振り分けるのだ。
素数とは2,3,5,7…… という数字。
自分の数でしか割れない数だ(1は含めない)。
例えば、「4」だと、自分の数の「4」でも割れるが、「2」でも割れてしまうので却下。これは素数ではない。
素因数分解とは、数字を素数だけで表現すること。完成したパズルを、ピースに分解する作業のこと。
この素因数分解だが、1歩外へ出ても、素因数分解の素の字すらお目にかかることはない。
確かに数学とは、裏方的な役割が多い。連立方程式にしかり、平方根にしかり。なかなか目に見えにくいものではある。
しかし、一度見方を知ると、スマホのGPSで連立方程式を感じたり、コピー用紙に平方根を見出したりと、見えてくるものがある。顕微鏡でマクロの世界を覗くように、新しい発見がある。
この素因数分解も、その1つである。
ではどこで使われているのか。
実は、超お世話になっている。今やこれがなくては生活できないくらいのレベルに。むしろ、この仕組みが崩壊したら、世の中の秩序は乱れ、混乱と混沌の世界になってしまうほどに。この表現は大袈裟だろうか…… いや、あながち飛躍でもない気がしている。とにかく、どえらいことになる。パニックになるに違いない。
私たちの世の中は、この素因数分解をベースとして、生活が組み立てられている。そう言っても過言ではない。この仕組みがあるからこそ、あれができたり、これができたり……
「ただいま〜。遅くなっちゃった。晩ご飯まだだよね…… もうスーパー閉まっているしなー」
「大丈夫大丈夫、コンビニがあるし」
みたいな感じ。
コンビニありき、素因数分解ありき。
この素因数分解、実は「暗号」として活用されているのだ。
「暗号……?」
そう暗号。
名探偵コナンやルパン3世や、スパイ映画に出てくるような暗号。
ではこの暗号はどういった場面で使われているのか。
それはデータのやりとりだ。
身近な例で言うと、LINEやSNSのメッセージ。
「今晩遅くなります!」
「りょーかいー」
例えば、こんなやりとりをしたとする。
これらの内容は、そのまま相手に送られるわけではない。
つまり、「今晩遅くなります!」という文は、数字に変換される。プチプチで荷物を包んで、段ボールで梱包するように。安心に安全に、途中の衝撃に耐えれるように。
「お届け物でーす」
届けられた荷物は、相手に渡り、段ボールの箱からは「今晩遅くなります!」というメッセージを受け取ることができるわけだ。
シンプルに言えば、このやりとりがメッセージの送受信に使われている。
ただ、これだけでは事故や盗難で荷物が奪われてしまう可能性がある。途中で中身を盗まれて、内容が第3者に漏れてしまう可能性がある。これを防ぐために鍵をかけるのだ。素因数分解を使って。
11×19=209
この式(素数×素数)、計算自体はそこまで難しくない。紙と鉛筆さえあれば、容易に計算できる。スマホの計算機能でも構わない。とにかく、簡単にできる。
が、「209から元に戻しなさい」と言われたらどうだろうか。
「えーと、ちょっと待ってね。使っていいのは素数だけでしょ。うーん……」
少し時間がかかるはずだ。少なくとも、11×19を解くよりも。
この仕組みを使うのだ。つまり、計算は簡単。戻すのは難しい。これが素因数分解を使った暗号だ。
RSA暗号(公開鍵暗号システム)
登場して約40年になるが、いまだにフル活用されている仕組みだ。私たちの生活を厚く支えてくれている。
「今晩遅くなります!」(送信者)
送信ボタンを押した瞬間、受け取り側から鍵が送られてくる。
ちなみにこの鍵は受け取り側のお手製だ。
「今回はそうだなー…… 11×19を使って鍵を作るか」(受信側)
出来あがった鍵には「209」というヒントだけが表示されている。
つまり、答えとなる「11」と「19」を入力すれば、鍵は誰でも解除できるわけだ。
ただし、先ほども述べた通り、209を11×19に戻すのは一筋縄ではいかない。
送信者は、もらった鍵で、メッセージをロックする。
そして、送信ボタンを押してメッセージを送る。
「きたきた!」(受信側)
受け取った相手は、鍵に「11」「19」と入力し、鍵を解除。中のメッセージを取り出して内容を確認することができる。鍵を作った本人だけが答えを知っているので、鍵を外すことは朝飯前。
ちなみに箱の移動中、第3者が鍵を開けることも可能だ。なぜなら、ヒントが表示されているのだから。可能と言えば可能。ま、解読できるものなら……
「11×19」は簡単。だが「209」から「11×19」に戻すのは難しい。
この仕組みを使ったRSA暗号。シンプルなようで、硬い鍵。
「ちょっと待って、コンピューターを使って、解読したら何とかなるんじゃないの?」
確かに。おっしゃる通り。鍵にはヒントが付いている。第3者が鍵のヒントを見て、解読することは可能だ。ただし、ヒントが100桁、1000桁になっていたらどうだろうか。
「ま…… でもコンピューターを駆使したらできなくはないでしょ」
そう、できなくはない。ただし、現在の技術で一般PCだと、解読に数百年かかると言われている。スーパーコンピューターを使っても数10年……
つまり、実質不可能というわけだ。
仮に、国家を揺るがすような大事なパスワードがあったとする。
データを送る途中、第3者がそれを見て解読しようとしても、早くて数10年かかる。
パスワードの主は、定期的に番号を変えれば、もはや第3者による解読は不可能だ。
このシステムで、私たちの情報は安心、安全に守られているというわけだ。
実際のRSA暗号はもう少し複雑なのだが、概ねそういうことだと理解してもらって構わない。
もしRSA暗号が突破された場合、どういった事態が考えられるだろうか。
大事なパスワードや個人情報が第3者の手に渡ってしまう。
もしかしたら、誰かを侵害するような情報ですら……
しかし、今の所それは不可能とされている。40年も使われているのだから、その辺りは安心しても良さそうだ。
テスト前、SNSのメッセージにて。
「素因数分解ってどうやるんだっけ?」
「8=2×2×2、素数に分けるやつだよ」
「あー思い出した! OK!」
「健闘を祈る!」
「りょ(了解)」
当たり前のように使っているもの。そんな中に実は数学が隠されている。
送信ボタンを押すとき、素因数分解を感じてほしい。
「送信ー。よし、盗めるものなら、盗んでみろ! ま、大した内容じゃないけど」
❏ライタープロフィール
吉田 健介(READING LIFE 編集部公認ライター)
現役の中学校教師。教師が一方的に話をするのではなく、生徒同士が話し合いながら課題を解決していく対話型の授業を行なっている。様々な研究授業で自らの授業を公開。生徒が能動的に学習できるような授業づくりを目指している。
この記事は、天狼院書店の大人気講座・人生を変えるライティング教室「ライティング・ゼミ」を受講した方が書いたものです。ライティング・ゼミにご参加いただくと記事を投稿いただき、編集部のフィードバックが得られます。チェックをし、Web天狼院書店に掲載レベルを満たしている場合は、Web天狼院書店にアップされます。
★10月末まで10%OFF!【2022年12月開講】人生を変えるライティング教室「天狼院ライティング・ゼミ《土曜コース》」