Переезд на md5
This commit is contained in:
@@ -1,8 +1,9 @@
|
||||
# Практическая работа №5 — Конфиденциальный обмен сообщениями
|
||||
|
||||
Клиент-серверное приложение для обмена сообщениями по TCP с поддержкой
|
||||
шифрования 3DES-CBC (с затравкой), контроля целостности SHA-256 и
|
||||
аутентификации отправителя HMAC-SHA256.
|
||||
шифрования 3DES-CBC (с затравкой; ключ сессии из SHA-256 от ключа файла и соли),
|
||||
контроля целостности сообщения **MD5** (по варианту, как в работе №2) и опциональной
|
||||
аутентификации отправителя **HMAC-SHA256**.
|
||||
|
||||
## Установка
|
||||
|
||||
@@ -28,7 +29,7 @@ chmod 600 key.txt
|
||||
```bash
|
||||
uv run main.py server --port 9000 # без шифрования
|
||||
uv run main.py server --port 9000 --encrypt # 3DES-CBC
|
||||
uv run main.py server --port 9000 --encrypt --integrity # + SHA-256
|
||||
uv run main.py server --port 9000 --encrypt --integrity # + MD5 digest
|
||||
uv run main.py server --port 9000 --encrypt --integrity --test-integrity # отправка с повреждённым хэшем
|
||||
uv run main.py server --port 9000 --encrypt --hmac # 3DES + HMAC-SHA256
|
||||
uv run main.py server --port 9000 --hmac # только HMAC (без шифрования)
|
||||
@@ -52,7 +53,7 @@ uv run main.py client 127.0.0.1 9000 --encrypt --hmac --test-integrity
|
||||
|------|----------|
|
||||
| *(без флагов)* | Открытый текст, без проверки целостности |
|
||||
| `--encrypt` | Шифрование 3DES-CBC с затравкой (соль + IV генерируются случайно для каждого сообщения) |
|
||||
| `--integrity` | Контроль целостности — к сообщению прикладывается SHA-256 хэш открытого текста |
|
||||
| `--integrity` | Контроль целостности — MD5-хэш открытого текста (по индивидуальному заданию) |
|
||||
| `--hmac` | HMAC-SHA256 — контроль целостности + аутентификация отправителя (требует ключ, несовместим с `--integrity`) |
|
||||
| `--test-integrity` | Режим тестирования: отправляется заведомо некорректный хэш/HMAC (требует `--integrity` или `--hmac`) |
|
||||
|
||||
|
||||
Reference in New Issue
Block a user