Abaixo um exemplo bem simples de encriptação / decriptação simétrica em Java usando AES / DEAES:
import javax.crypto.*;
import javax.crypto.spec.*;
class Encripta {
public static void main(String[] args) {
try {
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
byte[] mensagem = "minha mensagem original".getBytes();
// Usar chave de 128-bits (16 bytes)
byte[] chave = "chave de 16bytes".getBytes();
System.out.println("Tamanho da chave: " + chave.length);
// Encriptando…
cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(chave, "AES"));
byte[] encrypted = cipher.doFinal(mensagem);
// Decriptando…
cipher.init(Cipher.DECRYPT_MODE, new SecretKeySpec(chave, "AES"));
byte[] decrypted = cipher.doFinal(encrypted);
System.out.println(new String(decrypted));
} catch (Exception e) {
e.printStackTrace();
}
}
}
Veja também: http://stackoverflow.com/questions/992019/java-256bit-aes-encryption
0sem comentários ainda