`
shijian4810
  • 浏览: 20760 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

ASP.NET加密解密之MD5

阅读更多
其实方法微软早就为我们封装好了。我们直接引用类库,拿过来用就ok了。。废话不多说,直接上代码。。

/*用法
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 = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };
            try
            {
                byKey = System.Text.Encoding.UTF8.GetBytes(encryptKey.Substring(0,);
                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 = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };
            byte[] inputByteArray = new Byte[inputString.Length];
            try
            {
                byKey = System.Text.Encoding.UTF8.GetBytes(decryptKey.Substring(0,);
                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.NET编程知识】.net core使用MD5加密解密字符串.docx

    ASP.NET Core 使用 MD5 加密解密字符串 在 ASP.NET Core 中,使用 MD5 算法来加密和解密字符串是非常重要的一步。MD5(Message-Digest Algorithm 5)是一种常用的哈希算法,用于将任意长的数据转换为一个固定长度的...

    asp.net加密解密实例

    这个"asp.net加密解密实例"提供了实现这一目标的简单而直观的方法。以下将详细讲解相关知识点,包括加密的基本概念、ASP.NET中常用的加密算法以及如何在实际项目中应用。 1. **加密与解密基础**: - **加密**:是...

    asp.net使用MD5加密解密示例

    在ASP.NET中,MD5加密和解密是常见的安全实践,下面我们将深入探讨如何在ASP.NET中实现MD5加密和解密。 首先,理解MD5的基本概念。MD5算法生成的是一个128位的二进制数,通常以32位的十六进制字符串表示。由于MD5是...

    C#,ASP.NET 加密解密打包软件带源码

    本资源提供了一个经过打包的加密解密软件,它使用了两种常见的加密算法:MD5和AES,并且附带了完整的源码,这对于开发者来说是一份宝贵的教育资源。 首先,我们来了解一下MD5(Message-Digest Algorithm 5)。MD5是...

    asp.net(C#)MD5数据加密和解密

    MD5加密,简单方便易用,我使用的是vs2010,所以,如果你使用的是vs2005 或vs2008,请新建一个空网站,将下载的文件解压后,(除confuger文件外)复制到你的空网站中就可使用!QQ:147249735,如有问题,可以Q我,...

    asp.net MD5加密

    除了基本的MD5加密,ASP.NET还提供了多种加密和解密方式,例如SHA系列、AES、DES等。这些算法各有特点,适用于不同的安全需求。例如,如果需要更高级的安全性,可以考虑使用RSA或AES等对称/非对称加密算法。 在实际...

    【ASP.NET编程知识】ASP.NET加密口令的方法实例.docx

    ASP.NET 加密口令的方法实例 ...在本文中,我们介绍了 HashPasswordForStoringInConfigFile 方法、MD5 和 SHA-1 加密算法、TripleDES 加密算法、XML 的加密和解密实现方法等 ASP.NET 加密解密技巧。

    ASP.NET的MD5和DES加密和解密算法

    ASP.NET的MD5和DES加密和解密算法 非常好的资源 欢迎大家参考

    ASP.NET实现 DES加密解密类

    总之,ASP.NET中的DES加密解密涉及到对字符串数据的加密和解密,通过使用`DESCryptoServiceProvider`类,结合MD5哈希处理,实现了对数据的安全保护。尽管DES已不再是最安全的选择,但了解其原理和应用有助于理解加密...

    asp.net常用函数表(最强)Md5加密

    下面我们将详细介绍如何在ASP.NET中实现MD5加密: 1. **导入System.Security.Cryptography命名空间**:首先,你需要在你的代码文件中导入这个命名空间,因为它包含了MD5类。 ```csharp using System.Security....

    c# asp.net 字符串加密解密的类

    本篇文章将深入探讨C# ASP.NET中字符串加密解密的类和方法,以及如何在实际项目中应用它们。 首先,我们要了解加密的基本概念。加密是将明文(可读数据)转化为密文(不可读数据)的过程,而解密则是相反的过程。在...

    asp.net的加密解密技巧

    ***加密解密技术是保障数据在传输或存储过程中安全性的重要手段。加密(Encryption)和解密(Decryption)是保护数据不被非法访问的两种常用技术。其中,加密技术将数据转换为不易理解的格式,以防止数据泄露;解密...

    详述Asp.net的加密解密技巧

    Asp.NET 提供了丰富的加密和解密技术,确保了数据的安全性和隐私保护。本文将深入探讨这些技术,包括常用加密算法、单向散列函数以及 .NET Framework 中的实现。 首先,我们来看常见的加密算法。DES(数据加密标准...

    ASP.NET各种加密方式DEMO

    在ASP.NET中,可以使用`System.Security.Cryptography.Aes`类来实现AES加密和解密。 3. RSA:非对称加密算法,主要用于密钥交换和数字签名。RSA使用一对公钥和私钥,公钥用于加密,私钥用于解密。ASP.NET提供了`...

    .net数据加密解密案例

    综上所述,.NET框架提供了丰富的加密解密工具,包括MD5和AES等。在处理数据加密解密时,需要根据应用场景选择合适的算法,并确保安全地管理和存储密钥。案例中的`jiami_jiemi`文件可能包含了实现这些功能的具体代码...

    MD5算法的ASP实现,MD5简介,MD5加密解密vb工程

    而"DES加密解密"虽然与MD5不直接相关,但DES(Data Encryption Standard)也是一种常用的加密算法,可能会作为对比或者补充出现在文档中,介绍传统的对称加密技术。 总的来说,这个压缩包内容对于理解和使用MD5在...

    asp.net加解密和取拼音

    在这个主题中,“asp.net加解密和取拼音”涉及了两个重要的技术方面:数据加密和解密,以及汉字到拼音的转换。 **一、加解密** 在 ASP.NET 中,数据的安全性至关重要,尤其是在传输敏感信息时。加解密是保护这些...

    入门级asp.net加密

    标题“入门级asp.net加密”意味着我们将探讨的是ASP.NET中基础但实用的加密方法。加密是一种将明文数据转换为密文的过程,目的是防止未经授权的访问者解读敏感信息。在ASP.NET中,我们通常会用到以下几种加密技术: ...

    ASP.NET源码——SHAI、MD5加密、解密、HTML字符串转换实例.zip

    在这个名为“ASP.NET源码——SHA1、MD5加密、解密、HTML字符串转换实例.zip”的压缩包中,包含了一些关于数据安全和字符串处理的关键实践。下面我们将详细探讨这些知识点。 首先,SHAI(通常写作SHA-1)是一种广泛...

Global site tag (gtag.js) - Google Analytics