public static string RSADecryptByPavKey(string pavKey,string strEncryptString)
{

string clearText = "";
//得到私钥
RsaKeyParameters pavKeyParam = (RsaKeyParameters)PrivateKeyFactory.CreateKey(Convert.FromBase64String(pav));
//参数与Java中加密解密的参数一致
IBufferedCipher c = CipherUtilities.GetCipher("RSA/ECB/PKCS1Padding");

//第一个参数 true-加密,false-解密;第二个参数表示密钥
c.Init(true, pavKeyParam);
//对明文进行UTF8解码
byte[] dataFromEncrypt = Encoding.UTF8.GetBytes(strEncryptString);
//获取循环次数
int count = dataFromEncrypt.Count() / 117;
//获取余数 即为要进行补位的数量
int quyu = dataFromEncrypt.Count() % 117;
//设置分割完的字节数组大小
byte[] _splitarr = new byte[117];
if (quyu == 0)
{
for (int i = 0; i < count; i++)
{
Buffer.BlockCopy(dataFromEncrypt, i * 117, _splitarr, 0, 117);
//加密
byte[] outBytes = c.DoFinal(_splitarr);
//明文
clearText += Convert.ToBase64String(outBytes);
}
}
else
{
int buchong = 117 - quyu;
byte[] buchongarr = new byte[dataFromEncrypt.Count() + buchong];
dataFromEncrypt.CopyTo(buchongarr, 0);
for (int i = 0; i <= count; i++)
{
Buffer.BlockCopy(buchongarr, i * 117, _splitarr, 0, 117);
//加密
byte[] outBytes = c.DoFinal(_splitarr);
//明文
clearText += Convert.ToBase64String(outBytes);
}
}
return clearText;
}

最新文章

  1. CodeSimth - .Net Framework Data Provider 可能没有安装。解决方法
  2. Expression Template(表达式模板,ET)
  3. C#----Get和Set在属性中的使用
  4. Entity Framework实例详解
  5. PHP simplexml_load_string 过滤&lt;![CDATA[XXXX]]&gt;
  6. window.open() 被拦截后的分析
  7. hdu-----(1532)Drainage Ditches(最大流问题)
  8. Netsharp产品标识自定义设置:产品名称、版权、LOGO等
  9. [HDOJ2830]Matrix Swapping II(胡搞)
  10. DataGrid Column Group (合并表头)
  11. iOS获取文件和文件夹大小
  12. Java 堆内存(Heap)[转]
  13. CCFlow最近在山东济南总部举行组团培训活动,有參加的能够报名
  14. WPF 文本框设置了阴影效果后,因左右的transform变化引发的拉伸渲染问题
  15. 快速干掉Windows Defender
  16. 线程--实现Runnable接口
  17. json数据转为Map集合
  18. 杂谈2.py
  19. MSVC 12: compiler error in boost/type_traits/common_type.hpp
  20. hasattr() getattr() setattr() 函数使用方法

热门文章

  1. 1-认识c指针
  2. 有必要了解的大数据知识(二) Hadoop
  3. SpEL表达式注入
  4. C语言可变参函数分析
  5. C# 8 - Nullable Reference Types 可空引用类型
  6. 「HTML+CSS」--自定义按钮样式【001】
  7. 如何使用Docker部署Go Web应用
  8. java例题_16 九九乘法表
  9. 【Azure 微服务】Service Fabric中微服务在升级时,遇见Warning - System.Collections.Generic.KeyNotFoundException 服务无法正常运行
  10. Array.prototype.fill 填充值被复用的问题