RSA密码算法及其Java实现


RSA密码算法及其JaVa实现唐郑熠1,杭志2一,苏赛军3(1.贵州大学计算机软件与理论研究所,贵州贵阳550025;2.湖南商学院计算机与电子工程学院,湖南长沙410205l3.中南大学信息科学与工程学院,湖南长沙410083)摘要:RsA密码算法是目前公认的,在理论和实际应用中最为成熟和完善的一种非对称密钥体制。该文对其原理进行了介绍,并证明了该算法的正确性。最后,使用Java语言编程实现了RSA密码算法,并进行了测试。关键词:密码学;非对称密钥;骼A;大整数运算;JaVaRSAcrypto—aIgorithmandltsRealizationwithJaVaTANGZheng—yil,HANGZh’2一,SUSai—jun3f}.妇tfU抬of蝴艇妒S。ftwa愕a船『打∞叫.G娩啪u㈣憎嘲础.G泓昭550026。P.R.∞}na}2.Sc缸。口{ofca磷moera订oE{ectn强祀E踞g衲ee嘲谣.h饼1anBus螽j8嚣co自鬯静.C蚰ngs妇478205.P.冠.C秘nla;3.s咖。l。于m内潲ationse磅配ea硼邑鳓}e8i魂g.G醐t嘲S0n抽渤话删够.c打a豫s船4}0085.P.冠.cf}靖砖Abstract:RS^crypto—aIgorjthmisrecogniz酣asthemostmatureandperfectjna¨asymmetr.calkeysystematpPesent.Thispaperintroducesitsprjnc.pIe,andproVesthecorrectnessoftheaIgoritnm.FjnaIIy,wemaketheRSAcrypto—aJgorithmwfthJaVacometure,andte8tit.Keywords:cryptography;asymmetricaIkey;T己SA;bjgintegeroperation;Java1引言计算机技术与互联网的迅猛发展,在给人们提供高效快速的传输媒介的同时,也带了保障信息安全的新问题。密码学理论和技术的研究与应用是信息安全技术的核心研究领域,其基本目的,是使未授权者无法理解在不安全信道中传输的信息。目前在网络中,一般采用两种密码体制:对称密钥体制和非对称密钥体制。RSA密码算法,是非对称密钥体制中最具影响力的密码算法。2RSA密码算法简介对称密钥体制的特点是解密密钥与加密密钥相同或者很容易从加密密钥导出解密密钥,因而加密密钥的泄露会使系统变得不安全。它的一个严重缺陷是在任何密文传输之前,发送者和接收者必须使用一个安全信道预先商定和传送密钥。而在实际的通讯中,通信双方则很难确定一条合理的安全通道。而在非对称密钥体制中,解密密钥和加密密钥不同,难以从一个计算出另一个,解密运算和加密运算可以分离。通信双方无需事先交换密钥就可建立起保密通信。非对称密钥体制克服了对称密钥体制的缺点,特别适用于计算机网络中的多用户通信,它大大减少了多用户通信所需的密钥量,节省了系统资源,也便于密钥管理。36在非对称密钥体制中,对信息进行明文/密文变换时,每个用户都有一对不相同的密钥,一个用于加密,称为加密密钥(因为可以公开,故又简称公钥)。另一个用于解密,称为解密密钥(只有用户知道,故又称私钥)。公钥和私钥具有一一对应的关系,用公钥加密的数据只有用相应的私钥才能解密。非对称密钥体制的加密解密过程如图1所示。厂_丝墅]密好吲X)厂丝!!堕]呱之辩⋯111竺!!!:}’1竺兰!兰j⋯’明立脊Dd睇z∞)▲●加密密毫lJPK;种密鬻静jsKi圈⋯⋯一jI............,..........rJ图1非对称密钥体制RSA密码算法是由美国麻省理工学院的三位数学家:Ronald.L.Rivest,、Adi.Shamir和Leonard.Adleman提出的,他们在1978年发表的著名论文《AMethodforObtainingDigitalSignaturesandPublic—KeyCryptosystems》中提出了这个迄今为止在理论上最为成功的非对称密钥体制的密码算法。RSA密码算法的基础是数论中的Euler定理,目前主流的看法认为,它的安全性依赖于大的因数分解的困难性,即求两个大素数的乘积是很容易计算的,但要分解两个大素数的乘积,求出它们 万方数据 的素数因子却是非常困难的。但从严格的技术角度来说,这是不正确的。在数学上至今还未证明分解嚼个大素数的乘积就是攻击RSA的最佳方法,也未证明分解大整数就是NP问题。但在过去的数百年中,大整数因子分解问题确实是令数学家头疼而未能有效解决的世界性难题。RSA密码算法从提出到现在已经有30年的时间了,在广泛的应用中证明了它的安全性是相当可靠的。但是,在实现RSA密码体制时所产生的漏洞在特定条件下会导致对RSA密码体制的攻击。为了避免安伞缺陷,在实现RSA密码体制时必须精心考虑实现细节。3RSA密码算法原理及正确性证明RSA密码算法的工作过程町以分为两个部分:产生密钥、加密和解密。RSA密码算法产生密钥的过程如下所述:(1)产生两个大素数p和q,它们必须保密,不能泄露。(2)计算n=pq,这个n被称为模数,它可以公开。(3)将卜n中与n互素的数的个数记为巾(n),随机选取正整数e,使其与巾(n)互素,即gcd(e,巾(n))=I。至此,就产生了公钥(n,e)。(4)求出正整数d,使其满足e木d=1mod巾(n),即e=d叫mod巾(n)。至此,就产生了私钥(n,d)。(5)在产生公钥和私钥后,要将p、q和巾(n)销毁,不能泄露。在进行加密前,要将明文分块并数字化。每个块的长度没有明确规定,但其数字化后的长度不能大于模数n的长度。然后使用下面的运算式进行加密和解密:(1)加密变换:c=m。modn(2)解密变换:m=cdmodn要RSA密码算法加密和解密运算式的正确性,需要以下几个定义和定理:定义l设m为正整数,将1~m中与m互素的数的个数记为巾(m),则称巾(m)为Euler函数。定义2(模n乘法群)Z是整数集,Z。={0,l,⋯⋯,n—l}是整数模n集,Z。十={a∈Z。Igcd(a,n)=1)。定理l(Euler定理)a、m为整数,若a、m互素,即gcd(a,m)=1,则a巾‘删三lmodm。定理2(amodb)n=anmodb定理2的证明如下:设amodb=d,则a=bk+d,(amodb)n=dn,an=(bk+d)“。根据展开公式(ax+b)n=C。o(ax)“bo37+c。1(ax)”1b1+c。2(ax)”2b2+⋯⋯+cnn(ax)%。,以得到下列式子:(bk+d)n=C。o(bk)“do+C。1(bk)”1d1+C。2(bk)“一2d2+⋯⋯+C。“(bk)0dn除了最后一项以外,其他项都是b的倍数,它们的和也必然是b的倍数,所以它们的和对b取余的结果为0。而最后一项C。“(bk)odn,由此可以保证(bk+d)nmodb=dn,即a“modb=dn。首先,必须注意一个前提,即在m   然而,由于电子商务系统高度依赖计算机网络技术,而互连网所具有的自由、开放则不可避免地使电子商务系统面临着各种各样的安全隐患与威胁。为 了有效保障商务各方正当权益,人们理所当然地迫切要求电子商务系统必须具有高可靠性、强安全性,以确保所传输商务数据的完整性、安全性、及时 性、私密性、不可否定性。
   数字签名技术作为电子商务交易中验证身份真伪以及交易不可否认的核心技术,是电子商务安全性保障的重要组成部分,正越来越受到社会各界的广泛 关注。
   针对数字签名技术中签名信息易被移除的问题,本文在自然语言处理技术的基础上,提出了基于语义水印的数字签名算法。该算法的基本思想是在不改 变文本语义的前提下,通过同义词替换算法嵌入签名信息。此外,在数据加密阶段,综合运用DES算法和RSA算法,使得破解及篡改签名信息更加困难。 实验证明,该算法具有容易实现、鲁棒性好、抗检测性强的优点。
   本文的主要研究内容包括以下几个方面:
   (1)研究和比较传统的密码学算法,根据对称密钥加密算法和非对称密钥加密算法的特点及实际需要,提出了基于DES和RSA综合的数字签名协议,解决 了单一加密算法在处理效率、密码管理等方面存在的问题。
   (2)针对传统文本水印算法存在抗攻击性不够强,鲁棒性较差,隐藏性不好的问题,基于同义词替换,提出了文本语义数字水印算法。该算法基本原理 是在不改变文本语义的前提下,通过同义词替换算法嵌入签名信息。实验结果表明,该算法比传统算法在鲁棒性和抗检测性指标方面有一定的优势。
   (3)将本文所提出的协议和算法进行应用,实现了一个数字签名系统。实验表明,本文的方法是可行的和有效的。 7.期刊论文 罗婉平 现代计算机密码学及其发展前景 -江西广播电视大学学报2009,""(3) 随着人们对计算机安全应用的重视,密码学得到了广泛的关注,密码体制中有对称密钥密码和非对称密钥密码两种体制,本文介绍了密码技术的新方向 和最新进展,并简要描述了密码学在电子投票选举服务、检测电脑病毒服务等方面的应用.阐述了由于计算机网络及电子通信的普及,密码学将有着广阔的 发展前景. 8.期刊论文 姜丽华.马永光 AKS算法对现代密码学的影响 -微机发展2004,14(4) 文中简要介绍了数据加密技术的发展,对于DES,RSA及Rijndael技术进行了较为详细的论述.并提出了一种基于RSA和AES的混合密码体制,引入一个新 的算法AKS及其对于加密技术的影响.针对素数测试的新算法AKS,讨论了其优缺点并阐述了它对于加密技术的影响.将它应用于加密算法,虽然运行时间还 远远不能达到要求,但可以把它作为视安全性为第一位的一种新的尝试. 9.学位论文 陈巍 光纤量子密钥分配的实验研究 2008 密码学有着古老历史,在近代逐渐发展成为一门系统的应用科学。密码学的应用非常广泛,大到关系国计民生的军事、国防、外交等领域;小到每 个人每天的日常生活,如银行帐户存取、网络邮箱管理等,都在应用着密码学的研究成果。 现今应用的密码学主要可以分为对称密钥和非对称密钥(公钥)两大体系。对称密钥在应用中遭遇的最大难题是如何在通信双发之间安全的分发密钥 :公钥体系虽然可以使用不同的加密密钥和解密密钥,但是其安全性是建立在计算复杂度的基础之上,在计算机计算能力大幅度提高的今天,特别是分 布式计算出现和量子计算机研究的发展,使其安全性受到了前所未有的威胁。 量子密码学是量子力学和密码学结合的产物,它由量子力学的基本原理(测量塌缩理论、海森堡不确定原理和量子不可克隆定律)保证了:密钥可以 被安全分发,量子线路中存在的窃听行为可以被收发双发检测到。使用量子密钥分配分发的安全密钥,结合“一次一密”的加密方法,可以实现绝对安 全的保密通信。正是由于量子密码技术的安全特性,使其成为了下一代的保密通信技术。经过了大量科研人员20余年的不懈努力,量子密码技术在理论 和实验方面都取得了突飞猛进的发展。 本文主要总结了最近4年内,我们在量子密钥分配技术的工程实现方面走过的道路和取得的主要成果。我们的实验研究基于通信波长光纤相位编码方 案,主要包含了以下几个方面: 1.我们建立了一套基于Faraday-Michelson干涉仪的量子密钥分配系统(F-M系统),包含了完整硬件控制电路和配套软件。系统在原有系统基础上将 光脉冲重复速率提高到了1 MHz(原有系统速率为10 kHz),采用USB2.0接口与主机进行数据交互,实现了“即插即用”。 2.基于F-M量子密钥分配系统,和国际上最近提出的诱骗态(decoy)量子密钥分配协议,我们进行一系列的decoy态量子密钥分配实验,包括:实验室 内123 km的光纤单诱骗态(两态)量子密钥分配实验,以及北京网通商用光纤线路中的32 km两态decoy量子密钥实验。前者是截至目前国际上现有报道中 ,距离最远的两decoy态量子密钥分配实验,后者是目前为止国际上仅有的实际商用光纤线路的decoy态量子密钥分配实验。 3.标记单光子源(HSPS)是近 几年引起较多关注的光源,它基于晶体的自发参量下转换过程,由于利用了辐射的双光子之间的时间关联性,可以在理论上产生优于现有弱相干光源的 光子分布,我们在国际上首次通过实验验证了:将HSPS与decoy态QKD技术相结合的方案,在同等条件下,可以得到目前最接近于理想单光子光源的密钥 生成性能。 4.量子密钥分配网络是当前国际上研究的热点之一。我们于2007年3-4月在北京网通的商用光纤骨干网络中,利用自主研发的基于波长路由原理的 “量子路由器”,实现了四端口星型量子密钥分配网络的试运行。证明了我们提出的量子密钥分配网络方案可以与现有光纤骨干网络集成,并可覆盖大 型都市。这是中国首个在商用光纤中运行的量子密钥分配网络,并且也是目前国际上唯一的在商用光纤中运行的,无中转可全连通的量子密钥分配网络 。此外,我们也对星型网络在扩展时,网络串扰对用户造成的影响进行了理论分析,并取得了初步的实验结果。 10.学位论文 王柯柯 基于PKI的认证中心的研究与实践 2004 进入新的世纪,随着互联网技术在我国的迅速推广和普及,各种网络应用如电子商务、电子政务、网上银行等也在我国迅速发展,但同时安全的问 题也随之产生,为此,在公开密钥加密技术的基础之上形成和发展起来的PKI(公开密钥基础设施)很好地为基于互联网的应用提供了全面的安全服务。 PKI是一个基础设施,利用非对称密码算法的原理和技术来实现,提供安全的服务并且具有通用性的安全,当各种网络应用需进行加密操作或数字签名等 安全服务的时候,可以采用它所提供的密码和证书管理平台,利用数字证书来实现安全保障。PKI提供的服务有多种,其中最核心的部分就是负责签发数 字证书的CA认证中心。 认证中心CA是PKI框架中唯一能够发布和撤销证书的实体,它可以按照一定的信任模型来组织,如层次模型、分布式模型或Web模型等,在通常情况 下组织成层次模型。CA中心为每个使用公开密钥的用户发放一个数字证书,数字证书的作用是证明证书中列出的用户名称与证书中列出的公开密钥对应 ,当用户身份和各项相关信息通过注册中心(RA)审核后给用户颁发证书,使证书持有者和持有者公/私密钥对、相关信息与证书中心建立一种联系,使网 上交易的用户的客观真实性与证书的真实性一致。 CA提供的服务包括:证书的申请、证书的审批、证书的颁发(下载)、证书的的更新和撤销、证书的在线查询和证书废止列表(CRL)的管理功能。数字 证书认证中心作为权威的、公正的和可信赖的第三方,在数字证书认证过程中的作用至关重要,它涉及网上交易各方的身份信息、严格的加密技术和认 证程序,基于其牢固的安全机制,CA应用可扩大到一切有安全要求的网上数据传输服务。 论文研究的主要内容就是基于PKI的认证中心CA的研究和实践,作者首先对密码学中对称密钥密码算法、非对称密钥密码算法和散列函数进行了研究 ,然后在密码学知识的基础之上深入了解了PKI相关理论,最后结合具体项目将理论和实践相结合,对CA认证中心的具体实现作了相关研究和实践。 本文链接:http://d.g.wanfangdata.com.cn/Periodical_dzzwyjc200812011.aspx 授权使用:中南民族大学(znmzdx),授权号:304863d3-8a91-44bb-8dc6-9e3400eb934b 下载时间:2010年11月20日
还剩5页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 8 金币 [ 分享pdf获得金币 ] 1 人已下载

下载pdf

pdf贡献者

wu1g119

贡献于2015-04-19

下载需要 8 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf