用C#实现DES加密解密封装

using System;
using System.Security.Cryptography;
using System.Text;
using System.IO;

namespace Common
... {
/**////<summary>
///DESEncrypt加密解密算法。
///</summary>

publicsealedclassDESEncrypt
...{
privateDESEncrypt()
...{
//
//TODO:在此处添加构造函数逻辑
//
}


privatestaticstringkey="zhoufoxcn";

/**////<summary>
///对称加密解密的密钥
///</summary>

publicstaticstringKey
...{
get
...{
returnkey;
}

set
...{
key
=value;
}

}


/**////<summary>
///DES加密
///</summary>
///<paramname="encryptString"></param>
///<returns></returns>

publicstaticstringDesEncrypt(stringencryptString)
...{
byte[]keyBytes=Encoding.UTF8.GetBytes(key.Substring(0,8));
byte[]keyIV=keyBytes;
byte[]inputByteArray=Encoding.UTF8.GetBytes(encryptString);
DESCryptoServiceProviderprovider
=newDESCryptoServiceProvider();
MemoryStreammStream
=newMemoryStream();
CryptoStreamcStream
=newCryptoStream(mStream,provider.CreateEncryptor(keyBytes,keyIV),CryptoStreamMode.Write);
cStream.Write(inputByteArray,
0,inputByteArray.Length);
cStream.FlushFinalBlock();
returnConvert.ToBase64String(mStream.ToArray());
}


/**////<summary>
///DES解密
///</summary>
///<paramname="decryptString"></param>
///<returns></returns>

publicstaticstringDesDecrypt(stringdecryptString)
...{
byte[]keyBytes=Encoding.UTF8.GetBytes(key.Substring(0,8));
byte[]keyIV=keyBytes;
byte[]inputByteArray=Convert.FromBase64String(decryptString);
DESCryptoServiceProviderprovider
=newDESCryptoServiceProvider();
MemoryStreammStream
=newMemoryStream();
CryptoStreamcStream
=newCryptoStream(mStream,provider.CreateDecryptor(keyBytes,keyIV),CryptoStreamMode.Write);
cStream.Write(inputByteArray,
0,inputByteArray.Length);
cStream.FlushFinalBlock();
returnEncoding.UTF8.GetString(mStream.ToArray());
}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值