欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    哈工大数学实验 大作业2.docx

    • 资源ID:13897620       资源大小:459.38KB        全文页数:17页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    哈工大数学实验 大作业2.docx

    1、哈工大 数学实验 大作业2RSA加密解密一、 综述历史回顾: RSA公钥加密算法是1977年由Ron Rivest、Adi Shamirh和Len Adleman在美国麻省理工学院开发的。RSA取名来自开发他们三者的名字。RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。RSA公钥加密算法是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也十分流行。虽然自1978 年提出以来, RSA的安全性一直未能得到理论上的证明,但它经历了各种攻击,至今(2009 年)未被完全攻破。随着越来越多的商业应用和标准化工作, RSA已

    2、经成为最具代表性的公钥加密技术。 VISA、MasterCard、IBM、Microsoft 等公司协力制定的安全电子交易标准(Secure Electronic Transactions,SET)就采用了标准 RSA算法,这使得RSA在我们的生活中几乎无处不在,网上交易加密连接、网上银行、身份验证、各种信用卡使用的数字证书 智能移动电话和存储卡的验证功能芯片等,大多数使用 RSA技术。课题研究说明:1、 RSA算法描述RSA算法可以简单描述如下: 密钥生成取素数p、q,令n=p*q;取与(p-1)*(q-1)互质的整数e;由方程d*e=1(mod(p-1)*(q-1)解出d;二元组( e,

    3、n)作为公开密钥;二元组( d, n)作为私有密钥; 加密解密设A为原文,B为加密后的密文:加密过程:;解密过程:;2、 程序功能简述所提供的程序基于Mat lab GUI窗口界面,主要功能包括自动生成密钥、手动输入密钥(含密钥合法判断)、输入一串信息(包括中文,英文,标点,空格等等)并将其加密成一串密文、输入一串密文并将其解密回可识别的信息。详细功能见下文说明。3、 尚存在的未解决的问题及不足当生成的密钥n,e,d过大时(n超过227),加密过程可以顺利进行,但是解密过程出错,无法还原为原信息,此问题仍有待解决。另外,单个字符产生的密文长度与n的位数一致,而n一般为8位,这就导致产生的密文长

    4、度过大,是原文长度的8倍。二、 程序使用方法,及程序功能1、 程序功能自动/手动输入密钥、加密/解密中文英文、标点空格等信息2、 程序使用方法步骤1. 进入程序后要按自动生成按钮或手动输入按钮生成大整数n,加密指数e,素数p和q,解密指数d;对于自动生成按钮系统会自动生成以上参数,手动输入按钮用户可以输入以上参数步骤2. 将待加密/待解密信息输入到“请输入待加密/待解密信息”框内,然后按加密(解密)按钮,则加密(解密)后的信息将显示在图形界面最下方的“加密/解密后信息”框内。步骤3. 可重复进行步骤1,对于步骤2,只需要按下重置按钮后即可重复操作步骤4. 按退出按钮退出程序。3、 程序各按键的

    5、功能自动生成由程序随机生成参数大整数n,加密指数e,素数p和q,解密指数d;手动输入由用户输入参数大整数n,加密指数e,素数p和q,解密指数d;加密将输入框内信息加密解密将输入框内信息解密关于该程序的信息帮助指导用户使用该程序退出退出程序三、 程序运行实例及对实验结果的意见1、 对汉字加密解密2、 对英文及空格加密解密3、 对标点符号进行加密解密4、 对混合信息的加密解密1、 2、 3、 4、 5、 手动输入手动输入错误时Command窗口的报错6、 帮助和关于1、 2、 3、 4、 5、 6、 7、 结果分析及意见根据密码学课程的特点,本文以Mat lab 2010b为开发平台,开发了RSA

    6、密码演示系统,将RSA中参数获取、加密、解密等复杂过程以图形的形式形象直观地 表现出来。以上实验结果表明,该系统界面友好、操作方便,便于理解RSA的基本原理。需要注意的是,RSA密码演示系统的Mat lab实现,参数在选取过程中默认有条件n227时,解密过程溢出,解密结果出现乱码,此问题仍然有待解决。改进方法:使用Maple工具箱中的函数,可以实现1024位的密钥的加密解密过程,此时还应优化算法,简短密文长度,可达到效率和安全性均比较高的加密解密。由于Mat lab 2010b并不支持Maple工具箱,也由于自己能力所限,并不能实现这一改进。四、 部分关键代码1、 模幂运算函数(求ab mod

    7、 m,a,b和m均为大数)2、 判断素数的函数(采用当下较流行的Miller-Rabin判素法)3、 自动生成参数的函数(x用于设置生成的p,q,e的位数,可变动,p,q,e均生成为212213之间的正整数,并且p,q均通过了Miller-Rabin判定,e满足与(p-1)*(q-1)互质的条件,d满足条件e*d=1(mod(p-1)*(q-1),通过调用GetInv()函数获得)4、 由e和(p-1)*(q-1)求解d的函数(采用拓展Euclidean算法求得)5、 加密算法(将输入的信息转换成ASCII码,然后进行加密)6、 解密算法(将密文还原成ASCII码,然后转换成字符信息)五、 任务分配王亚杰、朱振华共同研究算法、查阅文献及解决遇到的一些问题朱振华完成代码主体王亚杰完成报告主体参考文献:1. 管占明 邓雅娟.RSA加密算法的研究及应用.江苏 连云港.科技广场. 2009.7.2. 叶建龙.RSA 加密中大素数的生成方法及其改进. 甘肃. 廊坊师范学院学报( 自然科学版)第十卷第2期. 2010.4.


    注意事项

    本文(哈工大数学实验 大作业2.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开