すべてを支える「暗号」数理 (1)

ビットコインは「暗号通貨」だ、と書きました。暗号化することで、取引する当事者だけが中身を読み取れるようになっています。ビットコインは通貨そのものが暗号で成立しているものですが、現在のネットワーク上での取引は、ほとんどすべて暗号が使われています。別のいい方をすれば、「暗号が解けないこと」がコンピュータを介したすべての取引を支えているのです。

これは、ビットコインに限ったことではありません。パソコンで通販サービスを使うときにも、メールを見るときにも、クレジットカード会社と庖舗の間で取引情報がやりとりされるときにも、銀行とATMの間で口座情報がやりとりされ、現金が引き出されるときにも、「暗号技術」によって、データの守秘と複製防止が図られています。強固な暗号技術がなければ、いまの社会は成り立ちません。ビットコインもその恩恵を受ける存在のひとつです。

これまでの暗号は、ある特定のルールに則って文字や数字を別のものに置換する方法が主流でした。どういう置換がーおこなわれているかを知らなければ、元の情報を知ることはできません。たとえば「IBM」を「HAL」にするような「文字をひとつずつ前にずらす」というルールで暗号化されたものは、そのルールを知っている人になら簡単に元の情報を理解できます。文字の置換方法=暗号の強きであり、その複雑さ・むずかしさが高度であるほど、安全度が高まります。

しかし現在は、そうした「置換方法のむずかしさ」で秘密を守る暗号は、ほとんど使われなくなりつつあります。どんなにむずかしい暗号をつくったとしても、置換方法の情報が漏れると、暗号が他人に読み取られてしまうからです。

置換方法、というと耳慣れない言葉ですが、暗号においては「復号化の手法」と「秘密鍵」と呼ばれます。暗号を解いてもらうためにはそもそも、秘密鍵を、情報を知ってもらいたい人に渡さなければなりません。その過程で秘密鍵が他人に漏れる可能性は高く、暗号にとって大きな弱点となります。秘密鍵型の暗号は、古くはローマ時代から1970年代まで使われていました。その問、国家聞では暗号通信の秘密鍵やその手がかりを求め、水面下での密かな争いが続いていました。古いスパイ映画や戦争映画で描かれている諜報戦はそういう世界です。