素数コラム
ネットショッピングでカード番号を入力したり、ウェブサイトに安全につながったりするとき、裏側では暗号が使われています。その代表的な仕組みの一つ「RSA暗号」は、素数の性質を利用しています。
61 × 53 を計算するのは、筆算ですぐにできます(答えは 3233)。では逆に、「3233 はどんな2つの素数の掛け算でできている?」と聞かれたらどうでしょう。小さい素数から順に割っていけば見つかりますが、少し時間がかかります。
この差は、数が大きくなるほど極端になります。数百桁の素数を2つ掛けるのはコンピュータなら一瞬ですが、その結果から元の2つの素数を見つける(素因数分解する)のは、今のコンピュータでは現実的な時間ではできないと考えられています。
「誰でも鍵をかけられるのに、開けられるのは本人だけ」という、郵便ポストのような仕組みが、素数のおかげで実現しているのです。
2つの素数の掛け算でできた数を、数学では「半素数」といいます。RSA暗号の n は、まさにこの半素数です。素数占いで、誕生数が2つの素数の掛け算になる人を「ふたつ星」タイプと呼んでいますが、実はインターネットの安全を支えている数と同じ形なのです。
将来、十分に大きな量子コンピュータが実用化されると、大きな数の素因数分解が速くできるようになるかもしれないと考えられています。そのため、素因数分解の難しさに頼らない新しい暗号(耐量子暗号)の研究と導入も進められています。