asp.net中如何将url地址栏中传值的数字加密

netxiaoma 2011-02-16 10:21:02

请教大家:


Response.Redirect("function.aspx?cardno="+cardno);
string cardno=Request["cardno"].ToString();

cardno如何加密?先谢谢了。
...全文
318 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ltcszk 2011-02-16
  • 打赏
  • 举报
回复
   public class EncryptionDecryption
{
const string KEY_64 = "EavicCpp";//密匙,8个字符,64位

const string IV_64 = "EavicCpp";



#region EnCode 加密
/// <summary>
/// EnCode 加密
/// </summary>
/// <param name="str">要加密的字符串</param>
/// <returns></returns>

public static string EnCode(string data)
{
byte[] byKey = System.Text.ASCIIEncoding.ASCII.GetBytes(KEY_64);
byte[] byIV = System.Text.ASCIIEncoding.ASCII.GetBytes(IV_64);

DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();
int i = cryptoProvider.KeySize;
MemoryStream ms = new MemoryStream();
CryptoStream cst = new CryptoStream(ms, cryptoProvider.CreateEncryptor(byKey,

byIV), CryptoStreamMode.Write);

StreamWriter sw = new StreamWriter(cst);
sw.Write(data);
sw.Flush();
cst.FlushFinalBlock();
sw.Flush();
return Convert.ToBase64String(ms.GetBuffer(), 0, (int)ms.Length);
}
#endregion

#region DeCode 解密
/// <summary>
/// DeCode 解密
/// </summary>
/// <param name="str">要解密的字符串</param>
/// <returns></returns>
public static string DeCode(string data)
{
byte[] byKey = System.Text.ASCIIEncoding.ASCII.GetBytes(KEY_64);
byte[] byIV = System.Text.ASCIIEncoding.ASCII.GetBytes(IV_64);

byte[] byEnc;
try
{
byEnc = Convert.FromBase64String(data);
}
catch
{
return null;
}

DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();
MemoryStream ms = new MemoryStream(byEnc);
CryptoStream cst = new CryptoStream(ms, cryptoProvider.CreateDecryptor(byKey,

byIV), CryptoStreamMode.Read);
StreamReader sr = new StreamReader(cst);
return sr.ReadToEnd();
}
#endregion
}
V-Far 2011-02-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 netxiaoma 的回复:]

cardno=12345,纯数字怎么加密?
[/Quote]最简单的.纯数字.你随便加个100.也算加密了...
netxiaoma 2011-02-16
  • 打赏
  • 举报
回复
cardno=12345,纯数字怎么加密?
天下在我心 2011-02-16
  • 打赏
  • 举报
回复
可以自己写个加密和解密的方法,使用前加密,接收后解密就行。
至于加密的方法,可以去看
http://blog.csdn.net/zhoufoxcn/archive/2007/01/29/1497095.aspx
laowang134 2011-02-16
  • 打赏
  • 举报
回复
HttpUtility.HtmlEncode();//加密
HttpUtility.HtmlDecode();//解密
yangyalin8425 2011-02-16
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 luoweihua7 的回复:]

引用 3 楼 netxiaoma 的回复:

cardno=12345,纯数字怎么加密?
最简单的.纯数字.你随便加个100.也算加密了...
[/Quote]
这个我看行,不加100能个随机数也行啊,得到后在减去哪个数就行了
wuyq11 2011-02-16
  • 打赏
  • 举报
回复
自定义解密加密方法,des,sha,rsa等
//DES加密
public string Encrypt(string pToEncrypt, string sKey)
{
using (DESCryptoServiceProvider des = new DESCryptoServiceProvider())
{
byte[] inputByteArray = Encoding.UTF8.GetBytes(pToEncrypt);
des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
using (CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write))
{
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
cs.Close();
}
string str = Convert.ToBase64String(ms.ToArray());
ms.Close();
return str;
}
}

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