利用DotNET密码系统之一的DES对称加密算法保证数据安全

安全|加密|数据|算法

(亿众国际-008)[原创]利用DotNET密码系统保证数据安全

/////////////////////////////////////////////////////////////
//Author: stardicky //
//E-mail: stardicky@hotmail.com //
//QQNumber: 9531511 //
//CompanyName: Ezone International //
//Class: HBS-0308 //
//title: 利用DotNET密码系统保证数据安全 //
/////////////////////////////////////////////////////////////
//注:利用DotNET密码系统之一的DES对称加密算法保证数据安全 //
/////////////////////////////////////////////////////////////

using System;
using System.IO;
using System.Text;
using System.Security.Cryptography;

namespace EzoneInternationalSecurityCryptography
{
class EzoneSecurityCryptographyDemo
{

[STAThread]
public static void Main(string[] args)
{
//加密数据(从内存到文件)
EzoneEncryptorDemo();
//解密数据(从文件到内存)
EzoneDecryptorDemo();
}

/// <summary>
/// 加密
/// </summary>
public static void EzoneEncryptorDemo()
{
//创建一个文件对象,文件的模式是创建新文件,文件的访问权限是可写!
FileStream fs=new FileStream("EzoneDemo.txt",FileMode.Create,FileAccess.Write);
Console.WriteLine("请输入你想要进行加密的字符串:");
//输入你想要进行加密的字符串
string YourInput=Console.ReadLine();
//将字符串转换成字节
byte[] YourInputStorage=System.Text.Encoding.UTF8.GetBytes(YourInput);
//创建一个DES算法的加密类
DESCryptoServiceProvider MyServiceProvider=new DESCryptoServiceProvider();
//从DES算法的加密类对象的CreateEncryptor方法,创建一个加密转换接口对象
//第一个参数的含义是:对称算法的机密密钥(长度为64位,也就是8个字节)
// 可以人工输入,也可以随机生成方法是:MyServiceProvider.GenerateKey();
//第二个参数的含义是:对称算法的初始化向量(长度为64位,也就是8个字节)
// 可以人工输入,也可以随机生成方法是:MyServiceProvider.GenerateIV();
ICryptoTransform MyTransform=MyServiceProvider.CreateEncryptor(new byte[]{100,110,120,130,100,110,120,130},new byte[]{100,110,120,130,100,110,120,130});
//CryptoStream对象的作用是将数据流连接到加密转换的流
CryptoStream MyCryptoStream=new CryptoStream(fs,MyTransform,CryptoStreamMode.Write);
//将字节数组中的数据写入到加密流中
MyCryptoStream.Write(YourInputStorage,0,YourInputStorage.Length);
//关闭加密流对象
MyCryptoStream.Close();

}

/// <summary>
/// 解密
/// </summary>
public static void EzoneDecryptorDemo()
{
FileStream fs=new FileStream("EzoneDemo.txt",FileMode.Open,FileAccess.Read);
DESCryptoServiceProvider MyServiceProvider=new DESCryptoServiceProvider();
//从DES算法的加密类对象的CreateEncryptor方法,创建一个解密转换接口对象
//[对称算法的机密密钥]必须是加密时候的[对称算法的机密密钥]
//[对称算法的初始化向量]必须是加密时候的[对称算法的初始化向量]
//如果不一样,则会抛出一个异常。
ICryptoTransform MyTransform=MyServiceProvider.CreateDecryptor(new byte[]{100,110,120,130,100,110,120,130},new byte[]{100,110,120,130,100,110,120,130});
CryptoStream MyCryptoStream=new CryptoStream(fs,MyTransform,CryptoStreamMode.Read);
byte[] YourInputStorage=new byte[1000];
int len=MyCryptoStream.Read(YourInputStorage,0,YourInputStorage.Length);
Console.WriteLine("你刚才输入的字符串是:");
Console.WriteLine(System.Text.Encoding.UTF8.GetString(YourInputStorage,0,len));
}

}
}

时间: 2025-01-07 16:46:30

利用DotNET密码系统之一的DES对称加密算法保证数据安全的相关文章

对称加密算法-DES以及DESede算法

一.简述   对称加密算法就是能将数据加解密.加密的时候用密钥对数据进行加密,解密的时候使用同样的密钥对数据进行解密.   DES是美国国家标准研究所提出的算法.因为加解密的数据安全性和密钥长度成正比.des的56位的密钥已经形成安全隐患,在1998年之后就很少被采用.但是一些老旧的系统还在使用.因为这个des算法并没有被美国标准委员会公布全部算法,大家一致怀疑被留了后门.所以慢慢就被淘汰掉了.   后来针对des算法进行了改进,有了三重des算法(DESede).针对des算法的密钥长度较短以

