Google AI 发明了自己的防窃听加密算法

Google Brain创建了两个人工智能(AI)系统,这两种系统完善了各自的加密算法,保护信息免遭第三个人工智能系统的破解,这第三个人工智能系统在竭力完善自己的方法,以便破解人工智能生成的密码。这项研究很成功:前两个人工智能系统从零开始学会了如何安全地通信。

Google AI 发明了自己的防窃听加密算法

加密系统架构。P =输入的明文,K =共享密匙,C =加密文本,PEve和PBob 为经过计算后得出的明文输出。

Google Brain团队的总部位于加州芒廷维尤城,独立于设在伦敦的Deep Mind,它最初设计了三个相当普通的神经网络:Alice、 Bob和Eve。每个神经网络都被赋予了一个非常明确的任务:Alice的任务是向Bob发送保密信息,Bob的任务是解译这个信息,而Eve的任务则是窃听这个信息并尝试对其进行破译。相对于Eve,Alice和Bob有一个优势,即它们拥有一个共享密钥(也就是对称加密)。

重要的是,这两个人工智能都不会透露它们是如何对信息进行加密的,或是使用的是何种密码技术。它们只被给予了一个损失函数(一个失败条件),随后它们就利用这一损失函数开始工作。在Eve方面,损失函数非常简单,即Alice的原始输入明文和其猜测之间的差距,以对和错二进制表示。对于Alice和Bob,损失函数比较复杂:如果Bob的猜测(也以二进制表示)与原始的输入明文差距过大,即为损失;对于Alice,如果Eve的猜测优于随意猜测,那么即为损失。由此创建了一个生成对抗网络(GAN)。

Alice、Bob和Eve都共享了相同的“组合与变换”神经网络架构,但是它们都被独立预置,除了Alice和Bob的共享密钥外没有其它的联系了。对于Alice,密钥和明文被输入至神经网络的第一层。对于Bob,其获得了密钥和密文。对于Eve,其只得到了密文。第一层被完全连接,因此文本和密钥可实现混合。在第一层之后是大量的卷积层,它们学习对从上一个层那里获得的字节使用函数。它们不知道这个函数可能是什么,仅是不断地进行学习。对于Alice,最后一层负责发出某种密文,而Bob 和 Eve输出的则为明文。

Google AI 发明了自己的防窃听加密算法

在学习期间Bob和Eve的重建误差。我们能够看到Eve开始进行改进,但是Alice-Bob加密方法中的改变让Eve再次出局。

结果……喜忧参半。随着Bob不再重建Alice的信息,部分尝试变成了一个彻底的失败。在大部分时间当中,Alice和Bob设法改进了系统,在这个系统中它们的通讯几乎没有什么错误。在部分测试中,Eve的猜测较随意猜测有所提升,但是Alice和Bob通常会通过改进加密技术进行回应,直至Eve彻底失去机会(见曲线图)。

研究人员没有对Alice和Bob所设计的加密方法进行详细的分析。不过,他们观察到这依赖于密钥和明文。他们表示:“这不单纯是XOR。特别是,输出值常常为不同于0和1的浮点值。”

最后,研究人员Martín Abadi和David G. Andersen表示,神经网络确实能够学习保护它们的通讯,只需告诉Alice评估安全高于一切,并且重要的是,不需要指定某套加密算法就可具有保密性。

除了数据的对称加密,密码学还有很多东西。研究人员称,未来的工作可能会考虑“隐写术”(即将数据隐藏在其他媒质中)和非对称(公钥)加密。对于Eve能否有可能一直充当一个优秀对手,研究人员认为:“虽然神经网络似乎不太可能会变得精通密码分析,但是它们或许在理解元数据和流量分析方面非常有效。”

文章转载自 开源中国社区 [http://www.oschina.net]

上一篇:FAQ系列 | 启用SELinux后,PHP连接MySQL异常


下一篇:《关系营销2.0——社交网络时代的营销之道》一O表示Objective(目标)