| | |
| | | Logger.Add(serviceAddress, requestJson == null ? "" : requestJson, result, beginDate); |
| | | } |
| | | } |
| | | public static string GetStr(string textToEncrypt) |
| | | { |
| | | string publicKey; |
| | | string privateKey; |
| | | GenerateRSAKeyPair(out publicKey, out privateKey); |
| | | byte[] encryptedBytes = RSAEncrypt(textToEncrypt, publicKey); |
| | | // å¯ä»¥å°å å¯åçåèæ°ç»è½¬æ¢ä¸ºBase64å符串æ¹ä¾¿åç»å¤çï¼ä¾å¦ä¼ è¾ç |
| | | string encryptedBase64 = Convert.ToBase64String(encryptedBytes); |
| | | return encryptedBase64; |
| | | } |
| | | public static void GenerateRSAKeyPair(out string publicKey, out string privateKey) |
| | | { |
| | | using (RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(2048)) |
| | | { |
| | | publicKey = rsa.ToXmlString(false); |
| | | privateKey = rsa.ToXmlString(true); |
| | | } |
| | | } |
| | | public static byte[] RSAEncrypt(string plainText, string publicKey) |
| | | { |
| | | byte[] encryptedData; |
| | | using (RSACryptoServiceProvider rsa = new RSACryptoServiceProvider()) |
| | | { |
| | | rsa.FromXmlString(publicKey); |
| | | // å°ææ¬è½¬æ¢ä¸ºUTF8ç¼ç çåèæ°ç» |
| | | byte[] plainBytes = Encoding.UTF8.GetBytes(plainText); |
| | | // 使ç¨SHA1åå¸ç®æ³ä»¥åPkcs1å¡«å
è§åè¿è¡å å¯ |
| | | encryptedData = rsa.Encrypt(plainBytes, true); |
| | | } |
| | | return encryptedData; |
| | | } |
| | | } |
| | | } |