2018-2019-2 20189206 《密码与安全新技术专题》 第三次作业
作者:互联网
学号 2018-2019-2 《密码与安全新技术专题》第三次作业
课程:《密码与安全新技术专题》
班级: 1892
姓名: 王子榛
学号:20189206
上课教师:金鑫
上课日期:2019年2月25日
1.本次讲座的学习总结
基于深度学习的密码分析与设计初探
人工智能
人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。同时,人工智能所涉及的领域很多,机器学习只是其中的一个研究方向。
由上图可以看到,人工智能的领域十分广泛,包括
- planning and scheduling 规划与调度
- Expert System 专家系统
- 专家们的知识——即解决问题的方法与方式,可被保存和习得,它可被保存放在计算机设备中,并可被别人需要时使用。在人工智能中,专家系统是模拟人类专家决策能力的计算机系统。专家系统旨在通过知识体系推理来解决复杂问题,主要表现为if-then规则而不是传统的程序代码。
- multi-agent systems 多代理体系或自组织系统
- 是多个交互的组成的计算机系统的智能代理。多代理系统可以解决单个代理或单个系统难以或不可能解决的问题。智能可以包括方法,功能,程序方法,算法搜索或强化学习。
- Evolutionary Computation 进化计算
- 在计算机科学领域,进化计算(Evolutionary Computation)是人工智能(Artificial Intelligence),进一步说是智能计算(Computational Intelligence)中涉及到组合优化问题的一个子域。其算法是受生物进化过程中“优胜劣汰”的自然选择机制和遗传信息的传递规律的影响,通过程序迭代模拟这一过程,把要解决的问题看作环境,在一些可能的解组成的种群中,通过自然演化寻求最优解。
- Fussy Logic and Rough Set 粗糙逻辑模糊集
- Knowledge Learning
- Knowledge Representation 知识表示
- 知识表示(knowledge representation)是指把知识客体中的知识因子与知识关联起来,便于人们识别和理解知识。知识表示是知识组织的前提和基础,任何知识组织方法都是要建立在知识表示的基础上。知识表示有主观知识表示和客观知识表示两种。
- Recommender Systems 推荐系统
- Robotics and Perception 机器人与感知
还有许多其他的方向,在这里不详细介绍,接下来介绍机器学习。
机器学习
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。机器学习的研究人员也是试图从多个样本与标签配对来进行机器学习模型的求解(训练)。
可以看到,机器学习是利用样本x,输入函数中,得到结果y,利用已有样本x y训练F(x) ,能够达到,输入一个不包含在样本集的x'可以得到正确的y',保证正确率能够保持在一个较高的水平,这就是我根据老师上的的理解,只是比较浅的理解,在以后的学习中继续加深我对机器学习的理解。
机器学习与密码分析 |
密码分析与机器学习之间有天然的相似性,在密码分析中,攻击者试图通过推算出密钥来破解密码系统。解密函数是从一个由密钥索引的已知函数空间(解空间)求解出。攻击者的目的是发现解密函数的精确解。如果攻击者能够获取多个获取密文与明文配对来进行密码分析,其与机器学习的概念相似:机器学习的研究人员也是试图从多个样本与标签配对来进行机器学习模型的求解(训练)。所以可以将二者进行结合,研究利用机器学习如何进行密码分析。
机器学习的发展方向 |
从研究趋势发展来看,越来越多的密码分析方法开始使用机器学习技术,例如用于破解DES的遗传算法、用于侧信道分析的支撑向量机算法等。虽然主要的密码系统的算法仍然难以破解,然而机器学习算法通过分析网络流已经取得了很大的进步。
深度学习
深度学习的概念源于人工神经网络的研究。含多隐层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。
深度学习是机器学习中一种基于对数据进行表征学习的方法。观测值(例如一幅图像)可以使用多种方式来表示,如每个像素强度值的向量,或者更抽象地表示成一系列边、特定形状的区域等。而使用某些特定的表示方法更容易从实例中学习任务(例如,人脸识别或面部表情识别)。深度学习的好处是用非监督式或半监督式的特征学习和分层特征提取高效算法来替代手工获取特征。
深度学习的现状 |
可以看到深度学习是属于机器学习中的一个分支,度学习技术掀起了人工智能研究与应用的新一轮浪潮,深度学习技术在多个方面取得了较大突破,其在人工智能系统中所占的比例日趋增大,已经应用于多项实际场景业务系统中。
- 人工神经网络
- 人工神经网络的内部是一个黑盒子,就像我们人类的大脑一样,我们不知道它内部的分析过程,我们不知道它是如何识别出人脸的,也不知道它是如何打败围棋世界冠军的。我们只是为它构造了一个躯壳而已。人工神经网络是受到人类大脑结构的启发而创造,下图是一个人工神经网络的构造图。
- x是神经元的输入,w是对应的权重,影响着每个输入x的刺激强度,网络的结构越复杂,也就是深度神经网络,训练深度神经网络的过程就称为深度学习。
- 深度神经网络( DNN: Deep Neural Networks )也有许多类型,例如:
- 卷积神经网络( CNN: Convolutional Neural
Networks) - 循环神经网络( RNN: Recurrent Neural Networks)
- 生成对抗网络( GAN: Generative Adversarial Networks)
- 卷积神经网络( CNN: Convolutional Neural
深度学习与密码分析
深度学习与密码分析可以分为以下四类:
- 基于卷积神经网络的侧信道攻击
- 基于循环神经网络的明文破译
基于生成对抗网络的口令破解
- 通过测试集训练对抗网络判别口令的正确与错误,可以实现破解口令的功能。
对抗网络
生成式对抗网络(GAN, Generative Adversarial Networks )是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一。模型通过框架中(至少)两个模块:生成模型(Generative Model)和判别模型(Discriminative Model)的互相博弈学习产生相当好的输出。
基于深度神经网络的密码基元识别
随着加密算法的复杂性以及秘钥长度的增加,明文破译的难度也随之增加,发展不如其他方面那么好,基于深度神经网络的密码基元可以识别出加密所使用的的算法。
深度学习的最新进展
- 知识驱动的深度学习
- 深度森林
- 图深度学习
深度学习与密码设计
随着量子技术的快速发展对密码技术产生了极大的威胁和挑战,一旦量子计算机出现,对于离散对数、整数分解的公钥密码体制将被快速攻破,意味着网络信息系统不再安全。“组件化可变密码算法设计与安全性评估”,“密文可编程数据安全存储与计算”,两大问题是解决现在密码技术收到威胁的方法。
对于新密码算法的设计需求将与日俱增,但目前人工设计密码算法耗时耗力,难以适应未来密码算法设计的需求,我们提出————让机器自动设计密码算法
老师在课上以Google的案例:Google's neural networks invent their own encryption
谷歌Brain team团队开始时有三个分别叫做爱丽丝,鲍勃和夏娃的神经网络。每个系统都经过培训,以完善自己在沟通中的作用。Alice的工作是向Bob发送一条秘密消息,Bob的工作是解码Alice发送的消息,而Eve的工作是试图窃听。
最初,神经网络在发送秘密消息方面相当差。但随着他们更多的练习,爱丽丝慢慢开发了自己的加密策略,鲍勃研究出如何解密它。
在场景播放15,000次之后,Bob能够将Alice的密文短信转换回纯文本,而Eve可以猜测形成该消息的16位中的8位。由于每个位只有1或0,这与纯粹机会所期望的成功率相同。
可以看出,深度学习在密码设计方面有着很大的发展前景。
2.学习中遇到的问题及解决
- 问题1:深度神经网络是如何将数据输入到神经网络中,又是如何进行预测的?
- 问题1解决方案:神经网络顾名思义是模仿人类的大脑结构,是一个黑盒子,以前的人工智能都是“假智能”,人类可以清楚地知道它们的内部分析过程,而人工神经网络,无法知道它内部的分析过程,这也正是人工智能的可怕之处,因此世界上成立了不少安全协会来防范人工智能。
对于不同的应用,需要识别的对象可能是图片、视频、语音等,但在计算机中都对应有数字的表示形式。在人工智能领域中,每一个输入到神经网络的数据都被称为是一个特征,即特征向量。神经网络经过训练,接收到这个输入,进行预测。预测是由公式进行计算,通过学习得到当计算结果大于某个值会被预测为某种结果,那么当我们输入数据,根据权重进行计算,如果结果大于某个值,预测为某种结果。
- 问题2:什么是卷积神经网络?
- 问题2解决方案:在课上我们知道卷积神经网络是深度神经网络中的一种,在神经网络与密码分析中,老师讲到基于卷积神经网络的侧信道攻击,所以我通过百度、CSDN博客等方式进行了一定的了解。
卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一。由于卷积神经网络能够进行平移不变分类(shift-invariant classification),因此也被称为“平移不变人工神经网络(Shift-Invariant Artificial Neural Networks, SIANN)”。
卷积神经网络仿造生物的视知觉(visual perception)机制构建,可以进行监督学习和非监督学习,其隐含层内的卷积核参数共享和层间连接的稀疏性使得卷积神经网络能够以较小的计算量对格点化(grid-like topology)特征,例如像素和音频进行学习、有稳定的效果且对数据没有额外的特征工程(feature engineering)要求。
卷积神经网络的层级结构:
- 数据输入层/ Input layer:该层要做的处理主要是对原始图像数据进行预处理,
- 卷积计算层/ CONV layer:这一层就是卷积神经网络最重要的一个层次,也是“卷积神经网络”的名字来源。
在这个卷积层,有两个关键操作:- 局部关联。每个神经元看做一个滤波器(filter)
- 窗口(receptive field)滑动, filter对局部数据计算
- ReLU激励层 / ReLU layer:把卷积层输出结果做非线性映射。
- 池化层 / Pooling layer:池化层夹在连续的卷积层中间, 用于压缩数据和参数的量,减小过拟合。
- 全连接层 / FC layer:两层之间所有神经元都有权重连接,通常全连接层在卷积神经网络尾部。
3.本次讲座的学习感悟、思考等)
作为这几年中非常热门的研究方向,老师在课上用通俗易通的方式带我们初步了解了深度学习和机器学习,打开我们的思路。刚刚开始的时候并不明白什么是机器学习,利用机器学习到底能够做什么事情。我们作为密码专业的学生,机器学习与我们有没有什么可以联系到一起的点。
后来明白,人工智能是一个非常宽泛的概念,每一个研究方式的背后又是一个宽泛的世界。根据老师在课上的介绍,我们可以知道,机器学习在密码方面的研究还可以进一步深入,还有很多方面没有能将二者结合在一起。也是我们在以后的学习中需要探索的。
4.最新研究现状
Fast, Lean, and Accurate: Modeling Password Guessability Using Neural Networks
标签:20189206,机器,卷积,学习,密码,神经网络,2019,2018,深度 来源: https://www.cnblogs.com/zz-1226/p/10666711.html