chat-bots:zaschischennaja_peredacha_dannyx._prosmotr_trafika._json
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| chat-bots:zaschischennaja_peredacha_dannyx._prosmotr_trafika._json [2025/09/23 02:36] – [Практика шифрования файла при помощи GNU Privacy Guard (GPG)] olegsklyarov | chat-bots:zaschischennaja_peredacha_dannyx._prosmotr_trafika._json [2025/09/24 07:25] (current) – [Заметки лектора] olegsklyarov | ||
|---|---|---|---|
| Line 39: | Line 39: | ||
| # Боб создает связку GPG ключей: | # Боб создает связку GPG ключей: | ||
| (Bob) $ gpg --full-gen-key | (Bob) $ gpg --full-gen-key | ||
| + | > (1) RSA and RSA | ||
| + | > 4096 | ||
| + | > Bob Ivanov | ||
| + | > bob@example.com | ||
| + | > 8312 (ваша группа в ННГУ) | ||
| + | > придумать, | ||
| - | # Боб | + | # Боб экспортирует открытый ключ, чтобы передать его Элис |
| - | (Bob) $ gpg --export -a bob@example.com > bob_public.gpg | + | (Bob) $ gpg --export -a bob@example.com > PublicKey_Bob.gpg |
| - | # Боб отправляет файл | + | # Боб отправляет файл |
| # Элис импортирует ключ Боба в GPG | # Элис импортирует ключ Боба в GPG | ||
| - | (Alice) $ gpg --import | + | (Alice) $ gpg --import |
| # Элис делает ключ Боба доверенным | # Элис делает ключ Боба доверенным | ||
| Line 55: | Line 61: | ||
| # Элис шифрует файл с сообщением при помощи открытого ключа Боба | # Элис шифрует файл с сообщением при помощи открытого ключа Боба | ||
| + | # результат сохраняется в message.txt.asc (aka message_encrypted) | ||
| (Alice) $ gpg -e -a -r bob@example.com message.txt | (Alice) $ gpg -e -a -r bob@example.com message.txt | ||
| + | |||
| # Элис отправляет зашифрованный файл message.txt.asc Бобу | # Элис отправляет зашифрованный файл message.txt.asc Бобу | ||
| - | # Боб расшифровывает message.txt.asc | + | # Боб расшифровывает message.txt.asc |
| - | (Bob) $ gpg -d -o message.txt message.txt.asc | + | (Bob) $ gpg -d -o message_decrypted.txt message.txt.asc |
| </ | </ | ||
| Line 74: | Line 82: | ||
| </ | </ | ||
| ===== Просмотр сетевого трафика ===== | ===== Просмотр сетевого трафика ===== | ||
| + | |||
| + | ==== Замечания про HTTP ==== | ||
| + | |||
| + | * Сетевая модель OSI: стек протоколов, | ||
| + | * Первоисточник: | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | ==== Смотрим HTTP трафик ==== | ||
| + | |||
| + | Исходный код сервера [[https:// | ||
| + | |||
| + | <code bash> | ||
| + | # установка wireshark | ||
| + | $ sudo apt install wireshark | ||
| + | $ sudo dpkg-reconfigure wireshark-common | ||
| + | $ sudo chmod +x / | ||
| + | |||
| + | # запускаем wireshark | ||
| + | $ wireshark | ||
| + | |||
| + | # запускаем HTTP сервер | ||
| + | $ python3 http-server.py | ||
| + | |||
| + | # отправляем HTTP запрос | ||
| + | $ curl " | ||
| + | </ | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | ==== Смотрим HTTPS трафик ==== | ||
| + | |||
| + | <code bash> | ||
| + | # Генерируем самоподписанный ключ и сертификат | ||
| + | $ openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 365 -out cert.pem | ||
| + | |||
| + | # запускаем HTTPS сервер | ||
| + | $ python3 https-server.py | ||
| + | |||
| + | # отправляем HTTPS запрос (ошибка curl: самоподписанный сертификат) | ||
| + | $ curl https:// | ||
| + | |||
| + | # отправляем HTTPS запрос (разрешаем самоподписанный сертификат) | ||
| + | $ curl --insecure " | ||
| + | </ | ||
| + | |||
| + | На будущее: | ||
| ===== JSON ===== | ===== JSON ===== | ||
| + | JavaScript Object Notation | ||
| + | * human-readable | ||
| + | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||
| + | |||
| + | |||
| + | ===== Д/З ===== | ||
| + | |||
| + | - Создать про помощи '' | ||
| + | - Отправить [[https:// | ||
| + | - Получить в ответ зашифрованное сообщение, | ||
| + | - Отправить [[https:// | ||
| + | |||
| + | |||
| + | ==== Заметки лектора ==== | ||
| + | * Данный контент занял примерно час, остальное время принимали GPG зачет. Можно добавлять ещё материал. | ||
| + | * Идея: написать [[chat-bots/ | ||
| + | * Открытые ключ можно смело слать в общий чат, отмечать выполненные реакцией emoji. Это добавит реальной атмосферы незащищенного канала связи (общий чат), но информация читается только получателем. | ||
chat-bots/zaschischennaja_peredacha_dannyx._prosmotr_trafika._json.1758584218.txt.gz · Last modified: by olegsklyarov
