基于RSA的数字签名技术.doc_第1页
基于RSA的数字签名技术.doc_第2页
基于RSA的数字签名技术.doc_第3页
基于RSA的数字签名技术.doc_第4页
基于RSA的数字签名技术.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于RSA的数字签名技术胡思雨1,孙秀丽2,张瑞华3(1安徽师范大学数学计算机科学学院,安徽,芜湖,241000 2安徽师范大学数学计算机科学学院,安徽,芜湖,241000 3安徽师范大学数学计算机科学学院,安徽,芜湖,241000)摘 要:信息是推动社会向前发展的重要资源。随着计算机网络技术的不断发展,Internet技术的日趋成熟,由此而来的互联网信息交换技术给人们的工作、学习和生活等带来了便捷和好处,但是同时网络中的安全问题也日趋严重,病毒、木马程序、远程监听,远程攻击等无时无刻都在困扰着人们,特别是一些商业,科研,国防机构,常常要在互联网上传输一些机密资料。计算机网络的开放性与共享性,系统的复杂性,边界不确定性,以及路径不确定性都导致了网络安全性问题的发生,使得网络很容易受到外界的攻击和破坏同样也使数据信息的保密性受到了严重影响。因此,网络中的信息安全技术和加密技术就显得尤为重要。密码技术是信息安全的核心技术。公钥密码在信息安全中担负起密钥协商、数字签名、消息认证等重要角色,已成为最核心的密码。本文介绍了数字签名技术的基本功能、原理和实现条件,并实现了基于RSA的数字签名算法。 关键词:网络安全;加密技术;数字签名技术;密钥管理;加密技术应用;RSA算法;The Digital Signature Technology Based on RSAHU Siyu,SUN Xiuli,ZHANG Ruihua(School of Mathematics & Computer Science,Anhui Normal University,Wuhu241000,China)Abstract:Information is an important resource to push society forward. With the continuous development of computer network technology, Internet technology becoming mature, and Internet information exchange technology to give people work, study and life has brought convenience and benefits, but at the same time in the network security problem is increasingly serious, viruses, Trojan horse program, remote monitoring, plagued by ranged attacks, etc. All the people, especially some business, scientific research, the defense agencies, often need to transport some confidential data on the Internet. Openness and sharing of computer network, the complexity of the system, the boundary uncertainty, and the path of uncertainty are lead to the network security problems, and makes the network very vulnerable to the outside world and also the data information privacy has been seriously affected. Therefore, in the network information security technology and encryption technology is particularly important. Cryptography is the core of information security technology. Public key password for key agreement in information security, digital signatures, message authentication and other important role, has become the core of the password. This paper introduces the basic function of digital signature technology, principle and the implementation condition, and realizes digital signature based on RSA algorithm.Key words:Internet security , encryption techniques, digital signature technology, key management ,encryption techniques application, RSA algorithm 71、引言21世纪的特征就是数字化、网络化和信息化,它是一个以网络为核心的信息时代。因为网络可以非常迅速地传递信息,要实现信息化就必须依靠完善的网络。网络对社会生活的很多方面以及社会经济的发展具有不可估量的影响,正因为如此,在网络信息传输过程中,如果数据受到攻击和监听,由此造成的损失也是巨大的,因此网络信息的安全问题不得不引起我们的重视。特别是对于诸如银行、通迅和国防等等传输机密数据的网络而言,其网络中数据的安全性就更加重要了。网络安全是加密技术产生的直接原因和发展的指导方向。然而如今随着网络技术的不断发展,Internet规模逐渐扩大和成熟,由此给人们的工作、学习和生活等便捷的同时,网络的安全问题也日趋严重,病毒、木马、黑客等各种各样的攻击也无时无刻地困扰着我们,尤其是对那些商业,科研,国防等在网络上传输敏感数据的机构,网络信息安全的解决更加迫在眉睫。病毒攻击、黑客攻击的泛滥猖獗使处在网络时代的人们感觉无所适从。也许已经有了一定的技术手段可以改善网络安全的状况,然而,这一切的安全问题是不可能全部找到解决方案,况且有的是根本无法找到彻底的解决方案,如病毒木马程序,因为任何反病毒程序都只能在新病毒被发现之后才能捕获它们,迄今为止还没有一家反病毒软件开发商敢承诺他们的软件能查杀所有已知的和未知的病毒,这说明,网络永远不可能得到绝对的安全。所以我们不能期待网络绝对安全了再展开网络的应用,只要网络存在,病毒、黑客也会存在,它们是一个共存体,就像是矛与盾的关系。加密技术就是在网络安全的迫切需要下应运而生的,它为人们在网络上进行的数据交换行为提供了一定的安全保障,如在网络中进行文件传输、电子邮件往来和进行合同文本的签署等。其实加密也不是什么新鲜事物,只不过运用在当今电子商务、电脑网络中还是近几年的事情。2、数据加密技术原理对于任何一个一般加密系统至少包括下面四个组成部分: (1)未加密的报文,也称明文。 (2)加密后的报文,也称密文。 (3)加密解密设备或算法。 (4)加密解密的密钥。 发送方用加密密钥,通过加密设备或算法,将信息加密后发送出去。接收方在收到密文后,用解密密钥将密文解密,恢复为明文。如果传输中有人窃取,他只能得到无法理解的密文,从而对信息起到保密作用。一般的数据加密模型如图1所示:加密过程包括两个元素:算法和密钥。一个加密算法是将普通明文信息(文件或者数据等)与一窜数字或者数字字母的组合(密钥)进行结合,产生不可理解的无意义的密文的步骤。算法以及密钥对加密过程来说是同等重要的,密钥是用来对数据进行编码和解码的一种特殊算法。在安全保密中,可通过适当的密钥加密技术和管理机制,来保证网络的信息通讯安全。 从20世纪60年代起,随着电子技术、计算技术的迅速发展以及结构代数、可计算性和计算复杂性理论等学科的研究,密码学进入了一个新的发展时期,在20世纪70年代起,美国的数据加密标准DES(Data Encryption Standard),和公钥密码体制(public key crypto-system)的出现,成为近代密码学发展史上两个重要里程碑。其中又有两种重要的数据加密技术:对称式加密技术和非对称式加密技术。2.1 对称式加密技术对称密钥加密的发送和接受的双方都使用相同的密钥,并且密钥是保密的,不向外公开,通常称之为“Session Key”。这种加密技术的共同特点在于加密和解密密钥相同,发送方用密钥对数据(明文)进行加密,接收方收到数据后,用同一个密钥进行解密,这类加密技术实现容易,加解密速度快。当然,这种加密方式必须在数据发送接收之前保证收发双方拥有相同的密钥,这就需要通过绝对安全的方式来传送密钥(一般称之为安全信道)。由于容易实现和效率高,这种加密技术被广泛使用,最有名的如美国政府所使用的DES(Data Encryption Standard)加密技术和AES(Advanced Encryption Standard)加密技术。DES又叫数据加密标准,属于常规密钥密码体系,是一种典型的“对称式”加密法。这种加密技术由IBM开发,在1977年被美国定为联邦信息的一个标准。ISO曾将DES作为数据加密标准。DES是一种分组对称加解密算法,在加密前,先对整个明文进行分组。每一个组长为 64 bit。然后对每一个 64 bit 二进制数据进行加密处理,产生一组 64 bit 密文数据。最后将各组密文串接起来,即得出整个的密文。使用的密钥为 64 bit(实际密钥长度为 56 bit,有 8 bit 用于奇偶校验)。2.2 非对称式加密技术1976年,美国学者Diffe和Hellman为解决常规密钥密码体制的密钥分配问题及对数字签名的需求,提出一种密钥交换全新的协议,它允许数据在不安全的传输环境中进行通信,并安全的使用一致的加密密钥,即“公开密钥系统”。公开密钥密码体制使用不同的加密和解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。 相对于“对称加密算法”这种方法也叫做“非对称加密算法”2。和对称加密算法有所不同的是,非对称加密算法需要两个密钥:即私有密钥(Private Key)和公开密钥(Public Key)。私有密钥和公开密钥是对应的一对:用公开密钥进行加密的数据,只能通过相对应的私有密钥才能解密;同理,用私有密进行加密的数据,只能用相对应的公开密钥才能解密。只是由于加密和解密分别使用不同的两个密钥,所以这种算法也被叫作非对称加密算法。非对称加密算法的基本原理是,发送方(加密者)必须首先知道接收方(解密者)的公开密钥,然后利用接收方(解密者)的公开密钥加密明文;接收方(解密者)收到加密密文后,使用自己的私有密钥解密密文。显然,采用非对称加密算法,发送接收双方在通信之前,接收方必须将随机生成的公钥发送给发送方进行加密,而自己保留私钥。3、RSA算法的设计与实现3.1 RSA算法的原理非对称的加密算法含有两个密钥,特别适用于分布式系统中的数据加密,其中RSA算法为当今世界上应用最为广泛的非对称加密算法。RSA 公开密钥密码体制的原理是:根据数论,寻求两个大素数比较简单,而将它们的乘积分解开则极其困难。在这个体系中每个用户有两个密钥:加密密钥 和解密密钥。加密密钥是公开的,使得系统中任何用户都可无限制使用,而对解密密钥中的 则保密,只有使用者自己知道。具体实现过程为:1. 随机选取两个素数2. 计算3. 计算欧拉函数4. 在2和之间随机选择一个数, 必须和互素,整数用做加密密钥。5. 从公式中求出解密密钥。6. 得公钥, 私钥 。公开公钥,但不公开私钥。7. 将明文 (假设是一个小于的整数)加密为密文,计算方法为: 8. 将密文解密为明文,计算方法为:然而只根据和(不是和)要计算出是不可能的。因此,任何人都可对明文进行加密,但只有授权用户(知道)才可对密文解密。3.2 RSA算法的实现图3.2.1 密钥产生过程图2 密钥产生过程3.2.2 解加密过程如图3图3解加密过程4、基于RSA算法的数字签名技术虽然RSA算法存在一些缺点,但是它仍然是目前世界公认的最好的算法,因为它不仅可以作为加密算法使用,还可以用作数字签名和密钥分配与管理。数字签名技术是实现交易安全的核心技术之一,在保障电子数据交换(EDI)的安全性上是一个突破性的进展,可以解决否认、伪造、篡改及冒充等问题。4.1数字签名技术的原理数字签名(Digital Signature)是公开密钥加密技术的一种应用, 是指用发送方的私有密钥加密报文摘要, 然后将其与原始的信息附加在一起, 合称为数字签名。必须满足三个性质: (1)接受者能够核实并确认发送者对信息的签名,但不能伪造签名。(2)发送者事后不能否认和抵赖对信息的签名。(3)当双方关于签名的真伪发生争执时,能找到一个公证方做出仲裁,但公证方不能伪造这一过程。常用的数字签名技术有RSA签名体制、Robin签名体制、ElGamal签名体制及在其基础之上产生的数字签名规范 DSS签名体制。报文的发送方从报文文本中生成一个128位或160位的单向散列值(或报文摘要),并用自己的私有的密钥对这个散列值进行加密,形成发送方的数字签名;然后将这个数字签名作为报文的附件和报文一起发送给报文的接收方;报文的接收方首先从接收到的原始报文中计算出128位的散列值(或报文摘要),接着再用发送方的公开密钥对报文附加的数字签名进行解密;如果这两个散列值相同,那么接收方就能确认数字签名是发送方的。数字签名的过程如图44.2 RSA用于数字签名的实现 RSA算法具有以下特点:加密密钥(即公开密钥 )PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法 E和解密算法D也都是公开的。虽然秘密密钥S是由公开密钥PK决定的,但却不能根据 PK计算出SK。它们满足条件 :加密密钥 PK对明文M加密后,再用解密秘钥SK解密,即可恢复出明文,或写为:DSK(ESK(M)= M 。加密密钥不能用来解密,即 (DPK(EPK(M)M 。在计算机上可以容易地产生成对的 PK和SK。从已知的PK实际上不可能推导出SK。加密和解密的运算可以对调即:EPK(M)(ESK(M)(M)=M所以能够防止身份的伪造、冒充,以及对信息的篡改。 所以可以用RSA去对数字签名进行加密解密。由RSA的原理及特点可得出RSA签名的过程如下:RSA签名的过程如图5验证过程如图6以A 将签名信息传送给B 为例, A 签名的过程: A用自己的私钥 对信息 进行签名, 即 。并将作为A 对消息 的数字签名附在消息后; B 验证的过程:B用A 的公钥 对签名进行验证, 即, 若, 则签名正确。完整地, 验证算法可以表达如下:其中表示如果phase 为真, 则整个表达式的最终结果为true, 否则表达式的最终结果为false。4.3 RSA算法的仿真例设,取,解方程,得。若有明文: public key encryptions,现将明文块分为:pu bl ic ke ye nc ry pt io ns如利用英文字母顺序: 即a为00,b为01,c为02, .,y为24, z为25, 将明文数字化得: 1520011108021004240413021724151908141418 利用加密得密文: 009516481410129913651379233317511289 5、小结 计算机网络技术的不断发展和Internet技术的日趋成熟,让信息资源安全的重要性和紧迫性也不断显现出来:而数据安全不仅仅是数据加密技术和加密算法,它还涉及其他很多方面的技术与知识,如:黑客技术、防火墙技术、入侵检测技术、病毒防护技术、信息隐藏技术等。所以,这就要求一个完善的数据加密安全保障系统,不仅应该善于

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论