public class DES
extends java.lang.Object
示例:
DES d = new DES("12345678");
System.out.println(d.encrypt("abc"));
System.out.println(d.decrypt(d.encrypt("abc")));
System.out.println(d.encryptToBase64("abc"));
System.out.println(d.decryptString(d.encryptToBase64("abc")));
d.encrypt(new FileInputStream("/dev/shm/ramdisk/plain.xls"), new FileOutputStream("/dev/shm/ramdisk/enc"))
d.decrypt(new FileInputStream("/dev/shm/ramdisk/enc"), new FileOutputStream("/dev/shm/ramdisk/dec.xls"))
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
ALGORITHM |
static java.lang.String |
BASE64_TYPE_MINE |
static java.lang.String |
BASE64_TYPE_URLSAFE |
static java.nio.charset.Charset |
CHARSET |
| Constructor and Description |
|---|
DES(java.lang.String key)
构造方法
|
DES(java.lang.String key,
java.lang.String method)
构造方法
|
| Modifier and Type | Method and Description |
|---|---|
byte[] |
decrypt(byte[] encryptedData)
数据解密
|
javax.crypto.CipherInputStream |
decrypt(java.io.InputStream encryptedIs)
数据解密
|
void |
decrypt(java.io.InputStream encryptedIs,
java.io.OutputStream decryptedOs)
数据解密
|
javax.crypto.CipherOutputStream |
decrypt(java.io.OutputStream decryptedOs)
数据解密
|
byte[] |
decrypt(java.lang.String encryptedStr)
对使用 Base64 编码过的数据解密
|
java.lang.String |
decryptString(byte[] encryptedData)
数据解密,并返回解密后的字符串
|
java.lang.String |
decryptString(java.lang.String encryptedStr)
对使用 Base64 编码过的数据解密,并返回解密后的字符串
|
byte[] |
encrypt(byte[] plainData)
数据加密
|
javax.crypto.CipherInputStream |
encrypt(java.io.InputStream plainIs)
数据加密
|
void |
encrypt(java.io.InputStream plainIs,
java.io.OutputStream encryptedOs)
数据加密
|
javax.crypto.CipherOutputStream |
encrypt(java.io.OutputStream encryptedOs)
数据加密
|
java.lang.String |
encryptToBase64(byte[] plainData)
数据加密并返回 Base64 编码后的字符串
|
java.lang.String |
encryptToBase64(java.lang.String plainStr)
对字符串加密,并返回 Base64 编码后的字符串
|
static void |
main(java.lang.String[] args) |
DES |
setBase64Type(java.lang.String type)
设置 Base64 的编解码器类型
|
static boolean |
validateKey(java.lang.String key) |
public static final java.nio.charset.Charset CHARSET
public static final java.lang.String ALGORITHM
public static final java.lang.String BASE64_TYPE_URLSAFE
public static final java.lang.String BASE64_TYPE_MINE
public DES(java.lang.String key,
java.lang.String method)
key - 加解密的密钥,长度为 8 的字符串method - 算法/模式/填充,默认为 DES/ECB/PKCS5Paddingpublic DES(java.lang.String key)
key - 加解密的密钥,长度为 8 的字符串public static boolean validateKey(java.lang.String key)
throws java.security.InvalidKeyException
java.security.InvalidKeyExceptionpublic void encrypt(java.io.InputStream plainIs,
java.io.OutputStream encryptedOs)
throws java.security.GeneralSecurityException,
java.io.IOException
plainIs - 需要加密的数据流,如 FileInputStreamencryptedOs - 解密的输出流,如 FileOutputStreamjava.security.GeneralSecurityException - .java.io.IOException - .public javax.crypto.CipherInputStream encrypt(java.io.InputStream plainIs)
throws java.security.GeneralSecurityException
plainIs - 需要加密的数据流,如 FileInputStreamjava.security.GeneralSecurityException - .public javax.crypto.CipherOutputStream encrypt(java.io.OutputStream encryptedOs)
throws java.security.GeneralSecurityException
encryptedOs - 需要加密输出流,如 FileOutputStreamjava.security.GeneralSecurityException - .public byte[] encrypt(byte[] plainData)
throws java.security.GeneralSecurityException
plainData - 需要加密的数据java.security.GeneralSecurityException - .public java.lang.String encryptToBase64(byte[] plainData)
throws java.security.GeneralSecurityException
plainData - 需要加密的数据java.security.GeneralSecurityException - .public java.lang.String encryptToBase64(java.lang.String plainStr)
throws java.security.GeneralSecurityException
plainStr - 需要加密的字符串java.security.GeneralSecurityException - .public void decrypt(java.io.InputStream encryptedIs,
java.io.OutputStream decryptedOs)
throws java.security.GeneralSecurityException,
java.io.IOException
encryptedIs - 加密的数据输入流,如 FileInputStreamdecryptedOs - 解密的数据输出流,如 FileOutputStreamjava.security.GeneralSecurityException - .java.io.IOException - .public javax.crypto.CipherOutputStream decrypt(java.io.OutputStream decryptedOs)
throws java.security.GeneralSecurityException
decryptedOs - 希望解密的数据输出流java.security.GeneralSecurityException - .public javax.crypto.CipherInputStream decrypt(java.io.InputStream encryptedIs)
throws java.security.GeneralSecurityException
encryptedIs - 加密的数据输入流java.security.GeneralSecurityException - .public byte[] decrypt(byte[] encryptedData)
throws java.security.GeneralSecurityException
encryptedData - 加密的数据java.security.GeneralSecurityException - .public byte[] decrypt(java.lang.String encryptedStr)
throws java.security.GeneralSecurityException
encryptedStr - 加密的数据java.security.GeneralSecurityException - .public java.lang.String decryptString(byte[] encryptedData)
throws java.security.GeneralSecurityException
encryptedData - 加密数据java.security.GeneralSecurityException - .public java.lang.String decryptString(java.lang.String encryptedStr)
throws java.security.GeneralSecurityException
encryptedStr - 加密的字符串java.security.GeneralSecurityException - .public DES setBase64Type(java.lang.String type)
type - 可选 BASE64_TYPE_URLSAFE、BASE64_TYPE_MINE、其他(默认)public static void main(java.lang.String[] args)
throws java.lang.Exception
java.lang.Exception