ЗАХИСТ КАНАЛІВ ОБМІНУ ДАНИМИ МІЖ PYTHON-ЗАСТОСУНКАМИ ЗА ДОПОМОГОЮ КРИПТОГРАФІЧНИХ БІБЛІОТЕК
DOI:
https://doi.org/10.20998/3083-6298.2025.02.05Ключові слова:
Python-застосунки, захищена комунікація, AES-GCM, X25519, Ed25519, HKDF, захист від replay-атакАнотація
Актуальність. Зростаюча залежність від розподілених застосунків актуалізує потребу у створенні захищених каналів обміну даними між програмними компонентами. Без належного захисту комунікація стає вразливою до атак, таких як перехоплення, підміна, модифікація та повторна відправка повідомлень. Предметом дослідження у статті є використання криптографічних бібліотек Python (cryptography, PyNaCl) для побудови легких, але надійних механізмів безпеки поверх наявних каналів обміну. Метою статті є представлення практичного та відтворюваного методу захисту інформаційних потоків шляхом поєднання симетричного шифрування (AES-GCM), ефемерного обміну ключами (X25519), виведення ключів (HKDF із SHA-256) та цифрових підписів (Ed25519). Були отримані наступні результати. Запропонована модель інтегрує аутентифіковане шифрування з додатковими даними (AEAD) та лічильниками повідомлень для запобігання повторним атакам, залишаючись сумісною з різними транспортними рівнями (HTTP, gRPC, MQTT). У роботі наведено мінімальні приклади коду та результати вимірювань продуктивності, які показують, що шифрування та розшифрування займають менше однієї мілісекунди для типових повідомлень, а обмін ключами та операції підпису додають лише кілька мілісекунд. Це свідчить про можливість реалізації потужного криптографічного захисту без значних накладних витрат. Висновок. Отримані результати підтверджують, придатність схеми для розподілених систем у режимі реального часу, мікросервісів та IoT. Подальший розвиток може включати інтеграцію постквантових алгоритмів та автоматизоване управління ключами.
Посилання
- PyCA Cryptography Documentation, https://cryptography.io
- PyNaCl Documentation, https://pynacl.readthedocs.io
- NIST SP 800-57. Recommendation for Key Management, 2020, https://csrc.nist.gov/pubs/sp/800/57/pt1/r5/final
- RFC 5116. An Interface and Algorithms for Authenticated Encryption, 2008, https://datatracker.ietf.org/doc/html/rfc5116
- RFC 8439. ChaCha20 and Poly1305 for IETF Protocols, 2020, https://datatracker.ietf.org/doc/rfc8439/
- Aumasson, J.-P. Serious Cryptography. No Starch Press, 2017, 367 р.
- Schneier, B., Ferguson, N., Kohno, T. Cryptography Engineering. Wiley, 2010, doi: 10.1002/9781118722367