Google research lets neural networks devise encryption

Spread the love

Google Brain scientists conducted a study that required neural networks to come up with their own form of encryption to keep their communications secret. In the end, the networks managed to implement an effective form of encryption.

The scientists write in their research that neural networks are not particularly good at cryptography. Still, their research would show that these networks can devise ways to protect their mutual communication from other networks. The researchers assumed a classic scenario in cryptography. Two parties, Alice and Bob, who want to protect their communications from Eve, who intercepts the encrypted texts. The goal was to have Eve reconstruct the plaintext and to allow Alice and Bob to communicate encrypted with as few errors as possible.

The neural networks were not provided with an existing encryption method in advance, but they had to develop a method themselves based on a shared secret key. Alice and Bob both had this key and applied symmetric encryption. The network could “lose” Eve if the difference in bits between his guessed version and Alice’s plaintext was too great. Bob lost if his version of the text differed too much from the unencrypted original. Alice could lose if Eve’s version was better than random guessing. In this way, the scientists wanted to produce ‘optimal’ versions of Alice, Bob and Eve.

It turned out that in the beginning all networks had a high error score, by having about half of the 16bit messages wrong. Up to about ten thousand iterations of steps, Eve was found to be getting better at minimizing errors. After that, however, Alice and Bob were able to nullify Eve’s progress by communicating in a different way, the researchers said. After about fifteen thousand steps, the experiment is almost ready and Alice and Bob communicate almost flawlessly.

The scientists say they have not conducted an exhaustive analysis of the encryption. They did make some adjustments. For example, the encryption appears to depend on the key, because a changed key with a constant unencrypted text produced a different encrypted output. The neural networks would not have just unleashed an xor operation on the text. This is evidenced by the fact that the output often took the form of floating point numbers, rather than just zeros or ones. In their conclusion, the scientists write that neural networks can be useful not only for cryptographic protection, but also for attack scenarios. While neural networks are unlikely to become really good at cryptography, they could be useful for the analysis of metadata and network traffic.

You might also like