怎么存呀,又怎么回复成SecretKey实例?
解决方案 »
- rs = psmt.executeQuery(sqlSelect);出错啦o(╯□╰)o
- 向老紫竹询问可用分问题
- 怎么去除警告:ArrayList is a raw type. References to generic type ArrayList<E> should be parameterized
- 我用servlet操作SQLServer2000,请问 DriverClass 和 url怎么写?
- 我调用它的时候传进的参数类型是不定的,我怎么做才能把传经去的类型转化为原来的类型呢?
- 请问大家:怎么在jBuilder8中显示中文?
- 如何区分Big5和GB2312
- 用applet、jdbc和socket进行数据库访问?
- java 压缩zip异常,java.util.zip.ZipException: duplicate entry:
- 遇到前所未遇到的问题,求助各位。
- JLabel显示多行文本?
- 痛苦,散分
import javax.crypto.spec.SecretKeySpec;
import java.security.AlgorithmParameters;
import sun.misc.*;
public class Test {
public Test() {
try {
Cipher c = Cipher.getInstance("DES");
KeyGenerator keygen = KeyGenerator.getInstance("DES");
SecretKey deskey = keygen.generateKey();
c.init(Cipher.ENCRYPT_MODE, deskey);
byte[] cipherText = c.doFinal("This is just an example".getBytes());
BASE64Encoder base64E = new BASE64Encoder();
String skey = base64E.encode(deskey.getEncoded());
//you can save you key to file
//......
//read keybyte from file
//......
BASE64Decoder base64D = new BASE64Decoder();
byte[] bKey = base64D.decodeBuffer(skey); Cipher c1 = Cipher.getInstance("DES");
SecretKey deskey1 = new SecretKeySpec(bKey, "DES");
c1.init(Cipher.DECRYPT_MODE, deskey1);
byte[] test2 = c1.doFinal(cipherText);
System.out.println("encodedAlgParams1 "+new String(test2)); }
catch (Exception ex) {
ex.printStackTrace();
} } public static void main(String[] args) {
Test test1 = new Test();
}}