TA的每日心情 | 开心 2016-12-9 18:18 |
---|
签到天数: 85 天 连续签到: 1 天 [LV.6]常住居民II 扫一扫,手机访问本帖
|
最近几年人工智能仿佛打通了任督二脉的武林奇才,正在疯狂地扩张自己的招法技能树。听音辩形下棋玩游戏什么的已经out了,现在 Google 又做出了2个能够自行演进出加密算法的人工智能,从而避免其沟通信息被第 3 个在自我演进破解算法的 AI 侦听——这是全世界从零开始学会安全通信的头两个 AI。这项研究成果叫做《用对抗神经密码术学习安全通信》,是由 Google 的 Google Brain 团队做出来的。Google Brain 是 Google 最初进行人工智能研究的团队,不同于收购过来,做出 AlphaGo 的那个 DeepMind。这项研究的过程大概是这样的, Google Brain 首先准备了三个普通的(不懂加解密)神经网络,分别叫做 Alice、Bob 和 Eve。每一个神经网络都被赋予了一个特定的目标:其中 Alice 的任务是给 Bob 发送一条安全的信息,Bob 则必须尝试对这条信息进行解密。而 Eve 就像是军队对抗中的蓝军角色,它的目标是侦听这条信息然后尝试破解。相对于 Eve,Alice 和 Bob 有一个优势:它们有一个共享密钥(也就是所谓的对称加密)。
整套系统的架构示意图。其中 P 为明文,K 为共享密钥,C 为密文,Peve 和 Pbob 为计算(解密)后的明文输出。
如果这些 AI 用的是现成的加解密算法的话,这项研究就没什么意义了。但实际上这里的前提是所有 AI 事先既都不知道如何进行加密,也不知道使用什么样的加密技术,它们的起点只是一个损失函数(一种衡量损失和错误程度的函数),通过该损失函数来判断自己做得如何,然后不断演进出正确的办法。对于 Eve 来说,它的损失函数很简单,那就是:距离,或者说相似度,这是通过将 Alice 的原始明文与 Eve 猜测的明文逐位进行比较计算出差别来衡量的。距离越小说明相似度越高,距离为 0 则说明猜中。而 Alice 和 Bob 的损失函数则要复杂一点:如果 Bob 的猜测距离原始输入明文太远(同样是通过位差异衡量)则为损失;而对 Alice 来说,如果 Eve 的猜测比随便乱猜的结果好,那就是损失。这样一个生成式对抗网络(GAN)就建立起来了。
虽然 Alice、Bob 和 Eve 采用的都是一样的“混合与转换”神经网络结构,但是它们的初始化都是独立进行的,除了 Alice 和 Bob 采用相同密钥以外,相互之间并没有联系。对于 Alice 来说,密钥和明文是其第一层神经网络的输入,对于 Bob 来说密钥和密文是输入,而 Eve 只拿到了密文。由于第一层神经网络是全连接的,所以文本和密钥可以混合。第 1 层之后是若干的卷积层,这些层会学习利用函数来处理上一层交给自己的那些字位。至于这个函数是什么它们是不知道的,它们只是一边学习一边根据损失函数给出的结果进行调整。对于 Alice 来说,最后一层输出的就是密文,而 Bob 和 Eve 则输出明文——最后是无“损失”的明文。
Bob(红色)和 Eve(绿色)在训练过程中的重构误差。可以看到一段时间之后(5000 到 10000 步之间)Eve 的误差开始减少,但是随后 Alice 和 Bob 改变了加密方法,Eve 的误差又重新开始攀升。
最后的结果好坏参半。一些情况下的运行属于彻底失败,Bob 从未重构出 Alice 的消息。不过大部分时间内,Alice 和 Bob 的确设法演进出了一套错误很少,能。够相互沟通的系统。而在部分测试中,Eve 也显示出了一些比随机猜测更好的改进,但是 Alice 和 Bob 随后改进了自己的加密技术,令 Eve 无机可乘(参见上图)。
至于 Alice 和 Bob 设计的是什么加密算法,研究人员并没有进行详细分析,但是他们在一次训练中观察到这种加密法与明文和密钥都有关系。但是这种关系并不是简单的 XOR(异或)。研究人员称,其输出值往往是浮点数而不是 0 或 1.
研究人员最后得出结论,神经网络的确可以自我学习通信保护,而且只用告诉 Alice 重视保密高于一切即可,更重要的是,这种保密可以在不需要告诉具体采用什么样的加密算法的情况下实现。
当然,加密法并不仅仅只有对称加密一种,研究人员未来还将研究速记式加密(将数据隐藏在其他媒体如图像当中的加密法)以及非对称加密。至于 Eve,研究人员认为,神经网络成为密码分析专家的可能性不大,但是用来进行元数据和流量分析却是一把好手。
|
|