- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 现代密码学理论与实践-06 */57 * 现代密码学理论与实践-06 */57 RC4的安全性 可以抵御已知的各种攻击 加密结果是非常“非线性”的 RC4是流密码,决不重复使用密钥 用于为802.11无线局域网提供安全性的WEP协议,易受一种特殊攻击,问题不在RC4本身,而是RC4中输入的密钥的产生途径有漏洞 * 现代密码学理论与实践-06 */57 RC5 RC5是Ronald Rivest设计的一种对称加密算法,具有如下特点 适于软件和硬件实现 快速:设计成面向字的简单算法,加快运算速度 可用于字长不同的处理器 迭代次数可变 密钥长度可变 简单,易于实现和确定算法强度 对存储量要求低 安全性高 与数据相关的循环 * 现代密码学理论与实践-06 */57 RC5密码 RC5 实际上是一个系列的密码RC5-w/r/b w = word size in bits (16/32/64) nb data=2w r = number of rounds (0..255) b = number of bytes in key (0..255) 常见的版本形式是 RC5-32/12/16 i.e., 32-bit words so encrypts 64-bit data blocks using 12 rounds with 16 bytes (128-bit) secret key * 现代密码学理论与实践-06 */57 RC5 Key Expansion RC5使用2r+2子密钥字(w-bits) 子密钥存储在数组S[i], i=0..t-1 密钥产生过程包括 将S初始化成一个固定长度的伪随机数,基于常数e和phi 字节密钥复制到c-word数组L 对L和S的混合操作最终形成S数组 * 现代密码学理论与实践-06 */57 RC5 Key Expansion * 现代密码学理论与实践-06 */57 RC5 Encryption 将输入分成A和B两部分 L0 = A + S[0]; R0 = B + S[1]; for i = 1 to r do Li = ((Li-1 XOR Ri-1) Ri-1) + S[2 x i]; Ri = ((Ri-1 XOR Li) Li) + S[2 x i + 1]; 每一轮就像是2DES的轮 非线性主要来自于循环移位 需要适当的轮数(e.g. 12-16) * 现代密码学理论与实践-06 */57 * 现代密码学理论与实践-06 */57 RC5 Modes RFC2040 定义了RC5使用的4种模式 RC5 Block Cipher, ECB模式 RC5-CBC, CBC模式 RC5-CBC-PAD, CBC加字节填充的模式 RC5-CTS, CBC模式的一种变形,采样密文挪用方法使得密文大小保持与原始态一致 * 现代密码学理论与实践-06 */57 RC5密文挪用模式 * 现代密码学理论与实践-06 */57 分组密码的特点 变长的密钥、分组大小、轮数 混合各种操作,数据和密钥依赖循环移位 密码依赖S盒 更加复杂的密钥处理过程 每一轮都对全部数据进行操作 多样性的非线性功能 * 现代密码学理论与实践-06 */57 Blowfish,1993年由Bruce Schneier提出,对称分组密码,特性: 快速:在32位处理器上加密每字节18时钟周期 紧凑:可在少于5K的内存上运行 简单:结构简单、容易实现 可变的安全性:密钥长度可变,从32位到448位 子密钥和S盒的产生 使用32位可变到448位的密钥,存储在K数组中:Kj,用来产生18个32-bit的子密钥,存储在P数组中:Pj, 4个8x32的包含1024个32位项的S盒,存储在Si,j Blowfish * 现代密码学理论与实践-06 */57 产生P数组和S数组的步骤 用常数π的小数部分初始化P数组和4个S盒 对P数组和K数组逐位异或 使用当前的P和S数组对64位分组加密,把P1和P2用加密的输出替代 使用当前的P和S数组对第三步的输出加密,用所得密文替代P3和P4 重复这个过程以更新P和S数组的所有元素,每一步都使用不断变化的Blowfish算法的输出,总共执行512次加密算法 Blowfish对密钥经常变化的应用不适合,也不适合存储空间有限的应用 Blowfish Key Schedule * 现代密码学理论与实践-06 */57 Blowfish的加密 两个基本操作: 模232的加和逐位异或 数据被分成左右两部分L0 R0 for i = 1 to 16 do Ri = Li-1 XOR Pi; Li = F[Ri] XOR Ri-1; L17 = R16 XOR P18; R17 = L16 XOR i17
文档评论(0)