zoukankan      html  css  js  c++  java
  • asp.net实现MD5加密的方法

    非常简单,一句代码而已,备忘。
    Response.Write(FormsAuthentication.HashPasswordForStoringInConfigFile("要加密的字符串""MD5"));

    为了让博文稍长一些,价值稍高一些,附我常用的,加密带解密的代码:

    代码
    /*用法
     protected void Page_Load(object sender, EventArgs e)
        {
            //加密
            this.Title = CEncrypt.DesEncrypt("pwd", CEncrypt.Key);
            this.Title += CEncrypt.DesDecrypt(this.Title, CEncrypt.Key);
            Response.Write(CEncrypt.DesDecrypt("gAYyhdLQunc=", CEncrypt.Key));
        }
     
    */
    using System;
    using System.IO;
    using System.Text;
    using System.Security.Cryptography;
    using System.Web;

    namespace YD.Common
    {
        
    /// <summary>
        
    /// 加密码类
        
    /// </summary>
        public class CEncrypt
        {
            
    /// <summary>
            
    /// 加密
            
    /// </summary>
            
    /// <param name="inputString"></param>
            
    /// <returns></returns>
            public static string DesEncrypt(string inputString)
            {
                
    return DesEncrypt(inputString, Key);
            }
            
    /// <summary>
            
    /// 解密
            
    /// </summary>
            
    /// <param name="inputString"></param>
            
    /// <returns></returns>
            public static string DesDecrypt(string inputString)
            {
                
    return DesDecrypt(inputString, Key);
            }
            
    /// <summary>
            
    /// 密匙
            
    /// </summary>
            private static string Key
            {
                
    get
                {
                    
    return "hongye10";
                }
            }
            
    /// <summary>
            
    /// 加密字符串
            
    /// 注意:密钥必须为8位
            
    /// </summary>
            
    /// <param name="strText">字符串</param>
            
    /// <param name="encryptKey">密钥</param>
            
    /// <param name="encryptKey">返回加密后的字符串</param>
            public static string DesEncrypt(string inputString, string encryptKey)
            {
                
    byte[] byKey = null;
                
    byte[] IV = { 0x120x340x560x780x900xAB0xCD0xEF };
                
    try
                {
                    byKey 
    = System.Text.Encoding.UTF8.GetBytes(encryptKey.Substring(08));
                    DESCryptoServiceProvider des 
    = new DESCryptoServiceProvider();
                    
    byte[] inputByteArray = Encoding.UTF8.GetBytes(inputString);
                    MemoryStream ms 
    = new MemoryStream();
                    CryptoStream cs 
    = new CryptoStream(ms, des.CreateEncryptor(byKey, IV), CryptoStreamMode.Write);
                    cs.Write(inputByteArray, 
    0, inputByteArray.Length);
                    cs.FlushFinalBlock();
                    
    return Convert.ToBase64String(ms.ToArray());
                }
                
    catch (System.Exception error)
                {
                    
    //return error.Message;
                    return null;
                }
            }
            
    /// <summary>
            
    /// 解密字符串
            
    /// </summary>
            
    /// <param name="this.inputString">加了密的字符串</param>
            
    /// <param name="decryptKey">密钥</param>
            
    /// <param name="decryptKey">返回解密后的字符串</param>
            public static string DesDecrypt(string inputString, string decryptKey)
            {
                
    byte[] byKey = null;
                
    byte[] IV = { 0x120x340x560x780x900xAB0xCD0xEF };
                
    byte[] inputByteArray = new Byte[inputString.Length];
                
    try
                {
                    byKey 
    = System.Text.Encoding.UTF8.GetBytes(decryptKey.Substring(08));
                    DESCryptoServiceProvider des 
    = new DESCryptoServiceProvider();
                    inputByteArray 
    = Convert.FromBase64String(inputString);
                    MemoryStream ms 
    = new MemoryStream();
                    CryptoStream cs 
    = new CryptoStream(ms, des.CreateDecryptor(byKey, IV), CryptoStreamMode.Write);
                    cs.Write(inputByteArray, 
    0, inputByteArray.Length);
                    cs.FlushFinalBlock();
                    System.Text.Encoding encoding 
    = new System.Text.UTF8Encoding();
                    
    return encoding.GetString(ms.ToArray());
                }
                
    catch (System.Exception error)
                {
                    
    //return error.Message;
                    return null;
                }
            }
        }
    }
  • 相关阅读:
    ASP.NET2.0中创建自定义配置节处理程序(声明性模型) joe
    .Net3.0里的DependencyProperty(1) joe
    详解Javascript匿名函数的使用(转) joe
    Mark:未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值 joe
    设置windows 7 默认登陆帐户 joe
    数据库的回滚
    关于软件开发人员如何提高自己的软件专业技术方面的具体建议
    查询表结构
    readonly 和 const总结
    深入NHibernate映射
  • 原文地址:https://www.cnblogs.com/greatverve/p/1728515.html
Copyright © 2011-2022 走看看