求双向加密代码(C#)
如题,就是对字符串进行加解密,请大家帮帮忙. 问题点数:50、回复次数:4Top
1 楼leakey8(做人累,做男人更累。)回复于 2006-03-09 10:42:13 得分 0
没人知道吗?!Top
2 楼zhtflhs(哼哼)回复于 2006-03-09 10:46:16 得分 50
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Security.Cryptography;
using System.Text;
using System.Threading;
using System.Management;
namespace tubiao
{
/// <summary>
/// jiami 的摘要说明。
/// </summary>
public class jiami : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.Button Button1;
Byte[] Iv64={11, 22, 33, 44, 55, 66, 77, 85};
protected System.Web.UI.WebControls.Button Button2;
Byte[] byKey64={10, 20, 30, 40, 50, 60, 70, 80};
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
}
public string Encrypt(string strText)
{
try
{
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
Byte[] inputByteArray = Encoding.UTF8.GetBytes(strText);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(byKey64, Iv64), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
return Convert.ToBase64String(ms.ToArray());
}
catch(Exception ex)
{
return ex.Message;
}
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Button2.Click += new System.EventHandler(this.Button2_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void Button1_Click(object sender, System.EventArgs e)
{
string a="abcdefg";
this.Label1.Text=Encrypt(a);
// String EncodedString = "This is a <Test String>.";
// StringWriter writer = new StringWriter();
// //这句是关键,还有个Server.HtmlEncode 是加密
// Server.HtmlDecode(EncodedString, writer);
// this.Label1.Text = writer.ToString();
}
public string Decrypt(string strText)
{
Byte[] inputByteArray = new byte[strText.Length];
try
{
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
inputByteArray = Convert.FromBase64String(strText);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(byKey64, Iv64), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
System.Text.Encoding encoding = System.Text.Encoding.UTF8;
return encoding.GetString(ms.ToArray());
}
catch(Exception ex)
{
return ex.Message;
}
}
private void Button2_Click(object sender, System.EventArgs e)
{
this.Label1.Text=Decrypt(this.Label1.Text);
}
}
}
这个例子你看一下!Top
3 楼leakey8(做人累,做男人更累。)回复于 2006-03-09 16:34:44 得分 0
搞定了,3QTop
4 楼lsm998(燕之语)回复于 2006-04-06 17:01:54 得分 0
谢谢
zhtflhs (50)、
得代码Top




