RSA加密(跨平台通用的)
2024-10-14 18:40:02
/// <summary>
/// RSA加密
/// </summary>
/// <param name="strPublickey"></param>
/// <param name="content"></param>
/// <returns></returns>
public string RsaEncrypt(string strPublickey, string content)
{
var rsa = new RSACryptoServiceProvider();
var param = new RSAParameters();
byte[] bdata = GetBytes("");
param.Exponent = bdata;
param.Modulus = GetBytes(strPublickey);
rsa.ImportParameters(param); byte[] cipherbytes = rsa.Encrypt(Encoding.UTF8.GetBytes(content),false); return BitConverter.ToString(cipherbytes).Replace("-", string.Empty);
} public byte[] GetBytes(String num)
{
BigInteger n = new BigInteger(num, );
String s = n.ToString();
if (s.Length % > )
{
s = new String('', - s.Length % ) + s;
}
byte[] data = new byte[s.Length / ];
String ocetstr;
for (int i = ; i < data.Length; i++)
{
ocetstr = s.Substring( * i, );
data[i] = Convert.ToByte(ocetstr, );
}
return data;
}
调用方式
var result = new BigInteger(pubkey, 16);
String sp = RsaEncrypt(string.Format("{0}", result), message);
BigInteger下载地址
http://www.codeproject.com/Articles/2728/C-BigInteger-Class
最新文章
- 1.Maven的安装以及本地仓库的配置
- Objective-C( Foundation框架 一 NSDictionary (NSMutaleDictionary))
- windows下的php rabbit mq安装、配置
- 扩展WPF的DataGrid按方向键移动焦点
- OpenCV相机标定和姿态更新
- linux 输入子系统(3)----事件处理(input_handler层)
- centos apache 隐藏和伪装 版本信息
- SSH2中memcached作为hibernate二级缓存
- centos vwwareTools 拷贝文件设置
- UVa 872 - Ordering 输出全拓扑排序
- ueditor插件 -- 插入填空题
- 在纯C工程的main函数之前跑代码(手工找到程序入口点, 替换为我们自己的函数)
- (ArcGIS API For Silverlight )QueryTask 跨层查询,和监控完整的查询!
- JAVA 代码开发规范
- crontab 添加sh文件定时
- (21)IO流之对象的序列化和反序列化流ObjectOutputStream和ObjectInputStream
- ASP.NET Core 入门教程 2、使用ASP.NET Core MVC框架构建Web应用
- 基于Java服务的前后端分离解决跨域问题
- Confluence 6 缓存性能示例
- C++ template —— 深入模板基础(二)
热门文章
- lua简化cocos2dx的Action动画序列
- 基于Theano的DNN框架Blocks使用简要总结
- Deeplearning原文作者Hinton代码注解
- Eclipse —— java文件修改后不能及时体现
- PowerDesign不让name和code联动
- 区别Javascript中的Null与Undefined
- 好!maximum-product-of-word-lengths
- maven-source 1.3 中不支持注释请使用 -source 5 或更高版本以启用注释
- malloc/free和new/delete的异同
- UVa 11825 (状压DP) Hackers&#39; Crackdown