zoukankan      html  css  js  c++  java
  • .Net Core AES加解密

    项目中token在传输过程中采用了AES加密,  网上找到的两篇博文都有写问题,在这里记录一下.Net Core 2.2代码中AES加解密的使用:

     //AES加密  传入,要加密的串和, 解密key
            public static string AESEncrypt(string input, string key = "dataplatform2019")
            {
                var encryptKey = Encoding.UTF8.GetBytes(key);
                var iv = Encoding.UTF8.GetBytes("1012132405963708"); //偏移量,最小为16
                using (var aesAlg = Aes.Create())
                {using (var encryptor = aesAlg.CreateEncryptor(encryptKey, iv))
                    {
                        using (var msEncrypt = new MemoryStream())
                        {
                            using (var csEncrypt = new CryptoStream(msEncrypt, encryptor,
                                CryptoStreamMode.Write))
    
                            using (var swEncrypt = new StreamWriter(csEncrypt))
                            {
                                swEncrypt.Write(input);
                            }
    var decryptedContent = msEncrypt.ToArray();
    
                            return Convert.ToBase64String(decryptedContent);
                        }
                    }
                }
            }

      解密过程:

     public static string DecryptString(string cipherText)
            {
                var fullCipher = Convert.FromBase64String(cipherText);
    
                var iv = Encoding.UTF8.GetBytes("1012132405963708");
            
                var key = Encoding.UTF8.GetBytes("dataplatform2019");
    
                using (var aesAlg = Aes.Create())
                {
                    using (var decryptor = aesAlg.CreateDecryptor(key, iv))
                    {
                        string result;
                        using (var msDecrypt = new MemoryStream(fullCipher))
                        {
                            using (var csDecrypt = new CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read))
                            {
                                using (var srDecrypt = new StreamReader(csDecrypt))
                                {
                                    result = srDecrypt.ReadToEnd();
                                }
                            }
                        }
    
                        return result;
                    }
                }
            }
  • 相关阅读:
    CF 640(div4)
    ABC 166
    CF 637 div2
    HDU-1875 畅通工程再续
    POJ1251-Jungle Roads
    POJ1797 Heavy Transportation
    Gym-101911K Medians and Partition
    Gym-101911A Coffee Break
    【Vue】Re09 Webpack 第一部分(介绍、安装、配置)
    【Vue】Re08 模块化
  • 原文地址:https://www.cnblogs.com/gloryhope/p/11733691.html
Copyright © 2011-2022 走看看