时间:2021-05-28
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Security.Cryptography;
usingSystem.IO;
namespaceWindowsFormsApplication1
{
#regionTripleDES算法
publicclassClassTripleDES
{
publicClassTripleDES()
{
}
//加密,使用密码产生加密算法的公钥,并使用TripleDES对密码进行加密。
publicstaticstringEncrypt(stringpass)
{
try
{
byte[]bt=(newSystem.Text.UnicodeEncoding()).GetBytes(pass);
PasswordDeriveBytespdb=newPasswordDeriveBytes(pass,null);
byte[]key=pdb.GetBytes(24);
byte[]iv=pdb.GetBytes(8);
MemoryStreamms=newMemoryStream();
TripleDESCryptoServiceProvidertdesc=newTripleDESCryptoServiceProvider();
CryptoStreamcs=newCryptoStream(ms,tdesc.CreateEncryptor(key,iv),CryptoStreamMode.Write);
cs.Write(bt,0,bt.Length);
cs.FlushFinalBlock();
returnConvert.ToBase64String(ms.ToArray());
}
catch(Exceptionex)
{
throwex;
}
}
//解密,使用密码产生加密算法的公钥,并使用TripleDES对加密数据进行解密。
publicstaticstringDecrypt(stringstr,stringpass)
{
try
{
byte[]bt=Convert.FromBase64String(str);
PasswordDeriveBytespdb=newPasswordDeriveBytes(pass,null);
byte[]key=pdb.GetBytes(24);
byte[]iv=pdb.GetBytes(8);
MemoryStreamms=newMemoryStream();
TripleDESCryptoServiceProvidertdesc=newTripleDESCryptoServiceProvider();
CryptoStreamcs=newCryptoStream(ms,tdesc.CreateDecryptor(key,iv),CryptoStreamMode.Write);
cs.Write(bt,0,bt.Length);
cs.FlushFinalBlock();
return(newSystem.Text.UnicodeEncoding()).GetString(ms.ToArray());
}
catch(Exceptionex)
{
throwex;
}
}
//使用:
//stringstr=Encrypt("bbb");
//Console.WriteLine(Decrypt(str,"bbb"));
//加密,使用密码产生加密算法的公钥,并使用TripleDES对密码进行加密。
publicstaticstringEncryptWithKey(stringpass,stringp_key)
{
try
{
byte[]bt=(newSystem.Text.UnicodeEncoding()).GetBytes(pass);
PasswordDeriveBytespdb=newPasswordDeriveBytes(p_key,null);
byte[]key=pdb.GetBytes(24);
byte[]iv=pdb.GetBytes(8);
MemoryStreamms=newMemoryStream();
TripleDESCryptoServiceProvidertdesc=newTripleDESCryptoServiceProvider();
CryptoStreamcs=newCryptoStream(ms,tdesc.CreateEncryptor(key,iv),CryptoStreamMode.Write);
cs.Write(bt,0,bt.Length);
cs.FlushFinalBlock();
returnConvert.ToBase64String(ms.ToArray());
}
catch(Exceptionex)
{
throwex;
}
}
//解密,使用密码产生加密算法的公钥,并使用TripleDES对加密数据进行解密。
publicstaticstringDecryptWithKey(stringstr,stringp_key)
{
try
{
byte[]bt=Convert.FromBase64String(str);
PasswordDeriveBytespdb=newPasswordDeriveBytes(p_key,null);
byte[]key=pdb.GetBytes(24);
byte[]iv=pdb.GetBytes(8);
MemoryStreamms=newMemoryStream();
TripleDESCryptoServiceProvidertdesc=newTripleDESCryptoServiceProvider();
CryptoStreamcs=newCryptoStream(ms,tdesc.CreateDecryptor(key,iv),CryptoStreamMode.Write);
cs.Write(bt,0,bt.Length);
cs.FlushFinalBlock();
return(newSystem.Text.UnicodeEncoding()).GetString(ms.ToArray());
}
catch(Exceptionex)
{
throwex;
}
}
}
#endregion
}
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Asp.Net加密解密的方法如下: #regionDES加密解密//////DES加密//////待加密字串///32位Key值///加密后的字符串pub
本文实例讲述了asp.net实现的MD5加密和DES加解密算法类。分享给大家供大家参考,具体如下:#regionMD5算法publicstringmd5(str
在一些项目中要求在php中生成加密,然后在asp.net中接受过来的密码再解密,下面和大家分享一个PHP与asp.netC#可共用的可逆加密算法,感兴趣的可以参
其实在ASP.Net编程中,不用调用md5.asp来加密数据。在DotNet中有自带的类: System.Web.Security.HashPasswor
当要进行MD5加密的字符串不含中文时,那么ASP.NET的加密结果和ASP是一致的:复制代码代码如下:Response.Write(FormsAuthentic