• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#DES加密与解密算法实例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

引入System.Web.dll,用System.Web命名空间的
pass = FormsAuthentication.HashPasswordForStoringInConfigFile(pass, "MD5");

 

 

 ret;
        }

 

 

先看下效果

点加密
加密出来了~
然后点解密
解密成功~就算你再次启动程序~也是一样可以的情况~
代码如下~仔细看哦 ~~我不多说明了~
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
//添加
using System.Globalization;
using System.Security.Cryptography;

namespace WindowsApplication1
{
      public partial class Form1 : Form
      {
          public Form1()
          {
              InitializeComponent();
          }
          public string key="??^&$%^&";//随便写~
          public string s2;
          //// 创建Key
          //public string GenerateKey()
          //{
          //      DESCryptoServiceProvider desCrypto = (DESCryptoServiceProvider)DESCryptoServiceProvider.Create();
          //      return ASCIIEncoding.ASCII.GetString(desCrypto.Key);
          //}
          // 加密字符串
          public string EncryptString(string sInputString, string sKey)
          {
              byte[] data = Encoding.UTF8.GetBytes(sInputString);
              DESCryptoServiceProvider DES = new DESCryptoServiceProvider();
              DES.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
              DES.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
              ICryptoTransform desencrypt = DES.CreateEncryptor();
              byte[] result = desencrypt.TransformFinalBlock(data, 0, data.Length);
              return BitConverter.ToString(result);
          }
          // 解密字符串
          public string DecryptString(string sInputString, string sKey)
          {
              string[] sInput = sInputString.Split("-".ToCharArray());
              byte[] data = new byte[sInput.Length];
              for (int i = 0; i < sInput.Length; i++)
              {
                  data[i] = byte.Parse(sInput[i], NumberStyles.HexNumber);
              }
              DESCryptoServiceProvider DES = new DESCryptoServiceProvider();
              DES.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
              DES.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
              ICryptoTransform desencrypt = DES.CreateDecryptor();
              byte[] result = desencrypt.TransformFinalBlock(data, 0, data.Length);
              return Encoding.UTF8.GetString(result);
          }
        
          private void Form1_Load(object sender, EventArgs e)
          {
          }
          private void button1_Click(object sender, EventArgs e)
          {//加密
              textBox2.Text = EncryptString(textBox1.Text, key);
          }
          private void button2_Click(object sender, EventArgs e)
          {//解密
              textBox2.Text = DecryptString(textBox1.Text, key);
          }
      }
}
以上在VS2005中运行成功~^_^~~
#endregion

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#中使用DES和AES加密解密发布时间:2022-07-10
下一篇:
C#中类名的泛型类转发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap