不限制长度Rsa加密算法超出117解决方案

不限制长度Rsa加密算法超出117解决方案

ID:41266746

大小:21.72 KB

页数:5页

时间:2019-08-20

不限制长度Rsa加密算法超出117解决方案_第1页
不限制长度Rsa加密算法超出117解决方案_第2页
不限制长度Rsa加密算法超出117解决方案_第3页
不限制长度Rsa加密算法超出117解决方案_第4页
不限制长度Rsa加密算法超出117解决方案_第5页
资源描述:

《不限制长度Rsa加密算法超出117解决方案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Rsa加密算法加密长度限制是117字节,下面展示的是不限制长度rsa改造方法包含的有加密解密加密的内容与原类型比较是否所有值都相等以及一个单元测试publicclassRsaHelper{publicstaticstringPubKey=”自己用下面生成的”;//公钥publicstaticstringPriKey=”自己用下面生成的”;//私钥publicstructRsaKey{publicstringPublicKey{get;set;}publicstringPrivateKey{get;set;}}///

///创建公钥私钥//////

2、urns>staticpublicRsaKeyGEN_Key(){varrsa=newRSACryptoServiceProvider();returnnewRsaKey(){//写死加快执行速度//PublicKey=rsa.ToXmlString(false),//生成公钥自己生成填到上面//PrivateKey=rsa.ToXmlString(true)//生成私钥自己生成填到上面};}///

///解密//////要解密的字符串///

3、"privateKey">私钥///publicstaticstringRsaDecrypt(stringencryptedInput,stringprivateKey){if(string.IsNullOrEmpty(encryptedInput)){returnstring.Empty;}if(string.IsNullOrWhiteSpace(privateKey)){thrownewArgumentException("InvalidPrivateKey");}using(varrsaProvider=newRSACryptoS

4、erviceProvider()){varinputBytes=Convert.FromBase64String(encryptedInput);rsaProvider.FromXmlString(privateKey);intbufferSize=rsaProvider.KeySize/8;varbuffer=newbyte[bufferSize];using(MemoryStreaminputStream=newMemoryStream(inputBytes),outputStream=newMemoryStream()){while(true){intreadSize=inputSt

5、ream.Read(buffer,0,bufferSize);if(readSize<=0){break;}vartemp=newbyte[readSize];Array.Copy(buffer,0,temp,0,readSize);varrawBytes=rsaProvider.Decrypt(temp,false);outputStream.Write(rawBytes,0,rawBytes.Length);}returnEncoding.UTF8.GetString(outputStream.ToArray());}}}///

///加密/////

6、/要加密的字符串///公钥///publicstaticstringRsaEncrypt(stringrawInput,stringpublicKey){if(string.IsNullOrEmpty(rawInput)){returnstring.Empty;}if(string.IsNullOrWhiteSpace(publicKey)){thrownewArgumentException("InvalidPublicKey")

7、;}using(varrsaProvider=newRSACryptoServiceProvider()){varinputBytes=Encoding.UTF8.GetBytes(rawInput);//有含义的字符串转化为字节流rsaProvider.FromXmlString(publicKey);//载入公钥intbufferSize=(rsaProvider.KeySize/8)-11;//单块最大长度varb

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。