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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

对称加密(DES)

發(fā)布時(shí)間:2023/12/20 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 对称加密(DES) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

using?System;
using?System.Collections.Generic;
using?System.Text;
using?System.Security.Cryptography;
using?System.IO;

namespace?Component
{
????
public?class?Security
????
{
????????
public?Security()
????????
{?
????????
????????}


????????
//默認(rèn)密鑰向量
????????private?static?byte[]?Keys?=?{?0x12,?0x34,?0x56,?0x78,?0x90,?0xAB,?0xCD,?0xEF?};
????????
/**//**//**////?<summary>
????????
///?DES加密字符串
????????
///?</summary>
????????
///?<param?name="encryptString">待加密的字符串</param>
????????
///?<param?name="encryptKey">加密密鑰,要求為8位</param>
????????
///?<returns>加密成功返回加密后的字符串,失敗返回源串</returns>

????????public?static?string?EncryptDES(string?encryptString,?string?encryptKey)
????????
{
????????????
try
????????????
{
????????????????
byte[]?rgbKey?=?Encoding.UTF8.GetBytes(encryptKey.Substring(0,?8));
????????????????
byte[]?rgbIV?=?Keys;
????????????????
byte[]?inputByteArray?=?Encoding.UTF8.GetBytes(encryptString);
????????????????DESCryptoServiceProvider?dCSP?
=?new?DESCryptoServiceProvider();
????????????????MemoryStream?mStream?
=?new?MemoryStream();
????????????????CryptoStream?cStream?
=?new?CryptoStream(mStream,?dCSP.CreateEncryptor(rgbKey,?rgbIV),?CryptoStreamMode.Write);
????????????????cStream.Write(inputByteArray,?
0,?inputByteArray.Length);
????????????????cStream.FlushFinalBlock();
????????????????
return?Convert.ToBase64String(mStream.ToArray());
????????????}

????????????
catch
????????????
{
????????????????
return?encryptString;
????????????}

????????}


????????
/**//**//**////?<summary>
????????
///?DES解密字符串
????????
///?</summary>
????????
///?<param?name="decryptString">待解密的字符串</param>
????????
///?<param?name="decryptKey">解密密鑰,要求為8位,和加密密鑰相同</param>
????????
///?<returns>解密成功返回解密后的字符串,失敗返源串</returns>

????????public?static?string?DecryptDES(string?decryptString,?string?decryptKey)
????????
{
????????????
try
????????????
{
????????????????
byte[]?rgbKey?=?Encoding.UTF8.GetBytes(decryptKey);
????????????????
byte[]?rgbIV?=?Keys;
????????????????
byte[]?inputByteArray?=?Convert.FromBase64String(decryptString);
????????????????DESCryptoServiceProvider?DCSP?
=?new?DESCryptoServiceProvider();
????????????????MemoryStream?mStream?
=?new?MemoryStream();
????????????????CryptoStream?cStream?
=?new?CryptoStream(mStream,?DCSP.CreateDecryptor(rgbKey,?rgbIV),?CryptoStreamMode.Write);
????????????????cStream.Write(inputByteArray,?
0,?inputByteArray.Length);
????????????????cStream.FlushFinalBlock();
????????????????
return?Encoding.UTF8.GetString(mStream.ToArray());
????????????}

????????????
catch
????????????
{
????????????????
return?decryptString;
????????????}

????????}
?


????}

}

轉(zhuǎn)載于:https://www.cnblogs.com/weixu/archive/2007/08/21/864342.html

總結(jié)

以上是生活随笔為你收集整理的对称加密(DES)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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