日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

C#的3DES加密解密算法

發(fā)布時間:2023/12/15 综合教程 27 生活家
生活随笔 收集整理的這篇文章主要介紹了 C#的3DES加密解密算法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

C#類如下:
using System;
using System.Collections.Generic;
using System.Text;
using System.Security.Cryptography;
using System.IO;

namespace ConsoleApplication1
{
    /// <summary>
    /// 加解密類
    /// </summary>
    public class EncryptHelper
    {
        

        //構(gòu)造一個對稱算法
        private SymmetricAlgorithm mCSP = new TripleDESCryptoServiceProvider();

        #region 加密解密函數(shù)

        /// <summary>
        /// 字符串的加密
        /// </summary>
        /// <param name="Value">要加密的字符串</param>
        /// <param name="sKey">密鑰,必須32位</param>
        /// <param name="sIV">向量,必須是12個字符</param>
        /// <returns>加密后的字符串</returns>
        public string EncryptString(string Value, string sKey,string sIV)
        {
            try
            {
                ICryptoTransform ct;
                MemoryStream ms;
                CryptoStream cs;
                byte[] byt;
                mCSP.Key = Convert.FromBase64String(sKey);
                mCSP.IV = Convert.FromBase64String(sIV);
                //指定加密的運算模式
                mCSP.Mode = System.Security.Cryptography.CipherMode.ECB;
                //獲取或設(shè)置加密算法的填充模式
                mCSP.Padding = System.Security.Cryptography.PaddingMode.PKCS7;
                ct = mCSP.CreateEncryptor(mCSP.Key, mCSP.IV);//創(chuàng)建加密對象
                byt = Encoding.UTF8.GetBytes(Value);
                ms = new MemoryStream();
                cs = new CryptoStream(ms, ct, CryptoStreamMode.Write);
                cs.Write(byt, 0, byt.Length);
                cs.FlushFinalBlock();
                cs.Close();

                return Convert.ToBase64String(ms.ToArray());
            }
            catch (Exception ex)
            {
                //MessageBox.Show(ex.Message, "出現(xiàn)異常", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return ("Error in Encrypting " + ex.Message);
            }
        }

        /// <summary>
        /// 解密字符串
        /// </summary>
        /// <param name="Value">加密后的字符串</param>
        /// <param name="sKey">密鑰,必須32位</param>
        /// <param name="sIV">向量,必須是12個字符</param>
        /// <returns>解密后的字符串</returns>
        public string DecryptString(string Value, string sKey, string sIV)
        {
            try
            {
                ICryptoTransform ct;//加密轉(zhuǎn)換運算
                MemoryStream ms;//內(nèi)存流
                CryptoStream cs;//數(shù)據(jù)流連接到數(shù)據(jù)加密轉(zhuǎn)換的流
                byte[] byt;
                //將3DES的密鑰轉(zhuǎn)換成byte
                mCSP.Key = Convert.FromBase64String(sKey);
                //將3DES的向量轉(zhuǎn)換成byte
                mCSP.IV = Convert.FromBase64String(sIV);
                mCSP.Mode = System.Security.Cryptography.CipherMode.ECB;
                mCSP.Padding = System.Security.Cryptography.PaddingMode.PKCS7;
                ct = mCSP.CreateDecryptor(mCSP.Key, mCSP.IV);//創(chuàng)建對稱解密對象
                byt = Convert.FromBase64String(Value);
                ms = new MemoryStream();
                cs = new CryptoStream(ms, ct, CryptoStreamMode.Write);
                cs.Write(byt, 0, byt.Length);
                cs.FlushFinalBlock();
                cs.Close();

                return Encoding.UTF8.GetString(ms.ToArray());
            }
            catch (Exception ex)
            {
                //MessageBox.Show(ex.Message, "出現(xiàn)異常", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return ("Error in Decrypting " + ex.Message);
            }
        }

        #endregion
    }
}
調(diào)用方法如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            EncryptHelper helper = new EncryptHelper();

            //加密
            string oldValue = "13800138000";
            //加密后結(jié)果
            //密鑰,必須32位
            string sKey = "qJzGEh6hESZDVJeCnFPGuxzaiB7NLQM5";
            //向量,必須是12個字符
            string sIV = "andyliu1234=";
            //print
            string newValue =  helper.EncryptString(oldValue,sKey,sIV);
            Console.WriteLine("加密后:"+ newValue);
            //解密
            string desValue = helper.DecryptString(newValue,sKey,sIV);
            //
            Console.WriteLine("解密后:"+ desValue);
            Console.ReadLine();

        }
    }
}

總結(jié)

以上是生活随笔為你收集整理的C#的3DES加密解密算法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 激情欧美一区二区三区 | 日本欧美一级片 | 18做爰免费视频网站 | 97国产精东麻豆人妻电影 | 性做久久久 | 国产又粗又黄 | 无码任你躁久久久久久久 | 国产明星换脸xxxx色视频 | 一区二区手机在线 | 羽月希奶水一区二区三区 | 中文有码视频 | 亚洲精品国产精品国自产观看浪潮 | 日本一区二区成人 | 成人免费xxxxxx视频 | 日本老年老熟无码 | xxxx黄色片| 中文字幕国产亚洲 | 特级西西人体444www高清大胆 | 精品无码av一区二区三区 | 色图18p | 免费在线观看成人 | 欧美人体做爰大胆视频 | 在线亚洲不卡 | 日韩三级国产精品 | 玖玖玖精品 | 久久久美女 | 成人福利视频在线 | 午夜视频h | 色偷偷av一区二区三区 | 国产精品美女毛片真酒店 | 免费操片 | 三级全黄的视频 | 黄色一级影片 | 国产美女福利 | 人妻少妇精品中文字幕av蜜桃 | 午夜青青草 | 日韩第四页| 一级视频在线免费观看 | 成人午夜影视 | 无码日韩精品视频 | 俺也去五月婷婷 | 亚色91 | 青青青草视频在线 | 在线看黄网站 | 欧美人xxxx | 强行糟蹋人妻hd中文字幕 | 日韩h视频| 又粗又猛又爽又黄的视频 | 国产在线天堂 | 久久老熟女一区二区三区 | 在线观看日本视频 | 91精品综合久久 | 丰满少妇麻豆av苏语棠 | 艳母在线视频 | 人妻少妇无码精品视频区 | 黄色片视频免费看 | 91视频合集 | 欧美理伦| 黑人玩弄人妻一区二 | 中文字幕一区二区三区日韩精品 | 欧美一级少妇 | 国产少妇自拍 | 国产免费aa| 日本午夜网站 | 久久国产精品一区二区三区 | 免费欧美在线 | 小毛片在线观看 | 久久精品美乳 | 亚洲成人免费观看 | 日韩久久久久久久 | 色妻av | 国产美女喷水 | 国产三级按摩推拿按摩 | 中文字幕乱码一区二区 | 女人免费视频 | 欧洲自拍一区 | 福利视频一区二区三区 | 欧美日韩一区二区三区国产精品成人 | 911国产视频| 99视频99 | xxxxxx国产| 俄罗斯黄色录像 | 国产高清色 | 欧美在线色| 日韩一级av毛片 | 粉嫩av网站 | 日韩在线观看中文字幕 | 欧美99久久精品乱码影视 | 欧美中文字幕 | www.欧美一区二区三区 | 欧美做受喷浆在线观看 | 性色视频网站 | 日韩欧美一二三四区 | 秋霞黄色片 | 日本久久久久久久久久 | 国产伦精品 | 丝袜在线一区 | 欧美用舌头去添高潮 | 91久久综合|