zoukankan      html  css  js  c++  java
  • (原创)常用加密解密

    加密
    代码
    public static string Encrypt(string toEncrypt, bool useHashing)
        {
            
    byte[] keyArray;
            
    byte[] toEncryptArray = UTF8Encoding.UTF8.GetBytes(toEncrypt);

            System.Configuration.AppSettingsReader settingsReader 
    = new AppSettingsReader();

            
    string key = (string)settingsReader.GetValue("SecurityKey"typeof(String));

            
    if (useHashing)
            {
                MD5CryptoServiceProvider hashmd5 
    = new MD5CryptoServiceProvider();
                keyArray 
    = hashmd5.ComputeHash(UTF8Encoding.UTF8.GetBytes(key));

                hashmd5.Clear();
            }
            
    else
                keyArray 
    = UTF8Encoding.UTF8.GetBytes(key);

            TripleDESCryptoServiceProvider tdes 
    = new TripleDESCryptoServiceProvider();

            tdes.Key 
    = keyArray;

            tdes.Mode 
    = CipherMode.ECB;
            tdes.Padding 
    = PaddingMode.PKCS7;

            ICryptoTransform cTransform 
    = tdes.CreateEncryptor();

            
    byte[] resultArray = cTransform.TransformFinalBlock
                    (toEncryptArray, 
    0, toEncryptArray.Length);
            tdes.Clear();
            
    return Convert.ToBase64String(resultArray, 0, resultArray.Length);
        }

    解密:

    代码
    public static string Decrypt(string cipherString, bool useHashing)
        {
            
    byte[] keyArray;


            
    byte[] toEncryptArray = Convert.FromBase64String(cipherString);

            System.Configuration.AppSettingsReader settingsReader 
    = new AppSettingsReader();
            
    string key = (string)settingsReader.GetValue("SecurityKey"typeof(String));

            
    if (useHashing)
            {
                MD5CryptoServiceProvider hashmd5 
    = new MD5CryptoServiceProvider();
                keyArray 
    = hashmd5.ComputeHash(UTF8Encoding.UTF8.GetBytes(key));

                hashmd5.Clear();
            }
            
    else
            {
                keyArray 
    = UTF8Encoding.UTF8.GetBytes(key);
             }

            TripleDESCryptoServiceProvider tdes 
    = new TripleDESCryptoServiceProvider();

            tdes.Key 
    = keyArray;
            

            tdes.Mode 
    = CipherMode.ECB;

            tdes.Padding 
    = PaddingMode.PKCS7;

            ICryptoTransform cTransform 
    = tdes.CreateDecryptor();
            
    byte[] resultArray = cTransform.TransformFinalBlock
                    (toEncryptArray, 
    0, toEncryptArray.Length);

            tdes.Clear();

            
    return UTF8Encoding.UTF8.GetString(resultArray);
        }
  • 相关阅读:
    ch4-SPSS Statistics操作进阶
    ch3-SPSS Statistics操作入门
    概率论与数理统计-ch7-参数估计
    概率论与数理统计-ch6-样本与抽样分布
    概率论与数理统计-ch5-大数定律及中心极限定理
    概率论与数理统计-ch4-随机变量的数字特征
    概率论与数理统计-ch3-多维随机变量及其分布
    Maven的依赖冲突
    eclipse下的server插件
    JQuery了解
  • 原文地址:https://www.cnblogs.com/ghfsusan/p/1620377.html
Copyright © 2011-2022 走看看