资源简介
C#实现的DES加解密的类文件源代码、压缩等功能。
代码片段和文件信息
/**////
/// DES
///
public class DES_
{
private DES mydes;
public string Key;
public string IV;
/**////
/// 对称加密类的构造函数
///
public DES_(string key)
{
mydes = new DESCryptoServiceProvider();
Key = key;
IV = “728#$$%^TyguyshdsufhsfwofnhKJHJKHIYhfiusf98*(^%$^&&(*&()$##@%%$RHGJJHHJ“;
}
/**////
/// 对称加密类的构造函数
///
public DES_(string key string iv)
{
mydes = new DESCryptoServiceProvider();
Key = key;
IV = iv;
}
/**////
/// 获得密钥
///
/// 密钥
private byte[] GetLegalKey()
{
string sTemp = Key;
mydes.GenerateKey();
byte[] bytTemp = mydes.Key;
int KeyLength = bytTemp.Length;
if (sTemp.Length > KeyLength)
sTemp = sTemp.Substring(0 KeyLength);
else if (sTemp.Length < KeyLength)
sTemp = sTemp.PadRight(KeyLength ‘ ‘);
return ASCIIEncoding.ASCII.GetBytes(sTemp);
}
/**////
/// 获得初始向量IV
///
/// 初试向量IV
private byte[] GetLegalIV()
{
string sTemp = IV;
mydes.GenerateIV();
byte[] bytTemp = mydes.IV;
int IVLength = bytTemp.Length;
if (sTemp.Length > IVLength)
sTemp = sTemp.Substring(0 IVLength);
else if (sTemp.Length < IVLength)
sTemp = sTemp.PadRight(IVLength ‘ ‘);
return ASCIIEncoding.ASCII.GetBytes(sTemp);
}
/**////
/// 加密方法
///
/// 待加密的串
/// 经过加密的串
public string Encrypt(string Source)
{
try
{
byte[] bytIn = UTF8Encoding.UTF8.GetBytes(Source);
MemoryStream ms = new MemoryStream();
mydes.Key = GetLegalKey();
mydes.IV = GetLegalIV();
ICryptoTransform encrypto = mydes.CreateEncryptor();
CryptoStream cs = new CryptoStream(ms encrypto CryptoStreamMode.Write);
cs.Write(bytIn 0 bytIn.Length);
cs.FlushFinalBlock();
ms.Close();
byte[] bytOut = ms.ToArray();
return Convert.Tobase64String(bytOut);
}
catch (Exception ex)
{
throw new Exception(“在文件加密的时候出现错误!错误提示: “ + ex.Message);
}
}
/**////
/// 解密方法
///
/// 待解密的串
///
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 8747 2010-09-16 21:27 DES(使用去掉这里:加减密DES).cs
----------- --------- ---------- ----- ----
8747 1
- 上一篇:unity3d 连接外置摄像头
- 下一篇:WPF视频教程csdn最全
相关资源
- C#开发资源库
- C#开发实例大全(基础卷/1.69G/光盘)
- c# 熵权法计算权重和算综合得分
- 页面置换算法LRU模拟c#
- c#时间片轮转算法
- c# yv12转换rgb
- 曼哈顿路径预测算法C#寻路
- 基于C#的波形显示控件的实现源码
- C# 斑马标签打印 WEB&WINFORM
- C# TCP服务器客户端通讯源码
- C#窗体小程序,实现文件夹创建、删除
- C#连接Oracle10g,11g,12g所需的DLL无需安
- C#Winform 销售管理系统
- 服务端获取DTU GPRS数据C#
-
Js to CSharp sc
ript converter - 测控课程设计ad转换程序
- Head First C#(第二版)中文版
- 简单的C#课程设计
- 基于讯飞的离线语音识别C#
- 基于C#的五点N次平滑算法
- c#上位机开发.txt
- 科达数据读取
- C#实现坐标转换
- c# socket 异步通信,一个服务器端和多
- 基于C#的实验室设备管理系统
- kepware c# demo
- C# u盘操作源代码
- AnimatedGifEncoder 类 c# 制作 gif 用到
- C# ECHART WPF 开发,非常漂亮的demo
- modbus协议的上位机
评论
共有 条评论