| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- using System;
- using System.Text;
- using System.Runtime.Serialization.Json;
- using System.IO;
- namespace RSAUtility
- {
- class Program
- {
- private static String PUBLIC_KEY = @"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCzw1Ib0qlD3ynCPLMUAqE2fkzeXuV5YLAyHtd/Gw8gPMeRWea9caentQpK5k4VFHjCP1LPmWlK7tsyi/9KYbRtK9/Gpasja0qSC1M/ZH6pJZZp81DWiGzQ8gAZ8YVp9+sW6eaH4CvDqCBeMSOTw3VS5yq7ArENbgIcSzCC05fZDwIDAQAB";
- static void Main(string[] args)
- {
-
- //定义对象
- TransactionResultDTO trans = new TransactionResultDTO();
- trans.setPartnerRefNo("486595880571");
- trans.setMerchantShortCode("8810002");
- trans.setMerchant("oway");
- trans.setAmount(0.01);
- trans.setCurrency("MMK");
- trans.setFee(0.0);
- trans.setGoods("bus");
- trans.setBackURL(@"http://dev.meemee.online:8080");
- //转换Json
- MemoryStream ms = new MemoryStream();
- DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(TransactionResultDTO));
- ser.WriteObject(ms, trans);
- ms.Position = 0;
- string jsonString;
- using (StreamReader sr = new StreamReader(ms))
- {
- jsonString = sr.ReadToEnd().Replace("\\", "");
- }
- ms.Close();
- Console.WriteLine("Json String:\n" + jsonString +"\n");
- //加解密
- RSAUtil rsa = new RSAUtil();
- //公钥加密
- string encryptResult = rsa.EncryptByPublicKey(jsonString, PUBLIC_KEY);
- Console.WriteLine("Public Key Encrypt Result:\n"+encryptResult+"\n");
- string cipherText = @"SkZzWUg0cTJQVkhnUURLMG84UWFrd3hYc2MyMHBOY3RYZlJNb3ZmMkR3dno5THU2VmJvaEhDN1Nkck14ZlZhd3NyN3JTOHY0M3JHVQ0KQVRlbVVHZWtRMVBwTUxlKzhEempiT1BldlJoRVpvMCsrcUJWcFJaWnNuUUd1aVJWZTllMXNSTi9tait1S2R3eHhMZ3U4Z3MzNk1tcA0KNFAwT3c1WDdDTXc5OVhSTGJOWjN3QncyZC9iTXNxTVM5Sjh1RDZOdmJmeHNlN0dkUUI2YWdRWGkyNEpmRytlVzEvNzZrQkdyKzhPVA0Kd1dTUG1FVER0YVZva3IrcE50KzEzZjVISUtGZTJKVDhMZW1RZTNmOE1kYkVGeHVhRGw2SE96WXlNeGRBR2NyMWNQREQ3ZWg4NkQ1Vw0KSDRtQVRMTDczQ1puTVhhMnpnbDd2YnUxWGpqdU1udkNRR3BIWUE9PQ==";
- //公钥解密
- string plainText = rsa.DecryptByPublicKey(cipherText, PUBLIC_KEY);
- Console.WriteLine("Public Key Decrypt Result:\n" + plainText+"\n");
- }
- }
- }
|