java .net des_Java与.NET DES加密解密互转

usingSystem;usingSystem.Data;usingSystem.Configuration;usingSystem.Web;usingSystem.Web.Security;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;usingSystem.Web.UI.WebControls.WebParts;usingSystem.Web.UI.HtmlControls;usingSystem.Data.SqlClient;usingSystem.Security.Cryptography;usingSystem.IO;usingSystem.Text;public classTestDes{//cookies加密密钥

public static string DES_Key = "12345678";#region DESEnCode DES加密

public static string DESEnCode(string pToEncrypt, stringsKey)

{

pToEncrypt=HttpContext.Current.Server.UrlEncode(pToEncrypt);

DESCryptoServiceProvider des= newDESCryptoServiceProvider();byte[] inputByteArray = Encoding.GetEncoding("UTF-8").GetBytes(pToEncrypt);

des.Key=ASCIIEncoding.ASCII.GetBytes(sKey);

des.IV=ASCIIEncoding.ASCII.GetBytes(sKey);

MemoryStream ms= newMemoryStream();

CryptoStream cs= newCryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write);

cs.Write(inputByteArray,0, inputByteArray.Length);

cs.FlushFinalBlock();

StringBuilder ret= newStringBuilder();foreach (byte b inms.ToArray())

{

ret.AppendFormat("{0:X2}", b);

}

ret.ToString();returnret.ToString();

}#endregion

#region DESDeCode DES解密

public static string DESDeCode(string pToDecrypt, stringsKey)

{//HttpContext.Current.Response.Write(pToDecrypt + "
" + sKey);//HttpContext.Current.Response.End();

DESCryptoServiceProvider des = newDESCryptoServiceProvider();byte[] inputByteArray = new byte[pToDecrypt.Length / 2];for (int x = 0; x < pToDecrypt.Length / 2; x++)

{int i = (Convert.ToInt32(pToDecrypt.Substring(x * 2, 2), 16));

inputByteArray[x]= (byte)i;

}

des.Key=ASCIIEncoding.ASCII.GetBytes(sKey);

des.IV=ASCIIEncoding.ASCII.GetBytes(sKey);

MemoryStream ms= newMemoryStream();

CryptoStream cs= newCryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write);

cs.Write(inputByteArray,0, inputByteArray.Length);

cs.FlushFinalBlock();

StringBuilder ret= newStringBuilder();returnHttpContext.Current.Server.UrlDecode(System.Text.Encoding.Default.GetString(ms.ToArray()));

}#endregion

publicTestDes()

{//

//TODO: 在此处添加构造函数逻辑//

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值