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

    using System; 
    
    using System.Collections.Generic; 
    
    using System.Text; 
    
    using System.Security.Cryptography;
    
    namespace AIMSCommon 
    
    {     /// <summary>     /// 加密、解密帮助类     /// </summary>     public class DESEncrypt     {         #region ========加密========         /// <summary>         /// 加密         /// </summary>         /// <param name="Text"></param>         /// <returns></returns>         public static string Encrypt(string Text)         {             return Encrypt(Text, "RM_Base");         }         /// <summary>         /// 加密数据         /// </summary>         /// <param name="Text"></param>         /// <param name="sKey"></param>         /// <returns></returns>         public static string Encrypt(string Text, string sKey)         {             DESCryptoServiceProvider des = new DESCryptoServiceProvider();             byte[] inputByteArray;             inputByteArray = Encoding.Default.GetBytes(Text);             des.Key = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8));             des.IV = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8));             System.IO.MemoryStream ms = new System.IO.MemoryStream();             CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write);             cs.Write(inputByteArray, 0, inputByteArray.Length);             cs.FlushFinalBlock();             StringBuilder ret = new StringBuilder();             foreach (byte b in ms.ToArray())             {                 ret.AppendFormat("{0:X2}", b);             }             return ret.ToString();         }
    
            #endregion
    
            #region ========解密========         /// <summary>         /// 解密         /// </summary>         /// <param name="Text"></param>         /// <returns></returns>         public static string Decrypt(string Text)         {             return Decrypt(Text, "RM_Base");         }         /// <summary>         /// 解密数据         /// </summary>         /// <param name="Text"></param>         /// <param name="sKey"></param>         /// <returns></returns>         public static string Decrypt(string Text, string sKey)         {             DESCryptoServiceProvider des = new DESCryptoServiceProvider();             int len;             len = Text.Length / 2;             byte[] inputByteArray = new byte[len];             int x, i;             for (x = 0; x < len; x++)             {                 i = Convert.ToInt32(Text.Substring(x * 2, 2), 16);                 inputByteArray[x] = (byte)i;             }             des.Key = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8));             des.IV = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8));             System.IO.MemoryStream ms = new System.IO.MemoryStream();             CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write);             cs.Write(inputByteArray, 0, inputByteArray.Length);             cs.FlushFinalBlock();             return Encoding.Default.GetString(ms.ToArray());         }
    
            #endregion     } }
    View Code
  • 相关阅读:
    mysql 重置root 账户密码
    Applicationpoolidentity 好有趣哦
    类模板的困扰 LNK2019 (转)
    C++中定义比较函数的三种方法
    Spring的AOP,Struts2的拦截器(Interceptor),以及springMVC的(interceptor)
    MyBatis与Hibernate总结篇
    Java中的回调
    闲来重写一下快速排序
    【lucene】一个简单的招聘网站的建立
    【Lucene】小谈lucene的BooleanQuery查询对象
  • 原文地址:https://www.cnblogs.com/zhangxiaolei521/p/5660944.html
Copyright © 2011-2022 走看看