ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:50.25KB ,
资源ID:16622549      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16622549.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(身份证信息rsa加密算法以实现Word格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

身份证信息rsa加密算法以实现Word格式.docx

1、通过国家计算机网络应急技术处理协调中心统计显示,我国政府网络被黑客入侵逐年递增,维护好电子政务系统的安全、办公过程中信息传递的安全,防止被一些怀有不良居心的人抄袭或破坏,因此就需要安全措施来保护相应的信息及数据不被窃取或篡改,而采取对数据直接解密的方式即方便又安全,是保护信息安全的有效手段。本研究课题,完成相应的系统,用户间可进行安全的文件、图片的收发。所有的交互身份信息都经过加密和签名处理,通过验证签名机制可验证是否被恶意篡改,传输者将明文进行加密后的密文进行存储和传输,授权的接收者用本系统进行解密恢复明文,而XX的截获者将无法对明文可见,从而保证了身份信息的安全性。而图片则通过特有的bmp

2、格式图片进行信息隐藏。一、数据安全的研究方向系统中的数据安全主要体现在存储和传输两个方面,数据主要涉及的有身份信息,对于身份信息我们采取加密方式将明文转化成密文存储和传输,在传输的过程中防止被恶意篡改我们加入了验证。 (二)身份信息的加密、解密计算机密码学以加密方式分组密码和序列密码,以密钥管理的方式可以划分为公开密钥算法和传统密钥算法。RSA是当前最著名的,应用最广泛的非对称加密算法,原始的对称加密方法的速度虽然快于RSA加密算法,但其的抗攻击性远远弱于RSA加密算法;RSA的安全性是基于大整数分解的困难性。RSA算法的安全级别的提高依赖于素数的增大和公钥位数的提高。随着分解大整数方法的进步

3、及完善,计算机的速度的提高以及计算机网络的发展,作为RSA加解密的安全保障的大整数必然越来越大。它的理论基础是一种特殊的可逆模幂运算,其安全性是基于大整数的因数分解的困难性。为产生两个密钥,选取两个大的素数p和q。为了获得最大程度的安全性,这两个数的长度应一样。计算乘积n=p*q然后随机地选取加密密钥e,使得e与(p-1)(q-1)互素,最后用扩展的欧几里得算法计算解密密钥d,满足ed=l(mod(p-1)(q-1)则d=1/e*mod(p-1)(q-1)这里d与n也互素。将e和n作为公开密钥,d作为私人密钥。设需要加密的消息为m。将其费城长度小于n数据分组mi(i=1,2,),记加密后的密文

4、为c,将由相同长度的分组ci组成,加密公式为:ci=min(modn)解密消息为mi= cid(mod n)上面的关系验证为:cid =mied = mimod(p-1)(q-1)+1= mi * mi(p-1)(q-1)= mi*1= mi(mod n)因为RSA的安全性是建立在数论中大整数因子分解的困难性上,所以随着大整数分解算法和计算能力的不断提高,对RSA的破译能力也在增强,p和q的位数越小,越易破译,因此而增强的RSA密钥长度使得加密速度慢,且运算复杂,所以如何提高这些高精度乘除运算的速度是RSA体制实用化的关键问题。对身份信息的加密方法采用的是非对称密码算法RSA加密算法。会话密钥

5、即对文件加密的密钥,对会话密钥的加密采用RSA加密算法。对于会话密钥由于在对文件的加密时需要使用,所以对于会话密钥的加密是放在加密函数中进行的,用函数RSAEncrypt进行加密操作。基于RSA加密算法的公私钥产生器。使得用户可以自己生成公私密钥用来更新旧的公私密钥,省去了重新由第三方机构配置密钥带来的麻烦。生成公私密钥对的难点在于寻找大素数。二身份信息加解密及验证系统方案及实现(一)文件的加密1.身份信息的加密的方案首先我们要生成公私密钥对,接收方将密钥对中的公钥发送给发送方,发送方提取公钥,对身份信息进行加密。导出RSA参数,并导出公钥.此系统使用的是64位加密算法。RSACryptoSe

6、rviceProvider rsa = new RSACryptoServiceProvider();byte cipherbytes;rsa.FromXmlString(publickey);cipherbytes = rsa.Encrypt(Encoding.UTF8.GetBytes(str), false);return Convert.ToBase64String(cipherbytes);2.身份信息的加密的实现输入文本框想要传输的文本,点击加密,会形成对应的RSA结果,然后传输方将得到的RSA结果传输给数据库。 (二)文件的解密及传输验证的正确性1.身份信息解密以及传输验证的方案

7、 rsa.FromXmlString(privatekey);cipherbytes = rsa.Decrypt(Convert.FromBase64String(str), false);return Encoding.UTF8.GetString(cipherbytes)。签名和验证采用RSA算法实现,用RSA签名和验证文件。发送方使用私钥对身份信息数据进行加密处理,生成一段数字字符串,并附着在原文上一起发送。数字签名信息类似于现实中的签名或印章。接收方使用发送方的公私钥密钥对数字签名进行验证来判断原文的真伪性。保证信息是由授权发送方签名发送的,具有不可抵赖性。并且能够保证身份信息数据从发

8、送到接收的过程中未被任何修改,以确保身份信息的完整性与安全性。2.身份信息解密以及传输验证的实现接收方将接收的字符输入文本框,在公钥输入文本框将传输方的公钥字符串输入,然后利用接收方的私钥与传输方的公钥计算公私密钥对的私钥,然后点击解密。(三)公私密钥对在对身份信息加解密前首先要形成一个公私密钥对。当参数显示为false的时候仅仅输出公钥;当参数显示为true的时候公钥和密钥全部生成,但我们只得到一个私钥字符串。using System;using System.Collections.Generic;using System.Linq;using System.Web;using Syste

9、m.Web.UI;using System.Web.UI.WebControls;using RDSystem.ItemClass;using System.Security.Cryptography;using System.Text;using System.Data;namespace WebApplication1 public partial class WebUserControl1 : System.Web.UI.UserControl protected void Page_Load(object sender, EventArgs e) string publickey =

10、Modulus5m9m14XH3oqLJ8bNGw9e4rGpXpcktv9MSkHSVFVMjHbfv+SJ5v0ubqQxa5YjLN4vc49z7SVju8s0X4gZ6AzZTn06jzWOgyPRV54Q4I0DCYadWW4Ze3e+BOtwgVU1Og3qHKn8vygoj40J6U85Z/PTJu3hN1m75Zr195ju7g9v4Hk=ExponentAQABP/hf2dnK7rNfl3lbqghWcpFdu778hUpIEBixCDL5WiBtpkZdpSw90aERmHJYaW2RGvGRi6zSftLh00KHsPcNUMw=Q6Cn/jOLrPapDTEp1Fkq+

11、uz+1Do0eeX7HYqi9rY29CqShzCeI7LEYOoSwYuAJ3xA/DuCdQENPSoJ9KFbO4Wsow=DPga1rHIJro8e/yhxjrKYo/nqc5ICQGhrpMNlPkD9n3CjZVPOISkWF7FzUHEzDANeJfkZhcZa21z24aG3rKo5Qnw=DQMNGsCB8rYlMsRZ2ek2pyQwO7h/sZT8y5ilO9wu08Dwnot/7UMiOEQfDWstY3w5XQQHnvC9WFyCfP4h4QBissyw=InverseQEG02S7SADhH1EVT9DD0Z62Y0uY7gIYvxX/uq+IzKSCwB8M2G

12、7Qv9xgZQaQlLpCaeKbux3Y59hHM+KpamGL19Kg=DvmaYHEbPAgOJvaEXQl+t8DQKFT1fudEysTy31LTyXjGu6XiltXXHUuZaa2IPyHgBz0Nd7znwsW/S44iql0Fen1kzKioEL3svANui63O3o5xdDeExVM6zOf1wUUh/oldovPweChyoAdMtUzgvCbJk1sYDJf+Nr0FeNW1RB1XG30=/RSAKeyValue; string privatekey = SqlBaseClass G_SqlExecute = new SqlBaseClass(); protect

13、ed void Button1_Click(object sender, EventArgs e) string key= JiaMi(TextBox1.Text, publickey); string 检测 = select * from dbo.user DataSet ds = G_SqlExecute.GetDs(检测); for (int i = 0; i 0) Label1.Text = 有效账号,姓名为: +dr01.ToString(); Sessionnoid = JiaMi(TextBox1.Text, privatekey); else无效 / / md5效验/summa

14、ryparam name=ConvertString传入需要效验的字符串,返回MD5效验结果returns/returns public static string GetStrMd5(string ConvertString) /实例化MD5.使用加密服务提供程序 (CSP) 提供的实现,计算输入数据的 MD5 哈希值 MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); string t2 = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetB

15、ytes(ConvertString); t2 = t2.Replace(-, return t2; / 加密str需要加密的字符串publickey传入公钥 public static String JiaMi(String str, String publickey) /使用加密服务提供程序 (CSP) 提供的 RSA 算法的实现执行不对称加密和解密。 RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(); byte cipherbytes; rsa.FromXmlString(publickey); cipherbyt

16、es = rsa.Encrypt(Encoding.UTF8.GetBytes(str), false); return Convert.ToBase64String(cipherbytes); / 解密privatekey传入私钥 public static String JieMi(String str, String privatekey) cipherbytes = rsa.Decrypt(Convert.FromBase64String(str), false); return Encoding.UTF8.GetString(cipherbytes);本系统源码下载地址 技术交流Q: 2431797625 技术问题和代码解释,请直接说出系统的名字和疑问, 我上线时候会给你们解答, 问在不在的就不回复了.

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1