using System;
using System.Text;
using System.Security.Cryptography;
using System.IO; namespace DESPwd
{
public class DESUtil
{
static DESCryptoServiceProvider des = new DESCryptoServiceProvider(); public static DESCryptoServiceProvider DES
{
get { return des; }
}
const string EncryptionKey = "诺丽科技";
const string EncryptionIV = "kell";
public static string Encoder(string input)
{
byte[] SourceData = Encoding.Unicode.GetBytes(input);
byte[] returnData = null;
try
{
des.Key = ASCIIEncoding.Unicode.GetBytes(EncryptionKey);
des.IV = ASCIIEncoding.Unicode.GetBytes(EncryptionIV);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write);
cs.Write(SourceData, , SourceData.Length);
cs.FlushFinalBlock();
returnData = ms.ToArray();
}
catch (Exception ex)
{
throw ex;
}
return Encoding.Unicode.GetString(returnData);
}
public static string Decoder(string input)
{
byte[] SourceData = Encoding.Unicode.GetBytes(input);
byte[] returnData = null;
try
{
DESCryptoServiceProvider desProvider = new DESCryptoServiceProvider();
desProvider.Key = Encoding.Unicode.GetBytes(EncryptionKey);
desProvider.IV = Encoding.Unicode.GetBytes(EncryptionIV);
MemoryStream ms = new MemoryStream();
ICryptoTransform encrypto = desProvider.CreateDecryptor();
CryptoStream cs = new CryptoStream(ms, encrypto, CryptoStreamMode.Write);
cs.Write(SourceData, , SourceData.Length);
cs.FlushFinalBlock();
returnData = ms.ToArray();
}
catch (Exception ex)
{
throw ex;
}
return Encoding.Unicode.GetString(returnData);
}
}
}
using System;
using System.Windows.Forms; namespace DESPwd
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button10_Click(object sender, EventArgs e)
{
textBox9.Text = DESUtil.Encoder(textBox8.Text);
} private void button11_Click(object sender, EventArgs e)
{
textBox11.Text = DESUtil.Decoder(textBox9.Text);
}
}
}

DES加密解密工具的更多相关文章

  1. des 加密解密工具类

    最近在做des的双对称加密解密,特此记录一下. des对称加密,是一种比较传统的加密方式,其加密运算.解密运算使用的是同样的密钥,信息的发送者和信息的接收者在进行信息的传输与处理时,必须共同持有该密码 ...

  2. DES带IV向量加密解密工具

    链接:http://pan.baidu.com/s/1kVAV80J  密码:sgys 鉴于网上的DES加密解密都是不带IV向量的 我就自制了一个带IV向量的DES加密解密的小工具 © 2016-20 ...

  3. php使用openssl进行Rsa长数据加密(117)解密(128) 和 DES 加密解密

    PHP使用openssl进行Rsa加密,如果要加密的明文太长则会出错,解决方法:加密的时候117个字符加密一次,然后把所有的密文拼接成一个密文:解密的时候需要128个字符解密一下,然后拼接成数据. 加 ...

  4. des加密解密——java加密,php解密

    最近在做项目中,遇到des加密解密的问题. 场景是安卓app端用des加密,php这边需要解密.之前没有接触过des这种加密解密算法,但想着肯定会有demo.因此百度,搜了代码来用.网上代码也是鱼龙混 ...

  5. DES加密解密

    加密后生成Base64字符串,并去除'='字符. 加密后替换掉'+',这样加密后的字符串可以作为url参数传递. using System; using System.IO; using System ...

  6. 一个java的DES加密解密类转换成C#

    一个java的des加密解密代码如下: //package com.visionsky.util; import java.security.*; //import java.util.regex.P ...

  7. Golang之AES/DES加密解密

    AES/DES加密/解密涉及4个概念:1. Block, 也叫分组, 相应加密/解密的算法. 2. BlockMode, 模式, 相应加密/解密的处理.3. InitalVectory, 初始向量4. ...

  8. java 实现 DES加密 解密算法

    DES算法的入口参数有三个:Key.Data.Mode.其中Key为8个字节共64位,是DES算法的工作密钥:Data也为8个字节64位,是要被加密或被解密的数据:Mode为DES的工作方式,有两种: ...

  9. 兼容PHP和Java的des加密解密代码分享

    这篇文章主要介绍了兼容PHP和Java的des加密解密代码分享,适合如服务器是JAVA语言编写,客户端是PHP编写,并需要des加密解密的情况,需要的朋友可以参考下 作为一个iOS工程师来解决安卓的问 ...

随机推荐

  1. Python——import与reload模块的区别

     原创声明:本文系博主原创文章,转载或引用请注明出处. 1. 语法不同 import sys reload('sys') 2. 导入特性不同 import 和reload都可以对同一个模块多次加载, ...

  2. li每三个换行

      背景:鉴于有时候调取数据用table不方便,所以用的li,但是li又没有table的样式,就需要自己写了 思路:先将所有的li浮动,然后清除第3n+1的浮动(如果是四个则是4n+1) 例子: &l ...

  3. 锁&lock与latch

    锁是数据库系统区别于文件系统的一个关键特性.锁机制用于管理对共享资源的并发访问.Innodb不仅仅使用行锁,也会在数据库内部其它地方使用锁,从而允许对多种不同资源提供并发访问.如:操作缓冲池中的LRU ...

  4. 简单的使用Gson (序列化 和 反序化)

    下载地址:http://mvnrepository.com/artifact/com.google.code.gson/gson/2.8.5 在项目导入jar包后 package com.web; i ...

  5. 用memcache来同步session

    用memcache来同步session是还是不错的,当然也可以通过redis来保存session,可以php开启并将Session存储到Redis缓存,下面是设置利用memcache在web集群中同步 ...

  6. docker限制容器日志大小

    1.新建/etc/docker/daemon.json,若有就不用新建了.添加log-dirver和log-opts参数,样例如下: # vim /etc/docker/daemon.json { & ...

  7. 【GDKOI2018】总结

    前言 车祸现场... day1 T1:其实就是对于每个点的有用的时间点建一个点,然后连边,对于询问(x,y),从点(y,inf),往回走,能走到的最早的x的时间点就是答案. 比赛上用最后的一个多小时来 ...

  8. Confluence 6.15 附件(Attachments )宏

    附件宏显示添加到一个页面中的所有文件列表. 同时附件宏允许用户(用户需要具有正确的权限)来进行下面的操作: 直接从列表中上传一个文件到页面 编辑附件属性和标签 删除一个附件文件(这个将会删除文件的所有 ...

  9. [HNOI2008][bzoj 1005]明明的烦恼(prufer序列)

    1005: [HNOI2008]明明的烦恼 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 7121  Solved: 2816[Submit][Stat ...

  10. Python基础之赋值运算符

    如下图所示,假设变量a = 10, b = 20