对称加密(2) 对称加密算法

经典的对称加密算法是DES算法,后来又衍生出3DES.TripleDES等增强型的DES算法.此外,.NET还提供了RC2.Rijndael等对称加密算法.下面分别详细介绍. DES加密算法 对称加密算法中最经典的算法莫过于DES加密算法.DES加密采用的是分组加密的方法,使用56位密钥加密64位明文,最后产生64位密文.DES算法的基本流程如图6-2所示. 图6-2  DES加密算法基本流程 现在对图6-2的整个流程做简要的分析.DES对64位的明文分组M进行操作,M经过一个初始置换IP置换成

对称加密算法-AES算法(高级数据加密标准)

一.简述   DES的不安全性以及DESede算法的低效,催生了这个AES算法(advanced Encryption Standard).这个算法比DES要快,安全性高.密钥建立时间段.灵敏性好.内存需求低.在各个领域应用广泛.目前,AES通常用于移动通信系统以及一些软件的安全外壳.还有一些无线路由器中也是用AES算法构建加密协议 二.AES算法的概要说明   算法 密钥长度 密钥长度默认值 工作模式 填充方式 备注 AES 128/192/256 128 ECB/CBC/PCBC/CTR/C

对称加密算法-PBE算法

一.简述   PBE算法(Password Base Encryption,基于口令加密)算法是一种基于口令的加密算法.特点在于口令由用户自己掌握,采用随机数(我们这里叫做 盐)杂凑多重加密等方法保证数据的安全性.   PBE算法没有密钥的概念,把口令当做密钥了.因为密钥长短影响算法安全性,还不方便记忆,这里我们直接换成我们自己常用的口令就大大不同了,便于我们的记忆.但是单纯的口令很容易被字典法给穷举出来,所以我们这里给口令加了点"盐",这个盐和口令组合,想破解就难了. 同时我们将盐和

【&amp;amp;#9733;】RSA-什么是不对称加密算法?

不对称加密算法RSA浅析        本文主要介绍不对称加密算法中最精炼的RSA算法.我们先说结论,也就是RSA算法怎么算,然后再讲为什么.        随便选取两个不同的大素数p和q,N=p*q,r=(p-1)*(q-1).        算出一组(e,d)满足e*d≡1(mod r).        设明文x,密文y,x和y都小于N:        加密:xe ≡ y (mod N):解密:yd ≡ x (mod N).        以前也接触过RSA加密算法,感觉这个东西太神秘了,是

对称加密算法-IDEA算法

一.简述   在寻找DES算法替代品的同时.在AES算法征集以前,IDEA作者就独辟蹊径的提出了这个算法.这个算法很强,想破解出来按照当前的计算水准需要10的13次方年.   在美国之外提出并发展,避开法律限制.这个限制被最多应用在邮件加密.电子邮件加密软件PGP使用的就是IDEA的商业版权.   java6没提供实现.Bouncy Castle提供了实现   二.算法相关配置说明   算法 密钥长度 密钥长度默认值 工作模式 填充方式 备注 IDEA 128 128 ECB PKCS5Padd

这是一个非常有趣的例子!(DotNET密码系统)

(亿众国际-009)[原创]这是一个非常有趣的例子!///////////////////////////////////////////////////////////////Author: stardicky ////E-mail: stardicky@hotmail.com ////QQNumber: 9531511 ////Company: Ezone International ////Class: HBS-0308 ////title: 利用密码系统保证数据安全 //////////

php对称加密算法示例_php实例

php对称加密算法 KEY 是之前定义的常量 复制代码 代码如下: Mcrypt::encrypt();Mcrypt::decrypt(); 复制代码 代码如下: defined('ROOT') or exit('Access Denied'); class Mcrypt{  public static function encrypt($code){  return base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5(KEY), $cod

【&amp;#9733;】RSA-什么是不对称加密算法?

不对称加密算法RSA浅析        本文主要介绍不对称加密算法中最精炼的RSA算法.我们先说结论,也就是RSA算法怎么算,然后再讲为什么.        随便选取两个不同的大素数p和q,N=p*q,r=(p-1)*(q-1).        算出一组(e,d)满足e*d≡1(mod r).        设明文x,密文y,x和y都小于N:        加密:xe ≡ y (mod N):解密:yd ≡ x (mod N).        以前也接触过RSA加密算法,感觉这个东西太神秘了,是