アカウントがハッキングされたり、個人情報が盗まれたりしたことはありませんか?保護すべきデータをお持ちですか?もう心配する必要はありません。マックス・プランク複合物理システム研究所とAxioma Researchの研究者たちは、ハッキングされにくく、かつ覚えやすいパスワードを作成する新しい方法を考案しました。

では、彼らはどうやってそれを実現したのでしょうか?研究者たちは、「非線形ダイナミクス」と呼ばれるものとカオスを組み合わせ、暗号化されたp-CAPTCHA(「p」はパスワードの略)を作成しました。一見複雑そうに聞こえますね。さらに興味深いのは、覚えておく必要があるのはパスワードの一部だけで、残りはJavaアプレットが記憶してくれるという点です。
例えば、防衛関連企業向けの重要なアプリケーションがあり、それを保護・暗号化する必要があるとします。Javaアプレットを使って、まずパスワードを簡単な部分と複雑な部分の2つの部分に分解します。パスワードの簡単な部分をメモしておくと、Javaアプレットは難しい部分のCAPTCHAを作成します。そして、簡単な部分を使ってp-CAPTCHAが暗号化されます。アプリケーションにアクセスするには、パスワードの簡単な部分を入力するだけでp-CAPTCHAが表示されます。これを解釈して画像に表示されている内容を入力すると、ファイルが完全に復号されます。
論文「脆弱なパスワード問題:カオス、クリティカル性、そして暗号化されたp-CAPTCHA」によると、パスワードの2番目の要素は「CAPTCHA画像に変換され、相転移に近い2次元力学系の進化を用いて保護され、標準的なブルートフォース攻撃が無効になる」とのことです。ブルートフォース攻撃は現在無効であるだけでなく、研究者らはAESアルゴリズムと組み合わせることで「ブルートフォース攻撃は現在も、そしておそらく将来も実行不可能になる」と述べています。
パスワードの「簡単な」部分を作成すれば、以前と同等、あるいはそれ以上に推測を困難にすることができます。しかし、攻撃者がJavaアプレットでp-CAPTCHAを生成できた場合、あるいは生成できたとしても、人間による解釈が必要になります。パスワードを最初に作成すると、複雑な数学に基づいたカオス格子状態を作り出す「カオス進化」を用いてp-CAPTCHAが生成されます。これは複雑な言い方をすれば、どんなコンピュータでも解釈が非常に困難になることを意味します。ほとんどのオンラインパスワードハッキングシステムは自動化されているため(そしてコンピュータはCAPTCHAを単独で解釈できないことが多いため)、特にこのように複雑に設計されたパスワードの場合、パスワードの後半部分を毎回解釈できない可能性が高くなります。このようなシステムの仕組みを数学的に確認したい場合は、コーネル大学図書館の出版物をご覧ください(無料でダウンロードできます)。
研究者たちは、この手法は「既存の様々なコンピュータシステムやデバイスに容易に、そして簡単に実装できる」と述べており、既存の手法では不十分な機密データの保護強化に向けた大きな一歩となるだろうと考えている。個人的には、FacebookやGmailなどのウェブサイトでこの技術が利用されるようになることを期待している。
[コーネル大学図書館、Network World経由 / 画像はElizabeth/Table4Five (Flickr)経由]
Twitter で James Mulroy をフォローして、微生物、恐竜、デスレイに関する最新ニュースを入手してください。