如何用Java进行3DES加密解密 java实现3des加密解密教程
3des,全称为3DESede或TripleDES,中文解释为是三重数据加密,用户可以通过通过对DES算法进行改进,针对每个数据块进行三次DES加密,下面小编为你带来java实现3des加密解密教程!
首先我们需要自行安装配置java环境,并安装编写代码软件myeclipse2014。安装完成后,打开软件并点击导航处的File菜单,然后选择New,然后选择Java Project,进入创建java项目窗口。具体操作如下图所示。
然后在创建项目窗口,我们输入项目名称:3DESJDKUtil,然后选择JRE环境,本篇我们选择为JDK7,选择完毕后点击Finish,完成java项目的创建。具体操作如下图所示。
然后打开项目,在项目src上右击,选择New,然后选择Class,进入实体类创建窗口。具体操作如下图所示。
在实体类创建窗口,首先我们填写包名称,包名称为:com.util,然后填写类名称,类名称为:ThreeDESUtil,然后勾选自动生成main方法。以上操作完毕后,我们点击Finish完成实体类的创建。具体操作如下图所示。
由于本项目内会用到一其他方法,我们首先编写将byte数组转化为16进制字符串的方法,此方法主要便于查看加密后的结果信息。本篇中方法名称为:convertByteToHexString,需要传入参数为byte数组,返回为String类型,具体实现如下图所示。
然后我们编写生成密钥的方法,3DES要求字节数组的密钥长度为24位,本篇中我们编写方法名称为:build3DesKey,传入参数为我们设定的密钥字符串,返回信息为长度为24为的字节数组。具体代码实现如下图所示。
然后我们编写加密方法,加密方法主要利用了Cipher类,本篇中方法名称为:ThreeDESEconde,返回结果为加密后的byte数组。具体代码实现如下图代码所示。
然后我们编写解密方法,解密方法同加密方法一样同样使用了Cipher类。本篇中方法名称为:ThreeDESDecode,返回结果为解密后的byte数组。
最后我们在主函数内,编写测试写好的加密/解密方法。我们首先定义原始消息为:hello 3des,定义密钥为:12312312312312312312312312312312。然后分别调用加密/解密方法。并且输出加密后以及解密后的结果信息。具体实现如下图所示。
然后我们运行程度,可以看到原始消息经过加密解密后,仍还原为原始消息,至此3DES加密/解密基本教程完成。