您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据挖掘与识别 > 第04讲加密与认证加密技术
2020/3/22主讲杨照峰E-mail:yiyangxf@sohu.com计算机网络与信息安全技术2020/3/22(一)加密技术第4讲加密与认证技术2020/3/22信息的加密变换是目前实现安全信息系统的主要手段,通过利用不同的加密技术可以对信息进行变换,从而实现信息的保密和隐藏。信息保密技术是信息安全的基础内容,本节从密码体制开始,介绍加密算法在信息系统中的应用。2020/3/22加密技术概述信息安全主要包括系统安全和数据安全两个方面。系统安全一般采用防火墙、防病毒及其他安全防范技术等措施,是属于被动型的安全措施。数据安全则主要采用现代密码技术对数据进行主动的安全保护,如数据保密、数据完整性、身份认证等技术。2020/3/22加密技术概述密码学是研究数据的加密、解密及其变换的学科,涵盖数学、计算机科学、电子与通信学科。密码技术不仅服务于信息的加密和解密,还是身份认证、访问控制、数字签名等多种安全机制的基础。密码技术包括密码算法设计、密码分析、安全协议、身份认证、消息确认、数字签名、密钥管理、密钥托管等技术,是保护大型网络传输信息安全的唯一实现手段,是保障信息安全的核心技术。它以很小的代价,对信息提供一种强有力的安全保护。密码技术是保护信息的保密性、完整性、可用性的有力手段,保证通信及存储数据的安全,还有效地被用于消息认证、数字签名等,防止种种电子欺骗等。简单的讲,密码学就是密码技术的一门学科。2020/3/22加密技术概述密码学的分类(1)按发展进程分:古典密码、对称密钥密码、公开密钥密码的发展阶段。(2)按密钥管理的方式可以分为两大类:对称密钥算法与非对称密钥算法。(3)按加密模式分:序列密码和分组密码两大类2020/3/22密码算法分类密码算法基于密钥保密性基于算法保密性基于保密的内容对称密码算法非对称密码算法分组密码算法流密码算法明文处理方法加密技术概述对称密码学:DES-》AES非对称密码学:RSA-》ECC2020/3/22加密技术概述加密技术的基本思想就是伪装信息,使非法接入者无法理解信息的真正含义。伪装就是对信息进行一组可逆的数学变换。我们称伪装前的原始信息为明文,经伪装的信息为密文,伪装的过程为加密。用于对信息进行加密的一组数学变换称为加密算法。为了有效控制加密、解密算法的实现,在这些算法的实现过程中,需要有某些只被通信双方所掌握的专门的、关键的信息参与,这些信息就称为密钥。用作加密的称加密密钥,用作解密的称作解密密钥。2020/3/22加密技术概述密码学的基本概念密码学是研究对信息进行编码实现隐蔽信息的一门学科。明文:指没有被加密的消息。通常用P或M表示。密文:指加密过的消息。通常用C表示。加密:将明文变换成密文的过程。解密:将密文变换成明文的过程。密码算法:在加密、解密过程中分别采用的一组规则。分为加密算法(E)和解密算法(D)。密钥:可以看成密码算法的参数,用来控制加、解密的操作。分为加密密钥Ke和解密密钥Kd。现代密码学的一个基本原则:一切秘密寓于密钥之中。即密码算法是公开的,真正需要保密的是密钥。2020/3/22保密和认证借助加密手段,信息以密文的方式归档存储在计算机中,或通过数据通信网进行传输,因此即使发生非法截取数据或因系统故障和操作人员误操作而造成数据泄漏,未授权者也不能理解数据的真正含义,从而达到了信息保密的目的。保密通信系统模型加密变换C=Ek1(m)明文m发送者A信息传送信道密文c明文m接收者B解密变换m=Dk2(c)非法接入者直接注入密码分析搭线窃听窃听者明文m’加密器解密器密钥传送信道密钥k1密钥k22020/3/22保密和认证防止消息被篡改、删除、重放和伪造的一种有效方法是使发送的消息具有被验证的能力,使接收者或第三者能够识别和确认消息的真伪,实现这类功能的密码系统称为认证系统(AuthenticationSystem)。消息的认证性和消息的保密性不同,保密性是使截获者在不知密钥条件下不能解读密文的内容,而认证性是使不知密钥的人不能构造出一个密钥。认证系统的基本要求:1)意定的接收者能够检验和证实消息的合法性和真实性。2)消息的发送者对所发送的消息不能抵赖。3)除了合法消息发送者外,其他人不能伪造合法的消息,而且在已知合法密文c和相应消息m下,要确定加密密钥或系统地伪装合法密文在计算上是不可行的。4)必要时可由第三者做出仲裁。2020/3/22加密技术概述密码学与密码体制密码学包括密码设计与密码分析两个方面,密码设计主要研究加密方法,密码分析主要针对密码破译,即如何从密文推演出明文、密钥或解密算法的学问。这两种技术相互依存、相互支持、共同发展。加密算法的三个发展阶段:古典密码对称密钥密码(单钥密码体制)公开密钥密码(双钥密码体制)。这些算法按密钥管理的方式可以分为对称算法与非对称算法两大类,即我们通常所说的对称密钥密码体制和非对称密钥密码体制。2020/3/22密码学与密码体制通常一个完整密码体制要包括如下五个要素{M,C,K,E,D}1)M是可能明文的有限集称为明文空间2)C是可能密文的有限集称为密文空间3)K是一切可能密钥构成的有限集称为密钥空间4)对于密钥空间的任一密钥有一个加密算法和相应的解密算法使得ek:MC和dk:CM分别为加密解密函数满足dk(ek(x))=x,这里xM,kK一个密码体制要是实际可用的必须满足如下特性必须满足如下特性1)每一个加密函数ek和每一个解密函数dk都能有效地计算2)破译者取得密文后将不能在有效的时间内破解出密钥k或明文m3)一个密码系统是安全的必要条件:穷举密钥搜索将是不可行的2020/3/22密码学与密码体制加、解密过程密码系统模型信源信宿明文M加密解密明文M密文CC=Eke(M)M=Dkd(C)KeKd2020/3/22对称密钥密码体制传统密码体制所用的加密密钥和解密密钥相同,或实质上等同(即从一个可以推出另外一个),我们称其为对称密钥、私钥或单钥密码体制。对称密钥密码体制不仅可用于数据加密,也可用于消息的认证。对称算法又可分为序列密码和分组密码两大类。序列密码每次加密一位或一字节的明文,也称为流密码。序列密码是手工和机械密码时代的主流方式。分组密码将明文分成固定长度的组,用同一密钥和算法对每一块加密,输出也是固定长度的密文。最典型的就是1977年美国国家标准局颁布DES算法。2020/3/22对称密钥密码体制对称密钥密码体制的通信模型2020/3/22对称密钥密码体制单钥密码体制的优点是:安全性高且加、解密速度快其缺点是:进行保密通信之前,双方必须通过安全信道传送所用的密钥。这对于相距较远的用户可能要付出较大的代价,甚至难以实现。例如,在拥有众多用户的网络环境中使n个用户之间相互进行保密通信,若使用同一个对称密钥,一旦密钥被破解,整个系统就会崩溃;使用不同的对称密钥,则密钥的个数几乎与通信人数成正比[需要n*(n-1)个密钥]。由此可见,若采用对称密钥,大系统的密钥管理几乎不可能实现。2020/3/22非对称密钥密码体制若加密密钥和解密密钥不相同,从其中一个难以推出另一个,则称为非对称密钥或双钥密码体制。采用双钥密码体制的主要特点是将加密和解密功能分开,因而可以实现多个用户加密的消息只能由一个用户解读,或只能由一个用户加密消息而使多个用户可以解读。在使用双钥体制时,每个用户都有一对预先选定的密钥:一个是可以公开的,以k1表示,另一个则是秘密的,以k2表示,公开的密钥k1可以像电话号码一样进行注册公布,因此双钥体制又称作公钥体制(PublicKeySystem)。最有名的双钥密码体制是1977年由Rivest、Shamir和Adleman等三人提出的RSA密码算法。2020/3/22非对称密钥密码体制双钥密码体制的通信模型2020/3/22非对称密钥密码体制双钥密码体制既可用于实现公共通信网的保密通信,也可用于认证系统中对消息进行数字签名。为了同时实现保密性和对消息进行确认,在明文消息空间和密文消息空间等价,且加密、解密运算次序可换,即Ekl(Dk2(m))=Dk2(Ek1(m))=m。双钥保密和认证体制2020/3/22混合加密体制实际网络多采用双钥和单钥密码相结合的混合加密体制,即加解密时采用单钥密码,密钥传送则采用双钥密码。这样既解决了密钥管理的困难,又解决了加、解密速度的问题。2020/3/22密码学的作用密码学主要的应用形式有数字签名、身份认证、消息认证(也称数字指纹)、数字水印等几种,这几种应用的关键是密钥的传送,网络中一般采用混合加密体制来实现。密码学的应用主要体现了以下几个方面的功能。(1)维持机密性(2)用于鉴别(3)保证完整性(4)用于抗抵赖2020/3/22常用加密算法古典密码算法1.代码加密:它使用通信双方预先设定的一组有确切含义的如日常词汇、专有名词、特殊用语等(但都有一个预先指定的确切含义)的代码来发送消息,一般只能用于传送一组预先约定的消息。例如:密文:黄姨白姐安全到家了。明文:黄金和白银已经走私出境了。代码简单好用,但只能传送一组预先约定的信息。当然,可以将所有的语意单元(如每个单词)编排成代码簿,加密任何语句只要查代码簿即可。不重复使用的代码是很安全的。代码经过多次反复使用,窃密者会逐渐明白它们的意义,代码就逐渐失去了原有的安全性。2020/3/22常用加密算法古典密码算法2.替换加密:将明文字母表M中的每个字母替换成密文字母表C中的字母。这一类密码包括移位密码、替换密码、仿射密码、乘数密码、多项式代替密码、密钥短语密码等。这种方法可以用来传送任何信息,但安全性不及代码加密。因为每一种语言都有其特定的统计规律,如英文字母中各字母出现的频度相对基本固定,根据这些规律可以很容易地对替换加密进行破解。典型的有凯撒密码。例如,将字母a,b,c,…,x,y,z的自然顺序保持不变,但使之与D,E,F,…,A,B,C分别对应(即相差3个字符):AbcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABC若明文为student,则对应的密文为VWXGHQW(此时密钥为3)。2020/3/22常用加密算法古典密码算法3.变位加密:代码加密和替换加密保持着明文的字符顺序,只是将原字符替换并隐藏起来。变位加密不隐藏明文的字符,即明文的字母保持相同,但其顺序被打乱重新排列成另一种不同的格式。常见的变位加密方法有列变位法和矩阵变位法。1)简单变位加密。预先约定好一组数字表示密钥,将文字依次写在密钥下,再按数字次序重新组织文字实现加密,也有人喜欢将明文逆序输出作为密文。例如密钥:524163(密文排列次序)明文:信息安全技术密文:技息全信术安例如,加密方首先选择一个用数字表示的密钥,写成一行,然后把明文逐行写在数字下。按密钥中数字指示的顺序,逐列将原文抄写下来,就是加密后的密文:密钥:4168257390明文:来人已出现住在平安里0123456789密文:里人现平来住已在出安变位密码的另一个简单例子是:把明文中的字母的顺序倒过来写,然后以固定长度的字母组发送或记录,如:明文:COMPUTERSYSTEMS密文:SMETSYSRETUPMOC2020/3/22常用加密算法2)列变位法。将明文字符分割成个数固定的分组(如5个一组,5即为密钥!),按一组一行的次序整齐排列,最后不足一组用任意字符填充,完成后按列读取即成密文。将明文字符分割成为五个一列的分组并按一组后面跟着另一组的形式排好,最后不全的组可以用不常使用的字符填满。形式如下:C1C2C3C4C5C6C6C8C9C10C11C12C13C14C15……密文是取各列来产生的;C1C6C11…C2C6C12…C3C8…如明文是:WHATYOUCANLEARNFROMTHISBOOK,分组排列为:WHATYOUCANLEARNFROMTHISBOOKXXX密文则以下面的形式读出;
本文标题:第04讲加密与认证加密技术
链接地址:https://www.777doc.com/doc-4509702 .html