> For the complete documentation index, see [llms.txt](https://kaze.gitbook.io/qa-theory/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kaze.gitbook.io/qa-theory/web/kak-proiskhodit-shifrovanie.md).

# Как происходит шифрование?

### 1️⃣ Основные типы шифрования

#### **1. Симметричное шифрование**

* Один ключ используется и для шифрования, и для дешифрования.
* Примеры алгоритмов: AES, DES, ChaCha20.
* Особенности:
  * Очень быстрое.
  * Проблема передачи ключа: нужно безопасно донести ключ до другой стороны.
* Применение:
  * Шифрование файлов, баз данных, соединений внутри закрытых систем.

#### **2. Асимметричное шифрование (с открытым и закрытым ключом)**

* Два ключа: публичный (открытый) и приватный (закрытый).
* Принцип:
  * Любой может зашифровать данные публичным ключом.
  * Только владелец приватного ключа может их расшифровать.
* Примеры алгоритмов: RSA, ECC.
* Применение:
  * Передача данных через интернет.
  * Цифровые подписи.
  * TLS/SSL (HTTPS).

***

### 2️⃣ Как это выглядит на практике

**Симметричное (AES)**:

1. Данные: `"Hello World"`
2. Ключ: `my_secret_key`
3. Алгоритм AES шифрует данные → результат: `6a2f1b9c...`
4. Чтобы прочитать → используем тот же ключ для дешифрования.

**Асимметричное (RSA)**:

1. У вас есть пара ключей: публичный и приватный.
2. Друг шифрует сообщение вашим публичным ключом → отправляет.
3. Вы расшифровываете приватным ключом → получаете исходное сообщение.

***

### 3️⃣ Дополнительно: хэширование (не шифрование, но часто рядом)

* Превращает данные в уникальную строку фиксированной длины.
* Односторонний процесс (не обратно): нельзя расшифровать.
* Примеры: SHA-256, bcrypt.
* Применение:
  * Хранение паролей.
  * Проверка целостности данных.

***

### 4️⃣ В реальном мире

* HTTPS — сочетание асимметричного (обмен ключами) и симметричного (шифрование самой передачи) шифрования.
* Банковские приложения используют AES для данных и RSA/ECC для обмена ключами.
* Пароли в базах обычно хранятся через хэш с солью.
