星空网 > 软件开发 > ASP.net

C#实现MD5WITHRSA签名

这是很久以前的写的一篇博客了,今天把他重新找出来整理一下发布到博客园

当时对接银联的时候搞了很久都没搞出来,后来一个偶然的机会发现类似的一个代码参考了一下终于弄好了

这段代码主要是实现了C#服务端对接手机银联的java端的接口的签名

希望可以帮到大家

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Security.Cryptography.X509Certificates; 6 using System.Security.Cryptography; 7  8 namespace MD5WithRSATest 9 {10   public class MD5WithRSA11   {12     private static char[] bcdLookup = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };13 14     /// <summary>15     /// 返回MD5WithRSA的签名字符串16     /// </summary>17     /// <param name="fileName">pfx证书文件的路径</param>18     /// <param name="password">pfx证书密码</param>19     /// <param name="strdata">待签名字符串</param>20     /// <param name="encoding">字符集,默认为ISO-8859-1</param>21     /// <returns>返回MD5WithRSA的签名字符串</returns>22     public static string SignData(string fileName, string password, string strdata, string encoding = "ISO-8859-1")23     {24       X509Certificate2 objx5092;25       if (string.IsNullOrWhiteSpace(password))26       {27         objx5092 = new X509Certificate2(fileName);28       }else29       {30         objx5092 = new X509Certificate2(fileName, password);31       }32       RSACryptoServiceProvider rsa = objx5092.PrivateKey as RSACryptoServiceProvider;33       byte[] data = Encoding.GetEncoding(encoding).GetBytes(strdata);34       byte[] hashvalue = rsa.SignData(data, "MD5");//为证书采用MD5withRSA 签名35       return bytesToHexStr(hashvalue);///将签名结果转化为16进制字符串36     }37     /// <summary>38     /// 将签名结果转化为16进制字符串39     /// </summary>40     /// <param name="bcd">签名结果的byte数字</param>41     /// <returns>16进制字符串</returns>42     private static string bytesToHexStr(byte[] bcd)43     {44       StringBuilder s = new StringBuilder(bcd.Length * 2);45       for (int i = 0; i < bcd.Length; i++)46       {47         s.Append(bcdLookup[(bcd[i] >> 4) & 0x0f]);48         s.Append(bcdLookup[bcd[i] & 0x0f]);49       }50       return s.ToString();51     }52   }53 }

 




原标题:C#实现MD5WITHRSA签名

关键词:C#

C#
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

小红书怎么运营?最新实操方法:https://www.kjdsnews.com/a/1514289.html
亚马逊如何防止产品断货?:https://www.kjdsnews.com/a/1514290.html
跨境电商热土,南美门户 —— 巴西市场(下):https://www.kjdsnews.com/a/1514291.html
AI带货,卷不死真人主播:https://www.kjdsnews.com/a/1514292.html
深圳跨境大卖启动IPO申购;菜鸟国际快递无忧物流再降价:https://www.kjdsnews.com/a/1514293.html
26张版权画已经立案维权!代理律师又是:Keith,速看避雷!:https://www.kjdsnews.com/a/1514294.html
松花蛋是哪里的特产松花蛋的产地:https://www.vstour.cn/a/411229.html
怪物在游轮上复活的电影 怪物在游轮上复活的电影叫什么:https://www.vstour.cn/a/411230.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流