资源简介

des加解密,DES / EBC / ZEROBYTEPADDING,测试没有问题

资源截图

代码片段和文件信息

package com.demo;

/ **  
* @软件着作权:
* @项目名称:
* @作者:  
* @复核人:
* @时间   
* / 



import java.security.Key; 
import java.security.SecureRandom; 
import java.security.spec.AlgorithmParameterSpec; 
import java.util.Locale; 


import javax.crypto.Cipher; 
import javax.crypto.SecretKeyFactory; 
import javax.crypto.spec.DESKeySpec; 
import javax.crypto.spec.IvParameterSpec; 




/ ** 
 * @Description:DES加解密
 * / 
public class DesCryptTool { 
public static void main(String args [])throws Exception { 
DesCryptTool CryptTool = new DesCryptTool(); 
String key = CryptTool.createkey(“ASDFGHJK”); 
String data =“k56jklasdfsdf”;
//System.out.println(“源数据:” +数据); 
String data1 = CryptTool.desEncrypt(data,key); 
System.out.println(“加密后:”+ data1); 
String data2 = CryptTool.desDecrypt(data1,key); 
System.out.println(“解密后:”+ data2); 



/ ** 

@throws Exception * @Description:DES加密  
* @param datasource  
* @param srckey  
* @return String返回类型
* / 
public String desEncrypt(String datasource,Key key)throws Exception { 
try { 
//获取随机数据源
SecureRandom secureRandom = new SecureRandom(); 
// Cipher对象实际完成加密操作


Cipher cipher = Cipher.getInstance(“DES / EBC / ZEROBYTEPADDING”); 
IvParameterSpec iv = new IvParameterSpec(“12345678”.getBytes());
AlgorithmParameterSpec paramSpec = iv; 
//秘密用
初始化密码对象cipher.init(Cipher.ENCRYPT_MODE,键,paramSpec中); 
//数据加密
byte [] bytes = cipher.doFinal(datasource.getBytes()); 
return byte2hex(bytes); 
} catch(Exception e){ 
throw new Exception(‘错误码‘,“DES加密错误”,e); 




/ ** 
* @描述:DES解密  
* @参数数据源
* @参数srckey  
* @throws异常  
* @返回字节[]返回类型
* / 
public static String desDecrypt(String datasource,Key key)throw Exception{ 
byte[] cipherByte = null; 
//获取随机数据源
// SecureRandom secureR

评论

共有 条评论