`
jacky-zhang
  • 浏览: 309910 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Encrypting an Object with DES

 
阅读更多
try {
    // Generate a temporary key. In practice, you would save this key.
    // See also Encrypting with DES Using a Pass Phrase.
    SecretKey key = KeyGenerator.getInstance("DES").generateKey();

    // Prepare the encrypter
    Cipher ecipher = Cipher.getInstance("DES");
    ecipher.init(Cipher.ENCRYPT_MODE, key);

    // Seal (encrypt) the object
    SealedObject so = new SealedObject(new MySecretClass(), ecipher);

    // Get the algorithm used to seal the object
    String algoName = so.getAlgorithm();  // DES

    // Prepare the decrypter
    Cipher dcipher = Cipher.getInstance("DES");
    dcipher.init(Cipher.DECRYPT_MODE, key);

    // Unseal (decrypt) the class
    MySecretClass o = (MySecretClass)so.getObject(dcipher);
} catch (java.io.IOException e) {
} catch (ClassNotFoundException e) {
} catch (javax.crypto.IllegalBlockSizeException e) {
} catch (javax.crypto.BadPaddingException e) {
} catch (javax.crypto.NoSuchPaddingException e) {
} catch (java.security.NoSuchAlgorithmException e) {
} catch (java.security.InvalidKeyException e) {
}

public class MySecretClass implements java.io.Serializable {
    String s = "the secret";
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics