实现数字签名的rsa算法的设计与实现

实现数字签名的rsa算法的设计与实现

ID:31920079

大小:149.00 KB

页数:25页

时间:2019-01-27

实现数字签名的rsa算法的设计与实现_第1页
实现数字签名的rsa算法的设计与实现_第2页
实现数字签名的rsa算法的设计与实现_第3页
实现数字签名的rsa算法的设计与实现_第4页
实现数字签名的rsa算法的设计与实现_第5页
资源描述:

《实现数字签名的rsa算法的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、课程实践报告书课程名称:密码学与网络安全课程实践题目:实现数字签名的RSA算法的设计与实现学生姓名:专业:班别:学号:指导老师:日期:2016年6月18日实现数字签名的RSA算法的设计与实现摘要随着计算机网络和信息技术的发展,信息安全在各领域发挥着越来越重要的作用,其中密码学已成为信息安全技术的核心,本文主要介绍了信息加密技术的应用。RSA算法是目前公认的在理论和实际应用中最为成熟和完善的一种公钥密码体制,它是第一个既能用于数据加密也能用于数字签名的算法,是公钥密码体制的代表。数字签名是起到身份认证、核准数据完整性的一种信息安全技术。它通

2、过认证技术来辨认真伪。RSA数字签名体制使用的是RSA公开密钥密码算法进行数字签名。本文主要内容包括:第一,对RSA算法进行系统的介绍;第二,介绍RSA数字签名的一些基本概念和数字签名的理论实现过程;第三详述RSA数字签名的设计与实现,主要实现的模块包括RSA密钥的产生(一对公钥和私钥),RSA加密算法和解密算法的实现,;第四,对该系统进行了整体的测试和分析改进。关键字:RSA算法;加密;解密;RSA数字签名第24页目录1引言31.1课题的研究背景31.2课题的研究意义32RSA算法和RSA数字签名算法的概念设计32.1RSA算法的概念和

3、原理32.1.1RSA算法介绍32.1.2RSA算法的实现原理32.2RSA数字签名基本概念和RSA数字签名算法的实现原理42.2.1RSA数字签名基本概念42.2.2RSA数字签名算法的实现原理53RSA数字签名的逻辑设计与实现63.1RSA数字签名的总体设计63.1.1RSA数字签名所需实现的功能63.1.2总体要求和设计6第24页3.2各部分的设计实现73.2.1密钥产生的实现73.2.2产生消息摘要的设计实现103.2.3数字签名的设计实现123.2.4验证数字签名的设计与实现153.2.5RSA数字签名的运行结果184软件的整体

4、测试和分析改进184.1软件的整体测试184.2性能分析与改进设想19开发体会19参考文献20第24页1引言1.1课题的研究背景随着电子信息技术的迅速发展,人类已步入信息社会。但是由于整个社会形成了一个巨大的计算机网络,任何一个计算机网络出现的安全问题,都会影响整个国家的网络安全,所以信息安全、计算机网络安全问题已引起了人类的高度重视。网络的安全措施应是能全方位地针对各种不同的威胁和脆弱性,这样才能确保网络信息的保密性、完整性和可用性。现代密码学已成为信息安全技术的核心,密码学是以研究通信安全保密的学科,即研究对传输信息采用何种秘密的变换

5、以防止第三者对信息的窃取。RSA公钥加密算法是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也十分流行。随着越来越多的商业应用和标准化工作,RSA已经成为最具代表性的公钥加密技术。现今,网上交易加密连接、网上银行身份验证、各种信用卡使用的数字证书、智能移动电话和存储卡的验证功能芯片等,大多数使用RSA技术。1.2课题的研究意义随着电子商务的发展,网络上资金的电子交换日益频繁,如何防止信息的伪造和欺骗成为非常重要的问题。目前关于数字签名的研究主要集中点是基于公钥密码体制的数字签名。手写签名的每一项业务都是数字签名的潜在用场

6、。数字签名可以提供数据完整性、真实性和不可否认性。数字签名技术在身份识别和认证、数据完整性、抵赖等方面具有其它技术无法替代的作用,它在军事、电子商务和电子政务等领域有着极广泛的应用。而在公钥体制中,RSA是一个较为完善的公钥密码算法,不仅能够同时用于加密和数字签名,而且易于理解和操作,是被广泛研究的公钥密码算法。因此,基于RSA的数字签名具有较强的研究性和实际应用意义。2RSA算法和RSA数字签名算法的概念设计2.1RSA算法的概念和原理2.1.1RSA算法介绍RSA算法是一种公钥密码算法,实现RSA算法包括生成RSA密钥,加密和解密数据

7、。RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。RSA是被研究得最广泛的公钥算法。RSA的缺点主要有:A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。B)分组长度太大,为保证安全性,n至少也要600bits。第24页2.1.2RSA算法的实现原理1)随机选择两个不同的素数p和q,它们的宽度是密钥宽度的二分之一。2)计算出p和q的乘积n。3)在2和Φ(n)之间随机选择一个数e,e必须和Φ(n)互素,整数e用做加密密钥(其中Φ(n)=(p-1)*(q-1))。4)从公式ed≡1modΦ(n)中求出解密密

8、钥d。5)得公钥(e,n),私钥(d,n)。6)公开公钥,但不公开私钥。7)将明文P(假设P是一个小于n的整数)加密为密文C,计算方法为:C=P^emodn;8)将密文C解密为明文P,计算方法

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。