資源簡介
前一陣做過微信企業支付到銀行卡,也研究了好多時間,踩了很多坑,上傳希望幫沒做過的解決不必要的彎路跟坑;測試代碼跟引用bll及說明文檔

代碼片段和文件信息
using?System.Web;
using?System.Text;
using?System.Security.Cryptography;
using?System.IO;
using?System.Net;
using?System;
using?System.Collections.Generic;
using?System.xml;
using?System.Net.Security;
using?System.Security.Authentication;
using?System.Security.Cryptography.X509Certificates;
using?WxPayAPI;
using?System.xml.Linq;
using?Org.BouncyCastle.Crypto.Parameters;
using?Org.BouncyCastle.Security;
using?Org.BouncyCastle.Crypto;
using?shop.App_Code;
namespace?RSATestT
{
????public?class?RSATest
????{
????????///?
????????///?獲取公匙
????????///?
????????///?
????????public?string?getkey()
????????{
????????????WxPayData?data?=?new?WxPayData();
????????????WxPayData?result?=?Micropay(data);
????????????XElement?root?=?XElement.Parse(result.Toxml());
????????????string?pub_key?=?root.Element(“pub_key“).Value;
????????????string?CurDir?=?System.AppDomain.CurrentDomain.baseDirectory;????//設置當前目錄??
????????????if?(System.IO.Directory.Exists(CurDir))
????????????{?System.IO.Directory.CreateDirectory(CurDir);?}//該路徑不存在時,在當前文件目錄下創建文件夾“導出..“??
????????????//不存在該文件時先創建??
????????????String?filePath?=?CurDir?+?“RSA“?+?“.pem“;
????????????System.IO.StreamWriter?file1?=?new?System.IO.StreamWriter(filePath?false);?????//文件已覆蓋方式添加內容??
????????????file1.Write(pub_key);//保存數據到文件??
????????????file1.Close();?//關閉文件??
????????????file1.Dispose();
????????????return?root.ToString();
????????}
????????///?
????????///?RSA加密
????????///?
????????///?
????????///?
????????///?
????????public?static?string?EncryptCSharp(string?data?string?encoding?=?“UTF-8“)
????????{
????????????RsaKeyParameters?pubkey;
????????????using?(var?sr?=?new?StreamReader(“F:\\RSAT.pem“))
????????????{
????????????????var?pemReader?=?new?Org.BouncyCastle.OpenSsl.PemReader(sr);
????????????????pubkey?=?(RsaKeyParameters)pemReader.Readobject();
????????????}
????????????var?cipher?=?(BufferedAsymmetricBlockCipher)CipherUtilities.GetCipher(“RSA/ECB/OAEPWITHSHA-1ANDMGF1PADDING“);
????????????cipher.Init(true?pubkey);
????????????var?message?=?Encoding.UTF8.GetBytes(data);
????????????var?output?=?Encrypt(message?cipher);
????????????return?Convert.Tobase64String(output);
????????}
????????public?static?byte[]?Encrypt(byte[]?message?BufferedAsymmetricBlockCipher?cipher)
????????{
????????????using?(var?buffer?=?new?MemoryStream())
????????????{
????????????????using?(var?transform?=?new?BufferedCipherTransform(cipher))
????????????????using?(var?stream?=?new?CryptoStream(buffer?transform?CryptoStreamMode.Write))
????????????????using?(var?messageStream?=?new?MemoryStream(message))
????????????????????messageStream.CopyTo(stream);
????????????????return?buffer.ToArray();
????????????}
????????}
????????///?????
????????///?RSA公鑰格式轉換,?
????????///? ????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-03-31?09:05??微信企業付款到銀行卡c#\
?????文件????????4745??2018-03-31?09:03??微信企業付款到銀行卡c#\accounts.cs
?????文件?????2236416??2015-12-28?21:38??微信企業付款到銀行卡c#\BouncyCastle.Crypto.dll
?????文件????????1617??2018-03-01?15:49??微信企業付款到銀行卡c#\BufferedCipherTransform.cs
?????文件????????1016??2018-03-01?14:53??微信企業付款到銀行卡c#\ceshi.html
?????文件?????????101??2018-02-06?09:03??微信企業付款到銀行卡c#\ceshipiliang.ashx
?????文件????????4603??2018-03-01?16:23??微信企業付款到銀行卡c#\ceshipiliang.ashx.cs
?????文件?????????262??2018-03-31?09:07??微信企業付款到銀行卡c#\說明.txt
- 上一篇:個人收支管理
- 下一篇:double_car.csv
評論
共有 條評論