Sobes.tech
Junior — Middle
81

Можешь ли ты назвать основные виды методов шифрования данных?

Сұралған компаниялар
УралсибУралсиб

AI-дан жауап

sobes.tech AI

Основные виды методов шифрования данных можно разделить на две большие категории:

  1. Симметричное шифрование — для шифрования и расшифровки используется один и тот же ключ. Примеры алгоритмов:

    • AES (Advanced Encryption Standard)
    • DES (Data Encryption Standard)
    • 3DES (Triple DES)
  2. Асимметричное шифрование — используются два ключа: публичный для шифрования и приватный для расшифровки. Примеры алгоритмов:

    • RSA
    • ECC (Elliptic Curve Cryptography)

Кроме того, есть:

  • Хэширование — одностороннее преобразование данных в фиксированную длину (например, SHA-256), не предназначено для восстановления исходных данных.
  • Цифровые подписи — используют асимметричное шифрование для подтверждения подлинности данных.

Пример использования AES в Java:

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

public class AESExample {
    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.Arrays.toString(encrypted));
    }
}