zoukankan      html  css  js  c++  java
  • 256位AES加密和解密

     1  /// <summary>  
     2         /// 256位AES加密  
     3         /// </summary>  
     4         /// <param name="toEncrypt"></param>  
     5         /// <returns></returns> 
     6         public static string Encrypt(string toEncrypt, string skey, string IV)
     7         {
     8             //256-AES key      
     9             //byte[] keyArray = UTF8Encoding.UTF8.GetBytes("12345678123456781234567812345678");
    10             byte[] keyArray = UTF8Encoding.UTF8.GetBytes(skey);
    11             byte[] toEncryptArray = UTF8Encoding.UTF8.GetBytes(toEncrypt);
    12             byte[] ivArray = UTF8Encoding.UTF8.GetBytes(IV);//1234567812345678
    13 
    14             RijndaelManaged rDel = new RijndaelManaged();
    15             rDel.Key = keyArray;
    16             rDel.Mode = CipherMode.CBC;
    17             rDel.Padding = PaddingMode.PKCS7;
    18             rDel.IV = ivArray;
    19 
    20             ICryptoTransform cTransform = rDel.CreateEncryptor();
    21             byte[] resultArray = cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length);
    22 
    23             return Convert.ToBase64String(resultArray, 0, resultArray.Length);
    24         }
     /// <summary>  
            /// 256位AES解密  
            /// </summary>  
            /// <param name="toDecrypt"></param>  
            /// <returns></returns>  
            public static string Decrypt(string toDecrypt, string skey, string IV)
            {
                //256-AES key
                //byte[] keyArray = UTF8Encoding.UTF8.GetBytes("12345678123456781234567812345678");
                byte[] keyArray = UTF8Encoding.UTF8.GetBytes(skey);
                byte[] toDecryptArray = Convert.FromBase64String(toDecrypt);
                byte[] ivArray = UTF8Encoding.UTF8.GetBytes(IV); //1234567812345678
    
                RijndaelManaged rDel = new RijndaelManaged();
                rDel.Key = keyArray;
                rDel.Mode = CipherMode.CBC;
                rDel.Padding = PaddingMode.PKCS7;
                rDel.IV = ivArray;
    
                ICryptoTransform cTransform = rDel.CreateDecryptor();
                byte[] resultArray = cTransform.TransformFinalBlock(toDecryptArray, 0, toDecryptArray.Length);
    
                return UTF8Encoding.UTF8.GetString(resultArray);
            }
  • 相关阅读:
    Php7安装pdo_pgsql,pgsql扩展
    Laravel 实时监听打印 SQL
    windows 下安装docker依赖boot2docker镜像默认用户和密码
    win7下安装virtual box后启动报错
    phpstorm 不能自动打开上次的历史文件
    BZOJ1001 [BeiJing2006]狼抓兔子 平面图转对偶图,最小割转最短路
    BZOJ1098 [POI2007]办公楼biu
    POJ1410 Intersection
    HDU3336 Count the string
    HDU2594 Simpsons’ Hidden Talents [KMP]
  • 原文地址:https://www.cnblogs.com/ZkbFighting/p/11195337.html
Copyright © 2011-2022 走看看