ニュース

Googleのニューラルネットワークが自ら暗号化通信を考案

 米Googleは24日(現地時間)、ニューラルネットワークに自ら暗号化を学習させ、第三者に読み取られないように暗号化通信させる実験に成功したと発表した。

 実験は、「Alice」、「Bob」、「Eve」という3つのニューラルネットワークを用いて行なわれた。AliceとBobの間では通常のネットワークを用いて構築され、AliceがBobに対してデータを送信する。そしてEveにも、AliceとBobのこの通信内容を“盗聴”できるようにした。

 一方で、AliceとBobの間には、Eveには見えないワンタイムパッドを共有。このワンタイムパッドでは、送信ごとに浮動小数点の暗号キーが生成される。AliceとBob双方には、このワンタイムパッドを使って暗号化するよう指示したが、具体的な方法については指示をしていない。共有のワンタイムパッドを使ったXOR(排他的理論和)暗号化が一般的だが、そういった機能の実装については指示しなかった。

 BobとEveには、もちろんこの暗号を解読するよう指示しており、Bobは共有のワンタイムパッドにアクセスできるが、Aliceがどういった暗号化手段を使っているのか分からないため、学習していく必要がある。16bitのプレーンテキストを送信する際に、4,096個の例を用いて機械学習させていったところ、Bobは7,000回を超えた辺りからビットの誤りが急激に低下し、15,000回以降、0に近い値で推移していったのに対し、Eveは最良時でも約5bit、平均して7~8bitの誤りがあったという。

 つまり、Bobは共有のワンタイムパッドから暗号化アルゴリズムを見出し、Aliceから送られた暗号をほぼ解読できたが、ワンタイムパッドが共有されていないEveでは内容を推測することしかできず、解読できなかったわけだ。Googleは、こうした研究結果は、ニューラルネットワークは自身の通信を暗号化するだけでなく、外部攻撃からの保護にも活用できるとしている。

学習の結果、Bobは暗号化の解読にほぼ成功したが、Eveは解読できなかった