• 大小: 736KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-13
  • 语言: C#
  • 标签: 企业付款  

资源简介

前一阵做过微信企业支付到银行卡,也研究了好多时间,踩了很多坑,上传希望帮没做过的解决不必要的弯路跟坑;测试代码跟引用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

评论

共有 条评论