Sobes.tech
Junior — Middle

Koje metode šifrovanja i tehnike zaštite podataka poznaješ?

sobes.tech АИ

Одговор од АИ

U Javi se često koriste sledeće metode i tehnike za šifrovanje i zaštitu podataka:

  • Simetrično šifrovanje (npr. AES) — jedan ključ za šifrovanje i dešifrovanje.
  • Asimetrično šifrovanje (npr. RSA) — par ključeva: javni i privatni.
  • Hashovanje (npr. SHA-256) — jednostrano preobražavanje podataka za proveru integriteta.
  • Digitalni potpisi — za potvrdu autentičnosti i integriteta podataka.
  • Korišćenje Java Cryptography Architecture (JCA) i biblioteka poput Bouncy Castle.

Primer korišćenja AES za šifrovanje niza:

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