基于rsa加密算法.doc

上传人:pu****.1 文档编号:562200305 上传时间:2023-01-02 格式:DOC 页数:34 大小:473KB
返回 下载 相关 举报
基于rsa加密算法.doc_第1页
第1页 / 共34页
基于rsa加密算法.doc_第2页
第2页 / 共34页
基于rsa加密算法.doc_第3页
第3页 / 共34页
基于rsa加密算法.doc_第4页
第4页 / 共34页
基于rsa加密算法.doc_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《基于rsa加密算法.doc》由会员分享,可在线阅读,更多相关《基于rsa加密算法.doc(34页珍藏版)》请在金锄头文库上搜索。

1、桂林理工大学本科毕业设计论文桂林理工大学GUILIN UNIVERSITY OF TECHNOLOGY本科毕业设计(论文)题目: 数据通信中的RSA加密算法的设计与实现 摘 要数据通信是依照一定的通信协议,利用数据传输技术在两个终端之间传递数据信息的一种通信方式和通信业务。随着数据通信的迅速发展而带来了数据失密问题。信息被非法截取和数据库资料被窃的事例经常发生,在日常生活中信用卡密码被盗是常见的例子。所以数据加密成为十分重要的问题,它能保证数据的安全性和不可篡改性。 RSA加密算法以它难以破译的优点,被广泛的使用在电子商务和VPN中。 本文针对非对称性加密RSA算法,采用软件Visual C+

2、6.0进行程序编写。根据模乘法运算和模指数运算的数学原理所编写的程序在进行测试后,能够通过输入两个素数进行运算从而实现明文与密文之间的转换,然后通过对公钥和私钥的管理,对所传输的数据进行保护,让数据只能由发送者和接收者阅读,以达到数据通信中数据无法被他人破译的目的。关键词:RSA算法,数据通信,加密, 解密。Data communication of the RSA encryption algorithm in the Design and ImplementationTeacher:Chen Fei student:Lu HuiAbstractData communications in

3、accordance with certain communication protocols, the use of data transmission technology in the transmission of data between two terminals as a means of communication of information and communication business. With the rapid development of data communications and has brought the issue of data compro

4、mise. Unlawful interception of information and database information on frequent instances of theft, credit card in their daily lives stolen passwords is a common example. Therefore, data encryption has become a very important issue, it can ensure data security and can not be tamper with nature. RSA

5、encryption algorithm to the merits of it difficult to decipher, was widely used in the e-commerce and VPN. In this paper, asymmetric RSA encryption algorithm, the use of software for Visual C + +6.0 programming. According to Die multiplication and modular exponentiation by the mathematical principle

6、s in the preparation of test procedures can be adopted for the importation of two prime numbers and computing in order to achieve explicit conversion between the ciphertext, and then through a public key and private key management, for the transmission of data protection, so that data can only be ma

7、de by the sender and the recipient to read, in order to achieve data communications data can not be the purpose of deciphering the others.Keywords: RSA algorithms, data communication, encryption, decryption.目录摘 要IAbstractII第1章 引言11.1题目背景11.2国内外现状11.3本课题的主要工作2第2章 数据通信中的加密技术32.1数据加密技术的起源和发展32.2数据加密的方法

8、32.3密钥的管理52.4数据加密的标准52.5数据加密的应用62.6本章小结6第3章 数据加密中的RSA算法83.1 RSA公钥密码体制概述83.2 RSA公钥密码体制安全性分析93.3 RSA算法的缺点103.4 本章小结10第4章 RSA数据加密中的实现114.1随机大素数的产生114.1.1素数的分布114.1.2大素数生成的方法124.1.3 Miller Rabin素性测试法124.1.4基于Miller Rabin素性测试法的新的素数生成方法134.2密钥的生成及加密和解密144.2.1最大公因子gcd运算144.2.2模n求逆元运算164.2.3模n的大数幂乘运算174.2.4

9、模n的大数幂乘运算174.3 RSA算法分析184.3.1 RSA安全性分析184.3.2 RSA时间复杂度分析194.4本章小结19第5章 RSA算法的实现215.1选定组合算法的准则215.2模幂组合算法的实现215.3试验与运行结果22总结24参考文献25致谢26附录2726第1章 引言1.1题目背景 在当今的信息社会中,每天都有大量的信息在传输、交换、存储和处理,而这些处理过程几乎都要依赖强大的计算机系统来完成。一旦计算机系统发生安全问题,就可能造成信息的丢失、篡改、伪造、假冒,以及系统遭受破坏等严重后果。因此,如何保证计算机系统的安全,是当前一个需要立即解决的十分严峻的问题。 通常保

