电子商务中常用的RSA算法实现

来源 :商场现代化 | 被引量 : 0次 | 上传用户:anewday4all
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要] 电子商务的发展使得网络信息的安全传输问题显得尤为重要。文章对电子商务中经常会用到的RSA加密算法原理进行了描述并用Java语言编程实现了RSA算法。该程序由五个模块组成,它们是主函数模块、转换字符串为大整数模块、转换大整数为ASCII字符串模块、加密模块和解密模块。
  [关键词] RSA 公钥 私钥 加密 解密 Java语言
  
  随着信息技术的发展,特别是电子商务的发展,网络信息的安全传输逐渐成为人们最为关心的事情。RSA加密算法是目前应用最广泛的公钥加密算法。特别适用于通过internet传送的数据,常用于数字签名和密钥交换。本文用Java语言实现了RSA算法。
  一、RSA算法描述
  密钥对的产生。选择两个大素数p 和q 。计算:n=p*q,然后随机选择加密密钥e,要求e和(p-1)*(q-1)互质。最后,利用Euclid算法计算解密密钥d,满足e*d=1mod((p-1)*(q-1)),其中n和d也要互质。{e,n}是公钥,{d,n}是私钥。加密信息 m(二进制表示)时,首先把m分成等长数据块 m1 ,m2,…,mi,块长s,其中2∧s<=n,s尽可能的大。对应的密文是:ci=(mi∧e)mod n,解密时作如下计算:mi=(ci∧d)mod n
  二、程序实现的主要思想
  Java中的BigInteger类提供了实施RSA公钥加密系统所必需的全部可能性。本程序根据生成公钥/私钥对来论证RSA。用户输入一串字符串,用公钥加密字符串,用私钥解密字符串,所有的结果被输出。
  三、主要算法流程和框图
  1.主要算法流程
  随机生成p,q→计算N=p*q→计算p1=p-1,q1=q-1→计算p1q1=p1*q1→随机生成e,e须满足gcd(p1q1,e)=1,1  2.主要框圖
  程序算法流程图
  四、主要模块说明
  1.主函数模块
  生成公钥/私钥对,调用加密模块对明文进行加密,然后调用解密模块对密文进行解密。
  2.转换字符串为大整数模块
  转换字符串为大整数。字符串应该仅由ASCII字符组成。简单地将ASCII代码连接而形成整数。
  3.转换大整数为ASCII字符串模块
  转换大整数为ASCII字符串。整数里的各个字节简单地被转换成对应的ASCII代码。
  4.加密模块
  用公钥(N,e),应用RSA加密算法对字符串进行加密。字符串被分成多个数据块,每一个数据块被转换为一个整数,然后这个整数x用算式:x∧e (mod N)被编码(加密)。
  5.解密模块
  用私钥(N,d),应用RSA解密算法对字符串进行解密。首先用算式:x∧d(mod N)解码整数列里的每一个整数x,然后每个被解码的整数被转换为一个字符串,且所有的字符串被连接成一个单一的字符串。
  五、程序使用说明
  在Textpad中,输入源程序后,保存源程序(假若源程序文件名为RSA.java),编译源程序,编译成功后,在原RSA.java程序所在的文件夹中生成RSA.class文件,然后运行该程序,如果一切运行正常,则输出正确结果。
  六、结束语
  本文用Java语言实现了RSA算法。由于用到java中的BigInteger类,因此运行效率较高。如果用C语言编程,一个运行结果大约需要2个多小时才能算出,而用java中的BigInteger类编程则几秒钟结果就出来了,因此,对RSA算法用Java编程显然比用C语言编程的效率要高得多。
  
  参考文献:
  [1][美]William Stallings著.密码编码学与网络安全:原理与实践(第二版)[M].杨明等译.北京:电子工业出版社,2001
  [2]唐大仕编著:Java程序设计[M].北京:北方交通大学出版社,清华大学出版社,2003
  [3]田文春韦岗:RSA算法的Java实现[J].计算机工程与应用. 2001,(24):43~44,62
  [4]Sun Microsystems, Inc. ClassBigInteger.[DB/OL].2003, http://java.sun.com/j2se/1.4/docs/api/java/math/BigInteger.html
  注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
