字 典 加 密
2016-05-20 15:36
375 查看
一、在网站项目中添加公共类endecode.cs
代码如下:
using System;using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Security.Cryptography;
using System.Text;
/// <summary>
/// endecode 的摘要说明
/// </summary>
public class endecode
{
public endecode()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public static string encodedecodestr(string code,bool flag)
{
string restr = string.Empty;
string[] keymin = {"math","computer","physical","Chinese" };//数组来字典存储
string[] keypwd = {"3602","8431","4179","3806" };
string oldkey = string.Empty;
string newkey = string.Empty;
for (int i = 0; i < keymin.Length;i++ )
{
if (flag == true)
{
oldkey = keymin[i];
newkey = keypwd[i];
}
else
{
oldkey = keypwd[i];
newkey = keymin[i];
}
code = code.Replace(oldkey,newkey);
}
restr = code;
return restr;
}
}
二、创建pwddic窗体
设计前端界面:
运行结果:
加密显示:解密显示:
后台pwddic.aspx.cs代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Text;
using System.Security.Cryptography;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
TextBox2.Text =reversetstr(endecode.encodedecodestr(TextBox1.Text.Trim(),true));
TextBox1.Text=String.Empty;
}
protected void Button2_Click(object sender, EventArgs e)
{
TextBox1.Text = endecode.encodedecodestr(reversetstr(TextBox2.Text.Trim()),false);
TextBox2.Text = String.Empty;
}
public string reversetstr(string codestr)
{
string restr = "";
char[] arraychar = codestr.ToCharArray();//把一个字符串转化成一个字符数组
Array.Reverse(arraychar);//把字符数组倒置
restr = new string(arraychar);//把一个字符数组转化为字符串0
return restr;
}<span style="display: none; width: 0px; height: 0px;" id="transmark"></span>
}
这里加密使用数组倒置,加密的时候明文的TextBox1就隐藏,解密的时候TextBox1就显示。
相关文章推荐
- c#调用COM组件
- C#实现把指定数据写入串口
- C#动态创建button的方法
- C#中抽象方法与虚拟方法的区别
- c#中虚函数的相关使用方法
- C#实现给图片加水印的方法
- C#使用加边法计算行列式的值
- C#实现多线程的同步方法实例分析
- C#中尾递归的使用、优化及编译器优化
- C#中的delegate委托类型基本学习教程
- C#实现子窗体与父窗体通信方法实例总结
- C#通用邮件发送类分享
- 举例讲解C#中自动实现的属性
- C#中this的用法集锦
- C#数据结构之顺序表(SeqList)实例详解
- C#.NET获取拨号连接的宽带连接方法
- C#异步绑定数据实现方法
- C#实现AddRange为数组添加多个元素的方法
- C#中Equality和Identity浅析
- C#比较二个数组并找出相同或不同元素的方法