基本信息
源码名称:C# DES 加密解密 示例源码
源码大小:6.95KB
文件格式:.rar
开发语言:C#
更新时间:2018-04-27
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559

本次赞助数额为: 2 元 
   源码介绍
初级学习


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Security.Cryptography;
using System.Text;
using System.IO;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("请输入需要加密的字符串:");
            string str = Console.ReadLine();
            string strEncrypt = DESEncrypt.DesEncrypt(str);
            string strDecrypt = DESEncrypt.DesDecrypt(strEncrypt);

            Console.WriteLine(strEncrypt);
            Console.WriteLine(strDecrypt);
            System.IO.StreamWriter sw = new System.IO.StreamWriter("加密.txt");
            sw.WriteLine(strEncrypt);
            sw.WriteLine(strDecrypt);
            sw.Close();
            Console.Write("按任意键退出...");
            Console.ReadKey(true);
        }
    }
    /**//// <summary> 
    /// DESEncrypt加密解密算法。 
    /// </summary> 
    public sealed class DESEncrypt 
    { 
        private DESEncrypt() 
        { 
            // 
            // TODO: 在此处添加构造函数逻辑 
            // 
        } 
 
        private static string key = "Glodonxx"; 
 
        /**//// <summary> 
        /// 对称加密解密的密钥 
        /// </summary> 
        public static string Key 
        {
            get
            {
                return key;
            }
            set
            {
                key = value;
            } 
        } 
 
        /**//// <summary> 
        /// DES加密 
        /// </summary> 
        /// <param name="encryptString"></param> 
        /// <returns></returns> 
        public static string DesEncrypt(string encryptString) 
        { 
            byte[] keyBytes = Encoding.UTF8.GetBytes(key.Substring(0, 8)); 
            byte[] keyIV = keyBytes; 
            byte[] inputByteArray = Encoding.UTF8.GetBytes(encryptString); 
            DESCryptoServiceProvider provider = new DESCryptoServiceProvider(); 
            MemoryStream mStream = new MemoryStream(); 
            CryptoStream cStream = new CryptoStream(mStream, provider.CreateEncryptor(keyBytes, keyIV), CryptoStreamMode.Write); 
            cStream.Write(inputByteArray, 0, inputByteArray.Length); 
            cStream.FlushFinalBlock(); 
            return Convert.ToBase64String(mStream.ToArray()); 
        } 
 
        /**//// <summary> 
        /// DES解密 
        /// </summary> 
        /// <param name="decryptString"></param> 
        /// <returns></returns> 
        public static string DesDecrypt(string decryptString) 
        {
            byte[] keyBytes = Encoding.UTF8.GetBytes(key.Substring(0, 8));
            byte[] keyIV = keyBytes;
            byte[] inputByteArray = Convert.FromBase64String(decryptString);
            DESCryptoServiceProvider provider = new DESCryptoServiceProvider();
            MemoryStream mStream = new MemoryStream();
            CryptoStream cStream = new CryptoStream(mStream, provider.CreateDecryptor(keyBytes, keyIV), CryptoStreamMode.Write);
            cStream.Write(inputByteArray, 0, inputByteArray.Length);
            cStream.FlushFinalBlock();
            return Encoding.UTF8.GetString(mStream.ToArray()); 
        } 
    } 
}