
Образовательный проект на Python, реализующий криптографию на эллиптических кривых (ECDSA, ECIES) и моделирующий эксплуатацию CVE-2022-21449, с визуализациями и документацией.
Этот проект позволяет:
Все файлы в этой папке являются временными и будут собраны в единый файл
Этот PDF содержит теорию, на которой основан данный проект: асимметричная криптография, подписи, эллиптические кривые, ECIES. Использованные источники указаны в конце документа.
Этот файл содержит краткое объяснение работы хеш-функций, таких как SHA-1.
Старый README, содержащий подробности о работе кода в src/ и о других важных понятиях, связанных с эллиптическими кривыми.
Тема стажировки.
Эта часть является ключевой для проекта и реализует сложение двух точек на эллиптической кривой над полем действительных чисел. Хотя эта версия не используется для шифрования или подписи, она очень полезна для простого понимания того, как работает сложение двух точек.
Благодаря инструментам из ecc_tools и функциям из ECIES можно шифровать и дешифровать сообщения на эллиптических кривых над конечным полем. Также можно визуализировать эллиптическую кривую с размещённым на ней открытым ключом с помощью функции plot.
Необходимые библиотеки: numpy, matplotlib, PyCryptodomex
В файле main.py находятся все действия, которые можно выполнить на этот раз над эллиптическими кривыми над конечным полем: шифрование/дешифрование, подпись/проверка и имитация эксплуатации CVE 2022 21449.
Необходимые библиотеки: numpy, matplotlib, PyCryptodomex