Sobes.tech
Junior — Middle

Milyen titkosítási módszereket és adatvédelmi technikákat ismersz?

sobes.tech MI

Válasz az MI-től

Java-ban gyakran használt módszerek és technikák az adatok titkosítására és védelmére a következők:

  • Szimmetrikus titkosítás (pl. AES) — egy kulcs a titkosításhoz és a visszafejtéshez.
  • Aszimmetrikus titkosítás (pl. RSA) — egy kulcspár: nyilvános és privát.
  • Hash-elés (pl. SHA-256) — egyirányú adatátalakítás az integritás ellenőrzéséhez.
  • Digitális aláírások — az adatok hitelességének és integritásának megerősítésére.
  • Java Cryptography Architecture (JCA) és könyvtárak, mint például a Bouncy Castle használata.

Példa AES használatára egy sztring titkosításához:

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));
    }
}