其他文献
[摘要] 进入21世纪商品经济社会,审美文化作为人类全部文化活动的一部分,也逐渐融入商品经济的浪潮中。审美活动与经济活动的关系问题是个由来已久的复杂问题。从历史上看,这个问题的发生是源于对人的经济利益追求和审美追求这两种需要的评价问题。作为人类文化活动整体中的两个方面,二者之间相互发生联系和影响,并且起到相辅相成的作用。  [关键词] 艺术领域 审美文化 商品经济 人类文化活动    进入21世纪
期刊
[摘要] 本文对ERP与商务智能整合应用的理论和实现技术进行研究,提出了ERP与商务智能整合应用的方案。  [关键词] ERP 商务智能 数据仓库 OLAP    一、引言  ERP的应用实现了企业内部核心业务流程的信息集成以及企业外部供应链的信息集成。但ERP对决策支持有着明显的不足。商务智能的实现依赖于大量的、准确的、真实的数据;而ERP系统产生了大量的、准确的、真实的数据。因此,将商务智能建
期刊
[摘要] 国际货运代理业务流程长,面临的各种风险复杂,涉及到的业务关系方多,行业竞争十分激烈,如何认识风险和控制风险是增强企业竞争实力的关键因素。本文从配仓风险;提单风险;分承包方风险三个方面分析国际货运代理如何规避国际货物运输中的风险。  [关键词] 国际货运代理 风险防范 配仓风险 提单风险 分承包方风险    国际货运代理是进出口贸易运输中不可缺少的中间环节,也是整个国际货物运输的组织者和设
期刊
[摘要] 本文从RFID的功能特点出发,分析RFID技术对商场智能管理的影响,并创新性地提出基于RFID技术的商场智能管理系统的实现模式。  [关键词] RFID 商场智能管理    商场智能管理通常被理解为通过数据分析和数据挖掘,将获取的顾客数据和购物记录等信息转化为知识,以帮助管理者做出明智的业务经营决策的工具。通过商场智能化管理,可以发掘出顾客的深度需求,极大地提高了商场的顾客忠诚度和顾客价
期刊
[摘要] 本文首先分析了B2B电子商务的特点和竞争优势,指出发展我国B2B电子商务的必要性。同时,在分析了我国企业参与B2B电子商务现状的基础上,从培育网上市场、发展B2B中介服务网站、完善电子商务环境等方面探讨我国企业开展B2B电子商务面临的问题与对策。  [关键词] 电子商务 现状 对策    一、B2B电子商务的涵义和竞争优势  1.B2B电子商务的涵义。B2B电子商务是指企业与企业之间,通
期刊
[摘 要] 组织中的心理契约是雇佣双方隐含的非正式的相互责任与义务的一种主观心理约定,它是对正式契约的一个全面补充。组织违背与员工的心理契约会付出极大的代价,直接导致员工及组织绩效的损害。组织管理者只有通过从源头抓起,实行人本管理,加强员工与组织间的沟通,并合理解释不可避免的心理契约违背行为,才能有效构建和维护良好的心理契约,取得良好绩效。  [关键词] 心理契约 心理契约违背 员工反应 员工绩效
期刊
一、存货管理概述  1.存货与存货管理概念  存货是指企业在正常生产经营过程中持有的、以销售的产成品或商品,或为了出售仍然处于生产过程中的产品,或在生产过程、劳务过程中消耗的材料、物料等。存货管理就是对企业的存货进行管理,是指企业为了降低企业经营成本,提高企业管理效率,而采取一些有效的方法来管理存货,使企业能以最低的成本获得最大的利润。主要包括存货的信息管理和在此基础上的决策分析,最后进行有效控制
期刊
[摘要] 近年来,世界各国经济发展的同时,资源紧缺、环境遭受破坏等现象日益严峻。在广西大力发展对外贸易之际,也遇到了这一线型经济发展模式下的普遍问题。为有效推进广西的外贸乃至经济的发展,并以最小的投入获得最大的利益,本文拟采用SWOT分析法,研究广西外贸可持续发展的优势、劣势、机遇与威胁,并有针对性地提出解决对策。  [关键词] 可持续发展 SWOT 线型经济发展模式    近年来,世界各国相互间
期刊
[摘要] 商业流程由于其影响因素很多,因而十分复杂,通过建模仿真,能够直观的发现流程中的问题并及时解决问题。本文简述了商业流程仿真软件Flexsim,并对其在商业流程仿真中的应用进行了详细介绍。  [关键词] Flexsim 商业流程 仿真    随着计算机技术的发展和新的制造技术、制造系统的产生,计算机仿真技术被广泛地应用到商业流程设计、规划的研究当中并取得了许多成果。  一、Flexsim仿真
期刊
[摘要] 在许多中国消费者的心目中,跨国公司都是质量、规范和高效的象征,然而,近年来接二连三的危机,不幸让跨国公司的“神话”破灭了。是什么原因让跨国公司危机频生?为了尽可能避免各种危机的发生,并且在危机发生时,将危害降到最低点,跨国公司应采取有效的5S危机管理机制。  [关键词] 跨国公司 危机管理 中国特色    一、跨国公司在中国面临的危机回顾  2007年LG翻新机事件随着全国媒体的不断报道
期刊