zoukankan      html  css  js  c++  java
  • Aes加解密

    遇到URL参数的加解密,出于安全性的考虑,一般在后台进行参数的处理,Aes(高级加密标准)是比较常见的加解密方法,其流程如下:
     1 /// <summary>
     2     /// 加解密
     3     /// </summary>
     4     public class AesCode {
     5         #region 加解密
     6         /// <summary>  
     7         /// AES 解密  
     8         /// </summary>  
     9         /// <param name="toDecrypt"></param>  
    10         /// <returns></returns>  
    11         public static string AesDecrypt(string toDecrypt) {
    12             byte[] keyArray = Encoding.UTF8.GetBytes("12345678901234567890123456789012");
    13             byte[] toEncryptArray = Convert.FromBase64String(toDecrypt);
    14 
    15             RijndaelManaged rDel = new RijndaelManaged();
    16             rDel.Key = keyArray;
    17             rDel.Mode = CipherMode.ECB;
    18             rDel.Padding = PaddingMode.PKCS7;
    19 
    20             ICryptoTransform cTransform = rDel.CreateDecryptor();
    21             byte[] resultArray = cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length);
    22 
    23             return Encoding.UTF8.GetString(resultArray);
    24         }
    25 
    26         /// <summary>  
    27         /// AES 加密  
    28         /// </summary>  
    29         /// <param name="toEncrypt"></param>  
    30         /// <returns></returns>  
    31         public static string AesEncrypt(string toEncrypt) {
    32             byte[] keyArray = Encoding.UTF8.GetBytes("12345678901234567890123456789012");
    33             byte[] toEncryptArray = Encoding.UTF8.GetBytes(toEncrypt);
    34 
    35             RijndaelManaged rDel = new RijndaelManaged();
    36             rDel.Key = keyArray;
    37             rDel.Mode = CipherMode.ECB;
    38             rDel.Padding = PaddingMode.PKCS7;
    39 
    40             ICryptoTransform cTransform = rDel.CreateEncryptor();
    41             byte[] resultArray = cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length);
    42 
    43             return Convert.ToBase64String(resultArray, 0, resultArray.Length);
    44         }
    45         #endregion
    46     }
    View Code
  • 相关阅读:
    [慢查优化]建索引时注意字段选择性 & 范围查询注意组合索引的字段顺序
    telnet报“Unable to connect to remote host:Connection refused”错误
    问题总结-2016
    vim保存文件时,生成.un~文件
    用uniq来处理文件重复数据--交集,差集,计数等(转)
    ThinkPHP的URL访问
    PHP中Exception异常
    Git Stash紧急处理问题,需要切分支
    git 命令学习
    gdb调试PHP扩展错误
  • 原文地址:https://www.cnblogs.com/ArsenalArsig/p/9075156.html
Copyright © 2011-2022 走看看