国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

一個對稱加密、解密的方法C#工具類

2019-11-17 03:12:35
字體:
來源:轉載
供稿:網友
一個對稱加密、解密的方法C#工具類
using System;using System.Collections.Generic;using System.Text;using System.IO;using System.Security.Cryptography;namespace CMD.EDI{    public class EncryptHandler    {        /// <summary>        /// 加密字符串        /// </summary>        public static string Encrypt(string passWord, string cleartext)        {            string password2 = "Ahbool";            string cipher;            char[] key = new char[8];            if (password.Length > 8)            {                password = password.Remove(8);            }            password.CopyTo(0, key, 0, password.Length);            char[] iv = new char[8];            if (password2.Length > 8)            {                password2 = password2.Remove(8);            }            password2.CopyTo(0, iv, 0, password2.Length);            if (cleartext == null)            {                return string.Empty;            }            SymmetricAlgorithm servicePRovider = new DESCryptoServiceProvider();            serviceProvider.Key = Encoding.ASCII.GetBytes(key);            serviceProvider.IV = Encoding.ASCII.GetBytes(iv);            MemoryStream memoryStream = new MemoryStream();            CryptoStream cryptoStream = new CryptoStream(memoryStream, serviceProvider.CreateEncryptor(), CryptoStreamMode.Write);            StreamWriter streamWriter = new StreamWriter(cryptoStream);            streamWriter.Write(cleartext);            streamWriter.Dispose();            cryptoStream.Dispose();            byte[] signData = memoryStream.ToArray();            memoryStream.Dispose();            serviceProvider.Clear();            cipher = Convert.ToBase64String(signData);            return cipher;        }        /// <summary>        /// 解密字符串        /// </summary>        public static string Decrypt(string password, string ciphertext)        {            string password2 = "Ahbool";            string cipher = string.Empty;            try            {                char[] key = new char[8];                if (password.Length > 8)                {                    password = password.Remove(8);                }                password.CopyTo(0, key, 0, password.Length);                char[] iv = new char[8];                if (password2.Length > 8)                {                    password2 = password2.Remove(8);                }                password2.CopyTo(0, iv, 0, password2.Length);                if (ciphertext == null)                {                    return cipher;                }                SymmetricAlgorithm serviceProvider = new DESCryptoServiceProvider();                serviceProvider.Key = Encoding.ASCII.GetBytes(key);                serviceProvider.IV = Encoding.ASCII.GetBytes(iv);                byte[] contentArray = Convert.FromBase64String(ciphertext);                MemoryStream memoryStream = new MemoryStream(contentArray);                CryptoStream cryptoStream = new CryptoStream(memoryStream, serviceProvider.CreateDecryptor(), CryptoStreamMode.Read);                StreamReader streamReader = new StreamReader(cryptoStream);                cipher = streamReader.ReadToEnd();                streamReader.Dispose();                cryptoStream.Dispose();                memoryStream.Dispose();                serviceProvider.Clear();            }            catch (Exception ex)            {                throw new SystemException("密鑰錯誤,數據包解密失敗.");            }            return cipher;        }    }}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 余干县| 吴堡县| 寿宁县| 云龙县| 隆林| 海兴县| 合肥市| 平凉市| 康平县| 周口市| 长子县| 抚宁县| 奈曼旗| 佳木斯市| 吉安县| 武安市| 西乡县| 宜章县| 闸北区| 台中县| 临邑县| 涞水县| 凤凰县| 玛纳斯县| 东港市| 临沭县| 栾川县| 永顺县| 泰顺县| 龙川县| 盈江县| 将乐县| 丹阳市| 平定县| 湛江市| 纳雍县| 和硕县| 吉木萨尔县| 渭南市| 大关县| 贵阳市|