[导读]这是什么加密?可以吃吗?今天的给大家分享的应该是BASE64、MD5、AES算法共同实现的吧,不过加密后体积会变大些
这是什么加密?可以吃吗?
今天的给大家分享的应该是BASE64、MD5、AES算法共同实现的吧,不过加密后体积会变大些,他不可以吃
一、概述
加密的流程大概就是酱紫的:
原文→BASE64编码
→AES加密 得到密文
密码→MD5加密
解密的流程大概是酱紫:
密码 → MD5加密
→ BASE64解密 得到原文
密文 → AES解密
二、编码
按照上面的流程,首先需要对原文进行BASE64编码:var bt = Encoding.你的编码格式.GetBytes(原文);
var base64Str = Convert.ToBase64String(bt);
接下来就到对密码进行MD5加密,因为AES加密需要32位密码,使用MD5正好可以满足这一条件。public class MD5
{
public static byte[] EncryptToMD5(string str)
{
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
byte[] str1 = System.Text.Encoding.UTF8.GetBytes(str);
byte[] str2 = md5.ComputeHash(str1, 0, str1.Length);
md5.Clear();
(md5 as IDisposable).Dispose();
return str2;
}
public static string EncryptToMD5string(string str)
{
byte[] bytHash = EncryptToMD5(str);
string sTemp = "";
for (int i = 0; i
{
sTem