第3章密码技术1在计算机尤其是网络传输过程中如何保证数据的安全??数据加密!第3章密码技术2第3章密码技术基本概念对称加密技术非对称加密技术数字签名密钥管理应用实例第3章密码技术33.1基本概念第3章密码技术4密码学的发展第一个阶段:1949年以前古典加密计算机技术出现以前密码学作为一种技艺,而不是一门科学第二个阶段:1949年到1976年标志:Shannon发表”CommunicationTheoryofSecrecySystem”密码学进入了科学的轨道主要技术:单密钥的对称密钥加密算法第三个阶段:1976年以后标志:Diffie,Hellman发表”NewDircetionsinCryptography”一种新的密码体制:公开密钥体制第3章密码技术5明文:加密前的数据。密文:加密后的数据。作用:防止有价值的信息被拦截和窃取。加密变换:明文→密文有两种主要的加密(编码)方法,分别是:换位:将组成信息块的数字位进行交换。置换:将每一个字符或数位替换为其他内容。对文件中的字符或符号进行替换,就能创建一个置换密码。加密与解密1.加密第3章密码技术6加密的逆过程称为解密。解密变换:密文-明文加密信息进行解密具备两个条件:解密规则或者算法解密的密钥密钥:数据变换所用的独立输入项加密密钥解密密钥加密与解密2.解密第3章密码技术7待加密的报文用于加密和解密的字符串加密后的报文实现加密、解密算法逻辑图1加密与解密系统第3章密码技术8未经授权的解密称为破译。防止密码破译采取机制强壮的加密算法动态会话密钥保护关键密钥基于密码技术的访问控制是防止数据传输泄密的主要防护手段。初始保护持续保护加密与解密3.密码破译第3章密码技术9信息加密分类通信加密:在传输过程中的数据加密文件加密:将存储数据进行加密以加密实现的通信层次来区分链路加密节点加密端到端加密加密与解密4.加密分类第3章密码技术10密码通信系统的模型M加密器EncryptorE解密器DecryptorD破译者)(1MECK)(2CDMK1K2K明文密文加密密钥解密密钥发送方接收方公开信道第3章密码技术113.1.2加密算法加密算法加密算法是实施具体加密的基础,它决定了加密的强度、运算量以及它的实用性。密码算法可以看作是一个复杂的函数变换,s=f(m,k)。s代表密文,即加密后得到的字符序列,m代表明文,即待加密的字符序列,k表示密钥,是秘密选定的一个字符序列。加密算法的实现软件加密:通过算法的计算机程序实现。特点:实现简单,成本低;速度比较慢;相对来说,机密性差。硬件加密:通过具体的电子线路实现加密算法。特点:实现复杂,成本高;加密速度比较快;相对软件加密算法实现,其机密性更好。第3章密码技术12对称密码体制(私钥):加密密钥和解密密钥相同,且都需要保密。优点:加密算法比较简便、高效、密钥简短,对方破译极其困难,且经受住时间的检验和攻击;缺点:密钥必须通过安全的途径传送。系统的机密性主要取决于密钥的安全性。加密的方式:按字符逐位加密(流密码)将明文消息分组(分组密码)常用算法:DES适用范围:数据加密、消息认证3.1.3密码体制分类第3章密码技术13非对称密码体制(公钥):加密密钥和解密密钥不相同,一个公开,一个保密。优点:可以适应网络的开放性要求,且密钥管理简单。增加数字签名应用。缺点:算法复杂,且加密数据的速率较低。特点:加密和解密功能分开。常用算法:RSA、背包密码、零知识证明和椭圆曲线算法。3.1.3密码体制分类第3章密码技术153.1.3密码体制分类混合加密体制:公开密钥密码技术在通信双方之间传送秘密密钥,而用秘密密钥来对实际传输的数据加密解密。发方加密C=Ek(P)解密P=Dk(C)收方密钥密钥加密Ck=Epk(K)加密密钥PK解密K=Dpk-1(Ck)解密密钥PK-1采用公开密钥密码体制对传统密码体制的密钥进行加密后的通信采用传统密码体制进行通信明文P密文C第3章密码技术163.1.4密码体制与安全服务机密性机密性服务是指只允许特定用户访问和阅读信息,任何非授权用户对信息都不可理解的服务。数据完整性数据完整性用于确保数据在存储和传输过程中不被未授权修改的服务。认证认证服务是一种与数据和身份识别有关的服务。不可否认性不可否认性服务是一种用于阻止合法用户否认先前的言论或行为的服务。第3章密码技术173.1.5密钥密钥是密码算法中的可变参数。密码体制的安全性完全建立在对密钥的安全性上。密钥管理涉及密钥的各个方面,包括密钥的产生、密钥的分发、密钥输入和输出、密钥的更换、密钥的存储、密钥的保存和备份、密钥的生命周期以及密钥的销毁等。第3章密码技术183.1.6计算机通信安全与保密信息安全与保密信息系统安全保密研究的对象是系统而不仅是系统中的某个或某些元素。从系统内看,研究内容包括通信安全、计算机安全、操作安全、信息安全、人事安全、工业安全、资源保护和实体安全。从系统外看(因为系统不是孤立的),研究内容还包括管理和法律两个方面,它们的综合构成了一个合理的研究结构和层次。计算机安全与保密计算机安全保密涉及计算机硬件、软件以及所处理数据的安全和保密。第3章密码技术19安全保密研究信息系统的安全保密研究有以下三个阶段:计算机诞生前的密码学(通信安全保密)研究;实施安全保密策略的基本工具(基础层次)计算机安全保密研究;利用基础密码学来研究计算机的安全保密问题,表现了研究对象的个体性,而不管计算机系统之外的事情(中间层次)信息系统的安全保密研究综合利用通信和计算机安全保密的研究成果,并将研究定位在系统这个层次,系统内的一切成分都是研究的对象(最高层次)3.1.6计算机通信安全与保密第3章密码技术20特点:加密密钥和解密密钥相同(或关联)3.2对称加密技术3.2.1对称密钥体制种类:序列密码:每次只加密一个比特分组密码:先将信息序列分组,每次处理一个组典型的对称密码体制的发展趋势将以分组密码为重点。第3章密码技术21替代密码:明文中的每一个字符被替换成密文中的另外一个字符。接收者对密文进行逆替换就能恢复出明文来。简单替代密码:明文的一个字符用相应的一个密文字符代替。多明码替代密码:它与简单替代密码系统相似,唯一的不同是单个字符明文可以映射成密文的几个字符之一。多字母替代密码:字符块被成组加密多表替代密码:由多个简单的替代密码构成换位密码:加密方法不隐藏原明文中的字符,它所做的只是按照一定的密钥将明文中的字符的顺序打乱,从而达到保密的效果。典型的对称密码技术—替代密码和换位密码第3章密码技术22纵行换位密码的换位密码明文:密码学的知识对于提高网络数据传输的安全性有着不可估量的作用密码学的知识对于提高网络数据传输的安全性有着不可估量的作用密文:密对数全估码于据性量学提传有的的高输着作知网的不用识络安可第3章密码技术231、DES加密算法定义:DES全称为DataEncryptionStandard即数据加密算法,它是IBM公司于1975年研究成功并公开发表的,1977年,美国把DES用于国家非保密机关。DES是一种采用传统加密方法的分组密码。它的算法是对称的,既可用于加密又可用于解密。基本思想:DES对64比特二进制数据加密,产生64比特等长的密文数据。使用的密钥为64比特,实际密钥长度为56比特(有8比特用于奇偶校验)。3.2.2典型的对称加密算法第3章密码技术242、IDEA算法IDEA(InternationalDataEncryptdriAlgorithm),即“国际数据加密算法”。IDEA采用基于“相异代数群上的混合运算”的设计思想,其算法的明、密文组位长度为64位,密钥长度为128位。3、FEAL-8密码FEAL密码算法家族是日本NTT(日本电报电话公司)设计的。密钥组位长度为64比特,明、密文组位长度为64比特。作为一种分组密码,与DES相比,其增加了每一轮迭代的算法强度,因此可以通过减少迭代次数而提高运算速度。3.2.2典型的对称加密算法第3章密码技术254、LOKI算法LOKI算法作为DES的一种潜在替代算法于1990年在密码学界首次亮相。LOKI以64位二进制分组加密数据,也使用64位密钥(只是其中无奇偶校验位),所有64位均为密钥,迭代次数为16。5、Khufu和Khafre算法1990年由默克尔设计的这对算法具有较长的密钥,适合于软件实现,比较安全可靠。Khufu算法的总体设计类似于DES,明、密文组位长度为64位,只是拥有512位(64字节)的密钥。3.2.2典型的对称加密算法第3章密码技术26算法流程DES算法大致可以分成四个部分:初始置换DES算法的入口参数Key:为8个字节共64位,是DES算法的工作密钥;Data:为8个字节64位,是要被加密或被解密的数据;Mode:为DES的工作方式,有两种:加密或解密。迭代过程逆置换子密钥生成DES算法安全性对DES的攻击穷举搜索法:56位长的密钥的穷举空间为256。差分密码分析法:搜索空间为247个密文对。线性密码分析法:搜索空间为243个密文对。3.2.3数据加密标准DES分析第3章密码技术28对DES攻击结果及其启示1997年1月28日美国RSA数据安全公司悬赏“秘密密钥挑战”竞赛48位的RC5313小时/3500台计算机1997年3月13日RockeVerser设计一个攻击程序(DESCHALL),参加的志愿者有78516个,第96天(6月17日晚10:39)MichaelSanders破译成功,获1万美圆奖金。搜索量为24.6%。第3章密码技术29密钥长度(bit)穷举时间4078秒485小时5659天6441年7210,696年802,738,199年88700,978,948年96179,450,610,898年11211,760,475,235,863,837年128770,734,505,057,572,442,069年DESCHALL搜索速度估算第3章密码技术30DESk1DESDESk2k3pC3.2.3数据加密标准DES分析多重DES二重DES算法三重DES算法第3章密码技术313.3非对称加密技术在公钥密码中,收信方和发信方使用的密钥互不相同,而且几乎不可能由加密密钥推导出解密密钥。1、非对称密钥技术非对称密钥体制”,即“公开密钥体制”,其中加密密钥不同于解密密钥,加密密钥公之于众,谁都可以用,解密密钥只有解密人自己知道,分别称为“公开密钥(公钥)”和“秘密密钥(私钥)”。3.3.1非对称密钥体制第3章密码技术323.3.1非对称密钥体制基本概念A加密明文B的公钥密文B解密B的私钥明文加密模型A加密明文A的私钥密文B解密A的公钥明文认证模型第3章密码技术332、计算速度公开密钥方案较保密密钥方案处理速度慢,因此,通常把公开密钥与专用密钥技术结合起来实现最佳性能。即用公开密钥技术在通信双方之间传送专用密钥,而用专用密钥来对实际传输的数据加密解密。另外,公钥加密也用来对专用密钥进行加密。算法的运算速度限制了一些公开密钥算法的实用性。3.3.1非对称密钥体制第3章密码技术343、公开密钥算法特点公开密钥最主要的特点就是加密和解密使用不同的密钥。公开密钥PK:用作加密密钥;秘密密钥SK:用作解密密钥。公开密钥算法的特点如下:(1)用加密密钥PK对明文x加密后,再用SK解密,即可恢复出明文,或写为:DSK(EPK(x))=x。(2)加密密钥不能用来解密,即:DPK(EPK(x))x,在计算机上可以容易地产生成对的PK和SK。(3)加密和解密的运算可以对调,即:EPK(DSK(x))=x。(4)从已知的PK实际上不能推导出SK,即从PK到SK是“计算上是不可能的”。3.3.1非对称密钥体制第3章密码技术353.3.2典型的非对称加密算法1、RSA算法RSA的名字来自于它的创建者RonaldRivest,AdiShamir以及LeonardAdleman。它是众所周知的非对称公钥系统的典型代表,已被ISO/TC97的数据加密技术分委员会SC20推荐为公开密钥数据加密标准。RSA使用两个密钥,一个公