2015密码学课设计报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2015密码学课设计报告

课 程 设 计 报 告 题目: SPN和RSA密码算法的 快速实现与安全性分析 课程名称: 密码学 专业班级: 信息安全1302班 学 号: 姓 名: 指导教师: 报告日期: 2015.10.9 计算机科学与技术学院 目录 一. 1 二. 1 三. 1 3.1、分组密码SPN 1 3.2、RSA的加/解密及快速加/解密 5 3.3、随机性检测 6 四. 6 4.1、原始SPN 6 4.1.1 SPN加密 6 4.1.2 线性密码分析 8 4.1.3 差分密码分析 9 4.2、RSA的加/解密及快速加/解密 11 4.2.1 生成大素数 11 4.2.2 运用模重复平方的RSA加/解密 12 4.2.3 运用蒙哥马利的RSA快速加解密 13 4.2.4 运用中国剩余定理的RSA解密 15 4.3、随机性检测 16 五. 16 5.1、SPN 16 5.2、RSA的加/解密及快速加/解密 17 5.3、文件加解密 17 5.4、随机性检测 18 六 实验小结 20 实验目的 通过课程设计加强学生对加解密具体知识的理解,提高学生对密码学这门课程的认识。同时锻炼学生的实践动手能力,使同学们具有简单加解密以及密码分析的能力。 实验内容及基本要求 (1)上)的实现。)算法进行线性分析差分密码分析(所有)。)安全性(增加分组的长度、密钥的长度、等)。随机性检测。)的参数(等)。)实现模重复平方蒙哥马利算法中国剩余定理)。)增强后的文件的加解密。 蒙哥马利算法 3.1、分组密码SPN (1)迭代密码 迭代密码的核心是一个密钥编排方案和一个轮函数 密钥编排方案对密钥k进行变换,生成Nr个子密钥(也叫轮密钥),记为k1,k2,...,kNr 轮函数g是一个状态加密函数,以ki为密钥对当前状态wr-1进行变换,输出新的状态值wr,即g(wr-1,ki)=wr;轮函数是单射函数,存在一个逆变换g-1,有g-1(wr,ki)=wr-1 迭代密码的加密为将密钥k编排成Nr个轮密钥k1,k2,...,kNr,将明文x定义为初始状态w0,经过Nr轮变换得到wNr为密文y,即 w0=x, w1=g(w0,k1), w2=g(w1,k2), ... wNr-1=g(wNr-2,kNr-1), wNr=g(wNr-1,kNr) y=wNr 迭代密码的解密为将密文y定义为初始状态wNr,经过Nr轮逆变换得到w0为明文x,即 y=wNr, wNr-1=g-1(wNr,kNr),wNr-2=g-1(wNr-1,kNr-1) ... w1=g-1(w2,k2), w0=g-1(w1,k1), x=w0 (2)代替-置换网络(Substitution-Permutation Network) 代替-置换网络(Substitution-Permutation Network)是一种简单的迭代密码。处理的明文单元和状态值长度为l×m,轮函数g包括两个核心变换——代替和置换,分别记为πs和πp,有 πs : {0,1}l → {0,1}l πp : {1,2,...,lm} → {1,2,...,lm} 在进行轮函数变换前,先用轮密钥和状态值进行异或(称为白化) (3)SPN密码体制设计 设l,m,Nr是正整数,P=C={0,1}lm K?({0,1}lm)Nr+1是由初始密钥k用密钥编排算法生成的所有可能的密钥编排方案集合,一个密钥编排方案记为(k1,k2,...,kNr+1) 状态值w长度为l×m,记为w1,w2,...,wlm; w可以看成m个长度为l的子串连接而成,记为 w=w1,w2,...,wm,其中 wi=w(i-1)l+1,w(i-1)l+2,...,w(i-1)l+l 加密过程使用如下算法描述: w0=x for r=1 to Nr-1 { ur=wr-1⊕kr // 白化 for i=1 to m { vri=πs(uri) // 代替 } wr=(vrπp(1),vrπp(2),...,vrπp(lm)) // 置换 } uNr=wNr-1⊕kNr for i=1 to m { vNri=πs(uNri) // 代替 } y=vNr⊕kNr+1

文档评论(0)

linjuanrong + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档