第2节 现代加密技术.ppt

  1. 1、本文档共65页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.1 加密技术概述 密码学(Cryptography) 是研究信息系统安全保密的科学,把有意义的信息编码为伪随机性的乱码,以实现信息保护的目的。 密码编码学,是研究密码体制的设计,对信息进行编码实现隐蔽信息的一门学问。 密码分析学,是研究如何破解被加密信息的学问。 明文 没有加密的原始信息,M/P 密文 明文经过加密,C 密钥 一串字符 算法 加密时采用的规则:置换、替代或数学函数 算法是一些公式、法则或程序,规定了明文与密文之间的变换方法。 密钥可以看作是算法中的参数,即指示和控制明文与密文间变换的参数,也是唯一能控制明文与密文之间变换的关键,它由使用密码体制的用户随机选取。 易操作原则 不可破原则 整体安全原则 与计算机、系统匹配原则 柯克霍夫斯原则:密码系统中的算法即使被密码分析员所掌握,也应该无助于用来推导出明文或密钥。 柯克霍夫斯原则为什么成为密码系统设计的重要原则? 算法是相对稳定的,经过一定次数或一定时间的使用,难免被攻击者所获取。 其次,在某种场合可能使用某类密码更为合适,再加上某些设计家对某种密码系统有所偏爱等因素,都可能导致攻击者“猜出”密码算法。 更为重要的是,通常只要经过一些统计实验和其它测试就不难分辨出不同的密码类型。 因此将安全性依赖于密码算法,认为密码分析员不可能掌握密码系统算法,是一种很危险的想法。 2.2 对称密码体制 对称密码体制按照对明文加密方式的不同: 分组密码: 将明文比特流分成固定长度的组,用同一密钥和算法对每一块加密,输出也是固定长度的密文,适合用软件实现。 流密码: 又称序列密码,每次加密一个比特位或一个字节的明文,适合用硬件实现。 数据加密标准(DES)是最著名的对称密码算法,它的产生被认为是20世纪70年代信息加密技术发展史上的两大里程碑之一。 1977年7月,美国国家标准局正式颁布数据加密标准DES( Data Encryption Standard)。1980年12月,美国国家标准委员会正式采用DES算法作为美国的商用加密算法。 每一轮的处理过程 DES加密流程 64位明文初始置换 进行16轮置换与替代; 进行初始置换的逆置换 得到64位密文 每一轮的处理过程 1992年,瑞士的Massey等人开发 明文64位分组,128位密钥,速度与DES大致相同,软硬件均可实现。 国际数据加密算法IDEA被认为是现今最好的最安全的分组密码算法之一。 由比利时密码专家Joan Daemen 和 Vincent Rijmen共同设计; 明文信息块和密钥长度可变,可以是128位、192位和256位; AES安全性很高,128位AES的加密强度是56位DES加密强度的1021倍还多。 预计AES将作为新标准取代DES。 一、算法原理与描述 单向函数 所谓单向函数是指计算起来相对容易,但逆运算却非常困难的函数。 RSA算法当中使用的单向函数是大数分解。 大数分解一般是指把一个大于100个十进制位的数分解成两个大素数的乘积,且这两个大素数互为素数。两个大素数p和q相乘得到乘积n比较容易计算,但从它们的乘积n分解为两个大素数p和q则十分困难。 RSA算法的实现 如果用gcd(a,b)表示a和b的最大公约数,那么对于任何的非负整数a和b,有gcd(a,b)=gcd(b,(a mod b))。 gcd(36,28)=gcd(28,8)=gcd(8,4)=4 gcd(79,4)=gcd(4,3)=gcd(3,1)=1 高次幂剩余的运算 定义:若x?y mod n =1,则称x与y对于模n互为逆元。用辗转相除法Euclidean算法求乘法逆元。 d?e=1(mod f(n)) 即d?e mod f(n)=1 二、RSA 的安全性 三、RSA 的速度 四、RSA 的特点 密钥长; 速度慢; 一般只用于少量数据加密; 多用于交换密钥、数字签名和认证中; 在目前各领域的安全应用中发挥着重要的作用。 E(Ri-1)48位 8个4位数Bj Ki 48位 32位结果 将得到的48位数分成8个6位数Bi 函数g(Ri-1 , Ki)的设计 Ri-1 32位 位选择表E ? 选择函数S 换位表P 选择函数S盒的算法 S盒的作用在于将每一个6位二进制块都转换成一个4位块; 对于每一个6位二进制块Bj=b1b2b3b4b5b6,b1b6确定列号,b2b3b4b5确定行号,对应的值即为结果。 例: B1=111011,则经过S盒转换后的S1应为多少? B3=101010,则经过S盒转换后的S3应为多少? 子密钥是DES加密和解密的每一轮都需要的,共16个子密钥,记作Ki。子密钥由初始密钥置换而来。 初始密钥Key值为64位,其中第

您可能关注的文档

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档