java~和.net相通的DES-ECB加解密技术

本文介绍了在拥有.NET和Java开发环境的公司中,如何实现DES-ECB加解密技术的互通。文章讨论了.NET的实现方法,指出.NET与Java在加解密上的几个关键差异,并提供了Java实现互通加密过程的方案,特别提到了需要使用bcprov-jdk15on第三方包。
摘要由CSDN通过智能技术生成

起因

首先,对于一个公司,即有.net又有java开发来说,加解密是需要相互打通的,因为,根据莫非定律你迟早会有“.net加密让java解密“的情况。

.net实现

public static string Encrypt(SymmetricAlgorithm algorithm, string plaintext, string key)
  {
      TripleDESCryptoServiceProvider tripleDes = new TripleDESCryptoServiceProvider();
      MD5CryptoServiceProvider hashMD5 = new MD5CryptoServiceProvider();
      algorithm.Key = hashMD5.ComputeHash(ASCIIEncoding.ASCII.GetBytes(key));
      algorithm.Mode = CipherMode.ECB;
      Console.WriteLine("IV=" + Convert.ToBase64String(algorithm.IV));
      ICryptoTransform transformer = algorithm.CreateEncryptor();
      byte[] Buffer = ASCIIEncoding.ASCII.GetBytes(plaintext);
      byte[] result = transformer.TransformFinalBlock(Buffer, 0, Buffer.Length);
      return Convert.ToBase64String(result);
  }

.net和java的几个不同

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值