论文首页哲学论文经济论文法学论文教育论文文学论文历史论文理学论文工学论文医学论文管理论文艺术论文 |
论文关键词:RSA信息安全 加密解密 数字签名
论文摘要:密码技术是信息安全的核心技术公钥密码在信息安全中担负起密钥协商、数字签名、消息认证等重要角色,已成为最核心的密码。本文介绍了数字签名技术的基本功能、原理和实现条件,并实现了基于RSA的数字签名算法
0.引言
随着计算机网络的发展,网络的资源共享渗透到人们的日常生活中,在众多领域上实现了网上信息传输、无纸化办公。因此,信息在网络中传输的安全性、可靠性日趋受到网络设计者和网络用户的重视数字签名技术是实现交易安全的核心技术之一,在保障电子数据交换((EDI)的安全性上是一个突破性的进展,可以解决否认、伪造、篡改及冒充等问题
1.数字签名
1.1数字签名技术的功能
数字签名必须满足三个性质
(1)接受者能够核实并确认发送者对信息的签名,但不能伪造签名
(2)发送者事后不能否认和抵赖对信息的签名。
(3)当双方关于签名的真伪发生争执时,能找到一个公证方做出仲裁,但公证方不能伪造这一过程
常用的数字签名技术有RSA签名体制、Robin签名体制、E1Gamal签名体制及在其基础之上产生的数字签名规范DSS签名体制。
1.2数字签名技术的原理
为了提高安全性,可以对签名后的文件再进行加密。假如发送方A要给接收方B发送消息M,那么我们可以把发送和接收M的过程简单描述如下:
(1)发送方A先要将传送的消息M使用自己的私有密钥加密算法E(al)进行签名,得V=E(al(M))其中,A的私有加密密钥为al;
(2)发送方A用自己的私有密钥对消息加密以后,再用接收方B的公开密钥算法Ebl对签名后的消息V进行加密,得C=E(b l (V))。其中,B的公开加密密钥为6l.
(3)最后,发送方A将加密后的签名消息C传送给接收方B
(4)接收方B收到加密的消息C后,先用自己的私有密钥算法D(62)对C进行解密,得V=D(h2挥))其中,B的私有解密密钥为62(5)然后接收方再用发送方A的公开密钥算法D(a2)对解密后的消息V再进行解密,得M=D(a2(V))。其中,,A的公开解密密钥为a2=这就是数字签名技术的基本原理。如果第三方想冒充A向B发送消息,因为他不知道.a的密钥,就无法做出A对消息的签名如果A想否认曾经发送消息给B.因为只有A的公钥才能解开A对消息的签名,.a也无法否认其对消息的签名数字签名的过程图l如下:
2. RSA算法
2.1 RSA算法的原理
RSA算法是第一个成熟的、迄今为止理论上最成功的公开密钥密码体制,该算法由美国的Rivest,Shamir,Adle~三人于1978年提出。它的安全性基于数论中的Enle:定理和计算复杂性理论中的下述论断:求两个大素数的乘积是容易计算的,但要分解两个大素数的乘积,求出它们的素因子则是非常困难的.它属于NP一完全类
2.2 RSA算法
密钥的产生