Decrypt an object with DES : DES Data Encryption Standard « Security « Java Tutorial






import java.io.File;
import java.io.FileInputStream;
import java.io.ObjectInputStream;

import javax.crypto.Cipher;
import javax.crypto.SealedObject;
import javax.crypto.SecretKey;

public class Main {
  private static Object readFromFile(String filename) throws Exception {
    ObjectInputStream ois = new ObjectInputStream(new FileInputStream(new File(filename)));
    Object object = ois.readObject();
    ois.close();
    return object;
  }

  public static void main(String[] args) throws Exception {
    SecretKey key = (SecretKey) readFromFile("secretkey.dat");
    SealedObject sealedObject = (SealedObject) readFromFile("sealed.dat");
    String algorithmName = sealedObject.getAlgorithm();
    Cipher cipher = Cipher.getInstance(algorithmName);
    cipher.init(Cipher.DECRYPT_MODE, key);
    String text = (String) sealedObject.getObject(cipher);
    System.out.println("Text = " + text);
  }
}








36.12.DES Data Encryption Standard
36.12.1.CBC using DES with an IV based on a nonce. In this case a hypothetical message number.
36.12.2.Basic symmetric encryption example with CTR using DES
36.12.3.Decrypt an object with DES
36.12.4.Encrypt an object with DES
36.12.5.Encrypting with DES Using a Pass Phrase
36.12.6.Encrypting a String with DES
36.12.7.Encrypting a File or Stream with DES
36.12.8.Message without tampering with MAC (DES), encryption AES in CTR mode