10、障网络信息安全的方法有两大类:一是以防火墙技术为代表的被动防卫型,二是建立在数据加密,用户授权确认机制上的开放型网络安全保障技术。 防火墙技术,就是在局域网与外部网络之间设立一个服务器,将它们之间隔离开来,建立起一个安全网关,从而保护内部网免受非法用户的侵入。 数据加密技术是可以与防火墙配合使用的一种安全技术,这种技术可以提高信息系统及数据的安全性和保密性、防止秘密数据被外部破解所采用的主要技术手段之一。按其不同的作用,数据加密技术主要分为数据传输、数据存储、数据完整性的鉴别以及密钥管理技术四种。加密技术是通过计算机网络中的加密机构,把网络中的各种原始数字信息(明文)按照某种特定的加密算法变换

11、成与明文完全不同的数字信息,即转换成密文。计算机网络中的加密技术主要采用链路加密和端对端加密等两种方式。通常情况是将这两种加密模式结合起来共同使用,即可保证网内用户的数据安全,又可提供用户之间的身份鉴别与认证。1.2国内外现状RSA被广泛应用于各种安全或认证领域,如web服务器和浏览器信息安全、Email的安全和认证、对远程登录的安全保证和各种电子信用卡系统的核心。硬件上,如安全电话、以太网卡和智能卡也多采用RSA技术。而几乎所Internet安全协议如S/MIME,SSL和S/WAN都引入了RSA加密方法。IS09796标准把RSA列为一种兼容的加密算法,使得RSA的应用目前非常广泛。RSA

12、模数n=pq是RSA算法的安全性的核心。如果模数n被分解,则RSA体制立刻被攻破。如果RSA算法是安全的,那么n=pq必须足够大,使得因式分解模数n在计算上不可行的。基于安全性考虑,实际应用中所选择的素数p和q至少应该为100位以上的十进制数,相应的模数n=pq将是200位的十进制数。C E Shannon建议使用至少100位长度的大素数,从而得到长度为200位以上的大整数模数n。RSA算法的缺点是加密速度慢,模数n的长度越大,加/解密运算所需要的时间就越长,算法实现的速度也就越慢。为了尽可能使用大的模数而又不影响系统实现的速度,实际应用中通常使用专门的硬件实现RSA算法。最重要的影响速度的实

13、现细节是加/解密中的大数运算。大数模幂乘运算是RSA算法的核心运算,也是运算速度提高的关键。高效的大数模幂乘算法可以有效提高系统速度。需要每做一次平方或乘法运算后,就要作一次模运算,当n的值很大时,做一次模运算所需的时间比做一次平方或一次乘法所需的时间更多,是影响算法实现速度的关键。但在实际加密解密过程中,n可能是几个数的乘积,如RSA算法中,n是两个大素数的乘积。这时可通过中国剩余定理进行变换,降低指数的数量级.1.3本课题的主要工作 本文选择RSA数字加密体制为研究对象,讨论了RSA实现过程中,每一步的具体实现算法。RSA加密算法是第一个成熟的、迄今为止理论上最成功的公开钥密系统。它的安全

14、性基础是数论和计算复杂性理论中的下述论断:求两个大素数的乘积在计算上是容易的,但若要分解两个大素数的积而求出它的素因子则在计算上是困难的。但是,在进行加密和解密运算时的整数求幂运算耗时很大,影响了运算速度,因此,人们提出了多种实现算法,以加快运算速度,例如本文提到的SMM算法和指数2K进制化法等。这些算法都是从某一方面入手,在一定程度上加快了运算速度。本文通过分析这些算法的特点,提出了一种综合性的组合方法,在原有算法的基础上更进一步地加快了运算速度。 本文首先介绍了加密算法的数学基础,从数学理论上分析了RSA算法的原理;然后通过C+程序进行实现。 第2章 数据通信中的加密技术随着信息化的应用水

15、平不断提高,尤其是电子政务和电子商务的蓬勃发展,互联网络的信息安全问题越来越引起全社会的重视。数字化办公和生活面临一系列的严重“威胁”。由于互联网的开放性,我们面临各种各样的安全威胁。网上传输的邮件可能被截取,信息的内容可能被篡改;电子商务过程中,信用卡帐号和密码可能暴露在第二者面前;一些人可能会假冒合法用户身份或者假冒网站来用于一些非法目的,而事后又对自己的行为进行抵赖:系统可能由于黑客的攻击而无法提供有效的服务。这些问题给计算机从业人员揭示信息安全问题的严重性。 因此如何保证信息的机密性、完整性、不可抵赖性、有效性,成为网络安全关注的核心问题。人们由此采用防火墙和数据加密等技术来保障网络本身的安全。2.1数据加密技术的起源和发展 早在互联网出现之前,密码技术已经广泛应用于军事和民用方面。有记载的最早的密码系统可能是希一腊历史学家Polybios发明的Polvbios格板,它是一种替换密码系统。人们很早以前将密码系统分为代替和换位密码两种。 从密码史的发展来看,1949年,信息论的创始人仙农(C. E.Shannon)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档 > 租房合同

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号