网站大量收购独家精品文档,联系QQ:2885784924

毕业设计(论文)-RSA加解密算法的研究与实现_汇.doc

毕业设计(论文)-RSA加解密算法的研究与实现_汇.doc

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
毕业设计(论文)-RSA加解密算法的研究与实现_汇

目录 设计总说明 3 INTRODUCTION 5 1 绪论 7 1.1 研究背景和意义 7 1.2 国内外研究现状与水平 8 1.3 本文的工作和内容安排 9 2 密码学概述 10 2.1 密码学基本概念 10 2.2 密码分析技术 10 2.3 密码学中的安全性定义 11 2.4 密码学的主要任务 12 2.4.1 机密性 12 2.4.2 数据完整性 12 2.4.3 鉴别 12 2.4.4 抗抵赖性 12 2.5 密码体制的分类 12 3 RSA算法的数学理论基础 13 3.1 单向和陷门单向函数 13 3.2 同余及模运算 13 3.3 欧拉函数、欧拉定理和费尔马定理 14 3.4 乘法逆元及其求法 15 4 RSA算法介绍 17 4.1 RSA公钥加密解密概述 17 4.1.1密钥的产生 17 4.1.2 加密 17 4.1.3 解密 17 4.2 RSA算法的应用与举例 18 4.2.1 RSA算法的应用 18 4.2.2 RSA应用举例 19 4.3 RSA算法的攻击与安全性的讨论 20 4.3.1 对RSA的分解模数n攻击 20 4.3.2 对RSA的选择密文攻击 21 4.3.3 对RSA的小指数攻击 21 4.3.4 对RSA共模攻击 22 4.3.5 关于RSA算法的明文部分信息安全性 22 4.3.6 RSA的安全性讨论 23 4.4 RSA参数的选择 24 4.4.1 模数N的确定 24 4.4.2 e的选取原则 25 4.4.3 d的选取原则 26 5 RSA算法的系统及实现 27 5.1 大素数生成实现 28 5.2 密钥对产生实现 31 5.2.1 加密密钥产生 32 5.2.2 解密密钥产生 34 5.3 模幂运算的实现 35 5.4 大数运算处理 37 5.4.1 大整数的进制表示 37 5.4.2大整数的存储与读取 39 5.4.3大整数的基本运算 40 5.5加解密整体过程的快速实现 42 5.5.1选定算法的原则 43 5.5.2确定算法与其流程图 43 5.5.3算法的数据结构与源代码 45 5.5.4运行效果与结论 46 6. 总结与展望 48 6.1本文的总结 48 6.2展望 48 参考文献 49 致谢 50 RSA加解密算法的研究与实现 设计总说明 自20世纪90年代以来,随着计算机互联网络的飞速发展,网络技术的应用几乎已经深入到人类社会生活的一切领域。例如网上银行的开通、网上购物的流行以及企业之间的商业机密,银行与银行之间的业务往来,这一切的一切都离不开信息的安全传输。因此在当前的网络环境下,敏感信息的保护已经成为一个很重要的问题,一个安全、健壮的信息系统离不开各种信息安全技术的支持。计算机网络中所采用的核心安全技术中有许多来源于现代密码学,这一技术的研究和发展是计算机技术发展的重要保障。 加密技术按照密码使用方法不同可以分为对称密钥算法和非对称密钥算法。对称密钥算法中,加密、解密都使用相同的密钥。非对称密钥算法又称公钥密码算法,即加密、解密使用两个不同的密钥。由于公钥密码算法在保证数据的机密性、完整性以及签名和认可等方面的突出优点,它已经成为当今网络安全中最重要的解决方法。 R.L.Rivest,A.Sbamir和L.Adleman于1977年提出的RSA公钥密码体制的安全性和性能不断得到人们的肯定,成为最流行的密码体制。RSA密码体制是目前比较成熟的公钥密码体制,可用于数据加解密、数字签名、身份验证等。在各种安全或认证领域,如WEB服务器和浏览器信息安全、Email的安全和认证、对远程登陆的安全保证和各种电子信用卡系统,起着安全核心的作用,而用微电子技术将加密算法转换成硬件实现,不仅加解密速度快,而且抗物理攻击能力强,所以研究如何用硬件快速实现RSA有着重要的现实意义。但是大密钥加解密存在着运算速度缓慢、效率低下的问题,这成为制约它进一步推广的瓶颈。因此,找到一个快速的RSA的实现算法也是当前密码学的一个研究方向。 RSA加解密算法的实现主要在大素数的产生,密钥对的生成,模幂运算的实现以及大整数的存储与运算这四方面的问题。本论文根据这几方面的问题一一做了详细的介绍,其中大素数的产生采用Miller-Rabin素数检测法。 RSA算法的核心运算是大整数模幂运算,而模幂运算是由一系列的模乘运算构成。因此本文主要针对RSA公钥密码体制中大整数模指数算法进行了深入的研究,将该问题分解为对乘法算法、模乘法算法、模指数算法的研究并使用流行的面向对象软件开发工具Visual C++进行了相应的软件实现。 RSA密码算法体制是一种公开密钥算法,其加密密钥和算法本身都可以公开,解密密钥则归用户私人拥有。从诞生那天起,RSA就因为安全强度高、使用方便等卓越性能受到关注,并得到广泛应用。目

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档