zoukankan      html  css  js  c++  java
  • 利用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));
    }

    }
    }
  • 相关阅读:
    :::宁夏汇川服装有限公司:::
    Zzgen@2015
    新中装
    柯桥有了高级西服定制机构上万元的西服已订出10多套(图)_网易新闻中心
    联系方式-北京美达琳服装有限责任公司
    THOMAS MASON--英国顶级衬衫面料品牌
    tessilstrona
    古特曼上海
    老舍茶馆|北京老舍茶馆|老舍茶馆门票|老舍茶馆官方网站
    SANSA 上上洛可可 贾伟作品 高山流水 香炉 香插香台香具 高端商务礼品 黑色【正品 价格 图片 折扣 评论】_尚品网ShangPin.com
  • 原文地址:https://www.cnblogs.com/studio313/p/266562.html
Copyright © 2011-2022 走看看