其实方法微软早就为我们封装好了。我们直接引用类库,拿过来用就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 Core 使用 MD5 加密解密字符串 在 ASP.NET Core 中,使用 MD5 算法来加密和解密字符串是非常重要的一步。MD5(Message-Digest Algorithm 5)是一种常用的哈希算法,用于将任意长的数据转换为一个固定长度的...
这个"asp.net加密解密实例"提供了实现这一目标的简单而直观的方法。以下将详细讲解相关知识点,包括加密的基本概念、ASP.NET中常用的加密算法以及如何在实际项目中应用。 1. **加密与解密基础**: - **加密**:是...
在ASP.NET中,MD5加密和解密是常见的安全实践,下面我们将深入探讨如何在ASP.NET中实现MD5加密和解密。 首先,理解MD5的基本概念。MD5算法生成的是一个128位的二进制数,通常以32位的十六进制字符串表示。由于MD5是...
本资源提供了一个经过打包的加密解密软件,它使用了两种常见的加密算法:MD5和AES,并且附带了完整的源码,这对于开发者来说是一份宝贵的教育资源。 首先,我们来了解一下MD5(Message-Digest Algorithm 5)。MD5是...
MD5加密,简单方便易用,我使用的是vs2010,所以,如果你使用的是vs2005 或vs2008,请新建一个空网站,将下载的文件解压后,(除confuger文件外)复制到你的空网站中就可使用!QQ:147249735,如有问题,可以Q我,...
除了基本的MD5加密,ASP.NET还提供了多种加密和解密方式,例如SHA系列、AES、DES等。这些算法各有特点,适用于不同的安全需求。例如,如果需要更高级的安全性,可以考虑使用RSA或AES等对称/非对称加密算法。 在实际...
ASP.NET 加密口令的方法实例 ...在本文中,我们介绍了 HashPasswordForStoringInConfigFile 方法、MD5 和 SHA-1 加密算法、TripleDES 加密算法、XML 的加密和解密实现方法等 ASP.NET 加密解密技巧。
ASP.NET的MD5和DES加密和解密算法 非常好的资源 欢迎大家参考
总之,ASP.NET中的DES加密解密涉及到对字符串数据的加密和解密,通过使用`DESCryptoServiceProvider`类,结合MD5哈希处理,实现了对数据的安全保护。尽管DES已不再是最安全的选择,但了解其原理和应用有助于理解加密...
下面我们将详细介绍如何在ASP.NET中实现MD5加密: 1. **导入System.Security.Cryptography命名空间**:首先,你需要在你的代码文件中导入这个命名空间,因为它包含了MD5类。 ```csharp using System.Security....
本篇文章将深入探讨C# ASP.NET中字符串加密解密的类和方法,以及如何在实际项目中应用它们。 首先,我们要了解加密的基本概念。加密是将明文(可读数据)转化为密文(不可读数据)的过程,而解密则是相反的过程。在...
***加密解密技术是保障数据在传输或存储过程中安全性的重要手段。加密(Encryption)和解密(Decryption)是保护数据不被非法访问的两种常用技术。其中,加密技术将数据转换为不易理解的格式,以防止数据泄露;解密...
Asp.NET 提供了丰富的加密和解密技术,确保了数据的安全性和隐私保护。本文将深入探讨这些技术,包括常用加密算法、单向散列函数以及 .NET Framework 中的实现。 首先,我们来看常见的加密算法。DES(数据加密标准...
在ASP.NET中,可以使用`System.Security.Cryptography.Aes`类来实现AES加密和解密。 3. RSA:非对称加密算法,主要用于密钥交换和数字签名。RSA使用一对公钥和私钥,公钥用于加密,私钥用于解密。ASP.NET提供了`...
综上所述,.NET框架提供了丰富的加密解密工具,包括MD5和AES等。在处理数据加密解密时,需要根据应用场景选择合适的算法,并确保安全地管理和存储密钥。案例中的`jiami_jiemi`文件可能包含了实现这些功能的具体代码...
而"DES加密解密"虽然与MD5不直接相关,但DES(Data Encryption Standard)也是一种常用的加密算法,可能会作为对比或者补充出现在文档中,介绍传统的对称加密技术。 总的来说,这个压缩包内容对于理解和使用MD5在...
在这个主题中,“asp.net加解密和取拼音”涉及了两个重要的技术方面:数据加密和解密,以及汉字到拼音的转换。 **一、加解密** 在 ASP.NET 中,数据的安全性至关重要,尤其是在传输敏感信息时。加解密是保护这些...
标题“入门级asp.net加密”意味着我们将探讨的是ASP.NET中基础但实用的加密方法。加密是一种将明文数据转换为密文的过程,目的是防止未经授权的访问者解读敏感信息。在ASP.NET中,我们通常会用到以下几种加密技术: ...
在这个名为“ASP.NET源码——SHA1、MD5加密、解密、HTML字符串转换实例.zip”的压缩包中,包含了一些关于数据安全和字符串处理的关键实践。下面我们将详细探讨这些知识点。 首先,SHAI(通常写作SHA-1)是一种广泛...