Sobes.tech
Junior — Middle

¿Qué métodos de cifrado y técnicas de protección de datos conoces?

sobes.tech AI

Respuesta de la IA

En Java, los métodos y técnicas comúnmente utilizados para cifrar y proteger datos son:

  • Cifrado simétrico (por ejemplo, AES) — una clave para cifrar y descifrar.
  • Cifrado asimétrico (por ejemplo, RSA) — un par de claves: pública y privada.
  • Hashing (por ejemplo, SHA-256) — transformación unidireccional de datos para verificar la integridad.
  • Firmas digitales — para confirmar la autenticidad y la integridad de los datos.
  • Uso de Java Cryptography Architecture (JCA) y bibliotecas como Bouncy Castle.

Ejemplo de uso de AES para cifrar una cadena:

import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.SecretKey;

public class EncryptionExample {
    public static void main(String[] args) throws Exception {
        KeyGenerator keyGen = KeyGenerator.getInstance("AES");
        keyGen.init(128);
        SecretKey secretKey = keyGen.generateKey();

        Cipher cipher = Cipher.getInstance("AES");
        cipher.init(Cipher.ENCRYPT_MODE, secretKey);

        String text = "Hello, World!";
        byte[] encrypted = cipher.doFinal(text.getBytes());

        System.out.println("Encrypted data: " + java.util.Base64.getEncoder().encodeToString(encrypted));
    }
}