// java格式化16进制输出
public static void formatIntTo16(byte[] bytes) {
String[] resultBytes = new String[bytes.length];
for (int i = 0; i < bytes.length; i++) {
resultBytes[i] = Integer.toHexString(bytes[i] & 0xFF);
}
}
//MD5加密
public static String md5Encode(String strContent) {
try {
MessageDigest messageDigest = MessageDigest.getInstance("MD5");
byte[] tempBytes = messageDigest.digest(strContent.getBytes("UnicodeLittleUnmarked"));
StringBuffer stringBuffer = new StringBuffer();
for(byte bytes: tempBytes) {
String tempByte = Integer.toHexString(bytes & 0xFF);
if(tempByte.length() == 1) {
stringBuffer.append("0");
}
stringBuffer.append(tempByte);
}
return stringBuffer.toString();
} catch(Exception e) {
e.printStackTrace();
}
return null;
}
- // 3DES加密 基方法
- public static byte[] des3EncodeCBC(byte[] data, byte[] key) throws Exception {
- Key deskey = null;
- DESedeKeySpec spec = new DESedeKeySpec(key);
- SecretKeyFactory keyfactory = SecretKeyFactory.getInstance("desede");
- deskey = keyfactory.generateSecret(spec);
- Cipher cipher = Cipher.getInstance("desede" + "/CBC/PKCS5Padding");
- IvParameterSpec ips = new IvParameterSpec(IV);
- cipher.init(Cipher.ENCRYPT_MODE, deskey, ips);
- return cipher.doFinal(data, 0, data.length);
- }
- // 3DES 解密 基方法
- public static byte[] des3DecodeCBC(byte[] data, byte[] key) throws Exception {
- Key deskey = null;
- DESedeKeySpec spec = new DESedeKeySpec(key);
- SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("desede");
- deskey = keyFactory.generateSecret(spec);
- Cipher cipher = Cipher.getInstance("desede" + "/CBC/PKCS5Padding");
- IvParameterSpec ips = new IvParameterSpec(IV);
- cipher.init(Cipher.DECRYPT_MODE, deskey, ips);
- return cipher.doFinal(data, 0, data.length);
- }
- //DES加密
- public static String encode(byte[] key, byte[] iv, byte[] data) throws Exception {
- Key deskey = null;
- DESKeySpec spec = new DESKeySpec(key);
- SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
- deskey = keyFactory.generateSecret(spec);
- IvParameterSpec ips = new IvParameterSpec(iv);
- Cipher cipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
- cipher.init(Cipher.ENCRYPT_MODE, deskey, ips);
- return new BASE64Encoder().encode(cipher.doFinal(data, 0, data.length));
- }