📄 des.java
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space
// Source File Name: DES.java
package carven;
import com.sun.crypto.provider.SunJCE;
import java.io.PrintStream;
import java.security.NoSuchAlgorithmException;
import java.security.Security;
import javax.crypto.Cipher;
import javax.crypto.NoSuchPaddingException;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
// Referenced classes of package carven:
// OpByte
public class DES
{
private byte FIV[];
private byte FKEY[];
public DES()
{
byte IV[] = {
-101, 103, -10, 8, 36, 99, -22, 36
};
byte key[] = {
-114, 16, 93, -100, 78, 4, -38, -124
};
FIV = IV;
FKEY = key;
}
public String encode(String strText)
{
Security.addProvider(new SunJCE());
String Algorithm = "DES/CBC/PKCS5Padding";
try
{
javax.crypto.SecretKey deskey = new SecretKeySpec(FKEY, "DES");
Cipher c1 = Cipher.getInstance("DES/CBC/PKCS5Padding");
IvParameterSpec ivSpec = new IvParameterSpec(FIV);
c1.init(1, deskey, ivSpec);
byte cipherByte[] = c1.doFinal(strText.getBytes("gbk"));
return OpByte.Base64Encode(cipherByte);
}
catch (NoSuchAlgorithmException e1)
{
e1.printStackTrace();
}
catch (NoSuchPaddingException e2)
{
e2.printStackTrace();
}
catch (Exception e3)
{
e3.printStackTrace();
}
return null;
}
public String decode(String strText)
{
Security.addProvider(new SunJCE());
String Algorithm = "DES/CBC/PKCS5Padding";
try
{
javax.crypto.SecretKey deskey = new SecretKeySpec(FKEY, "DES");
Cipher c1 = Cipher.getInstance("DES/CBC/PKCS5Padding");
IvParameterSpec ivSpec = new IvParameterSpec(FIV);
c1.init(1, deskey, ivSpec);
c1 = Cipher.getInstance("DES/CBC/PKCS5Padding");
c1.init(2, deskey, ivSpec);
byte clearByte[] = c1.doFinal(OpByte.Base64Decode(strText));
return new String(clearByte, "gbk");
}
catch (NoSuchAlgorithmException e1)
{
e1.printStackTrace();
}
catch (NoSuchPaddingException e2)
{
e2.printStackTrace();
}
catch (Exception e3)
{
e3.printStackTrace();
}
return null;
}
public static void main(String args[])
{
DES des = new DES();
String tmp = des.encode("carven");
System.out.println(tmp);
System.out.println(des.decode(tmp));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -