要求是可逆的
把任意十进制数加密
结果只能是数字,且不能有规律可循
把任意十进制数加密
结果只能是数字,且不能有规律可循
解决方案 »
- 找不到类型或命名空间名称“SqlConnection”
- 一个关于水晶报表的问题?
- 使用了asp.net母板页,如何在内容页使用javascript?
- treeview 控件本地调试不能正常显示,如何解决!
- 有谁用过Microsoft web树型控件
- 各位大哥,给小弟一段代码好吗?另开贴100分数相赠
- ------>>>>>>>> ORA-12154: TNS: 无法处理服务名
- ASP.NET就是ASP.NET,怪事太多...
- 不知道大家碰到过这个问题没有,文本框输入中文时闪动?
- -------------------------------页面显示,隐藏的问题-------------------
- asp.net(c#)上传图片时,取不到要上传图片的本地路径?
- 请问asp.net 2.0如何实现多文件上传的功能
using System.Security.Cryptography;
using System.IO;namespace DES_DES
{ ///参考:http://
/// <summary>
/// CDESEncrypt 的摘要说明。使用标准64位DES加密
/// </summary>
public class CDES
{
private byte[] FIV;
private byte[] FKEY;
public CDES()
{
// TODO: 在此处添加构造函数逻辑
this.DefaultInit();
}
/// <summary>
/// 默认键值和初始向量
/// </summary>
private void DefaultInit()
{
byte[] IV = { 155, 103, 246, 8, 36, 99, 234, 36 };
byte[] key ={ 142, 16, 93, 156, 78, 4, 218, 132 };
FIV = IV;
FKEY = key;
}
/// <summary>
/// 采用标准 64位 DES 算法加密
/// </summary>
/// <param name="strText">要加密的字符串</param>
/// <returns>返回加密后的字符串</returns>
public string Encrypt(string strText)
{
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(FKEY, FIV), CryptoStreamMode.Write);
StreamWriter sw = new StreamWriter(cs);
sw.Write(strText);
sw.Flush();
cs.FlushFinalBlock();
ms.Flush();
return Convert.ToBase64String(ms.GetBuffer(), 0, Convert.ToInt32(ms.Length));
}
/// <summary>
/// 标准64位DES解密
/// </summary>
/// <param name="strText">要解密的字符串</param>
/// <returns>返回解密后的字符串</returns>
public string Decrypt(string strText)
{
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
byte[] inputByteArray = Convert.FromBase64String(strText);
MemoryStream ms = new MemoryStream(inputByteArray);
CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(FKEY, FIV), CryptoStreamMode.Read);
StreamReader sr = new StreamReader(cs);
return sr.ReadToEnd();
}
//调用:在类库DES_DES.cs定义public class CDES时用
//DES_DES.CDES DES = new DES_DES.CDES();//在类库DES_DES.cs定义public class CDES时用
//string t = "1,+ 100万";
//t = DES.Encrypt(t);
//Response.Write(t);
}
}