Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Crypton — Библиотека, состоящая из объяснения и реализации всех существующих атак на различные системы шифрования, цифровые подписи, обмен ключами, методы аутентификации, а также примеров задач из CTF. | Kitploit
Инструменты/GitHubGitHub/ashutosh1206/crypton
Инструменты шифрования/дешифрованияАнализ уязвимостейАнализ хэшейКриптографияCTFОбучение и ОбразованиеArchived
GitHubashutosh1206/crypton

Crypton

Библиотека, состоящая из объяснения и реализации всех существующих атак на различные системы шифрования, цифровые подписи, обмен ключами, методы аутентификации, а также примеров задач из CTF.

Репозиторий
1.6k27075 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Crypton

Crypton — это образовательная библиотека для изучения и практики наступательной и оборонительной криптографии. По сути, это сборник объяснений и реализаций всех существующих уязвимостей и атак на различные системы шифрования (симметричные и асимметричные), цифровые подписи, коды аутентификации сообщений и системы аутентифицированного шифрования. Каждая атака также сопровождается примерами задач из соревнований «Capture The Flag» и соответствующими разборами решений. Люди, уже знакомые с этой областью (или участвующие в CTF), могут использовать Crypton как инструмент для решения задач, основанных на той или иной существующей уязвимости.

Библиотека будет постоянно пополняться объяснениями атак и CTF-задачами! Не стесняйтесь написать мне на email по любым предложениям!

Я написал сообщение в блоге о процессе разработки этой библиотеки: https://masterpessimistaa.wordpress.com/2018/08/12/announcing-crypton-an-educational-library-to-learn-offensive-and-defensive-cryptography/

ПРЕДУПРЕЖДЕНИЕ: Автор никоим образом не гарантирует, что код безопасен. Библиотека предназначена только для образовательных целей, и код не следует использовать для внедрения в реальных проектах. Все примеры скриптов в библиотеке являются тривиальными реализациями.

В этом файле README есть несколько разделов:

  • Мотивация — что побудило меня создать эту библиотеку
  • Структура библиотеки — структура каталогов Crypton
  • Охват предметной области — какие криптосистемы и атаки рассматриваются в этой библиотеке
  • Планы на будущее / TODO — атаки/концепции, которые скоро будут добавлены

Мотивация

Помочь участникам CTF и людям, интересующимся криптографией, предоставить платформу для изучения атак в крипто и для опытных игроков CTF — практиковаться в решении задач, систематически разделённых на атаки, связанные с различными поддоменами криптографии. А также проиллюстрировать с помощью различных объяснений атак, насколько важна правильная реализация протоколов.


Структура библиотеки

picture


Охват предметной области

1. Блочные шифры

2. RSA шифрование

3. Коды аутентификации сообщений (MAC)

4. Задача дискретного логарифма| № | Тема | Объяснение | Реализация/Эксплойт | Задача № |

|---|:---------------------------:|:-----------------------------------------------------------------------------------------------:|:------------:|:----------:| | 1 | DLP- Циклические группы, задача дискретного логарифма |

  • - [x] [link]
|
  • - [ ]
|
  • - [x] [link]
| | 2 | Алгоритм Полларда ρ для решения DLP |
  • - [x] [link]
|
  • - [x] [link]
|
  • - [x] [link]
| | 3 | Алгоритм «Baby Step, Giant Step» для решения DLP|
  • - [x] [link]
|
  • - [x] [link]
|
  • - [ ]
| | 4 | Алгоритм Полига — Хеллмана для решения DLP|
  • - [x] [link]
|
  • - [x] [link]
|
  • - [ ]
| | 5 | DLP на эллиптических кривых — определение нейтрального элемента, обратной точки, циклических групп точек на ЭК, теорема Хассе, ECDLP |
  • - [x] [link]
|
  • - [ ]
|
  • - [ ]
| | 6 | Алгоритм «Baby Step, Giant Step» для решения ECDLP |
  • - [x] [link]
|
  • - [x] [link]
|
  • - [ ]
| | 7 | Алгоритм Полларда ρ для решения ECDLP |
  • - [x] [link]
|
  • - [x] [link]
|
  • - [x] [link]
|

5. Шифрование ElGamal

6. Аутентифицированное шифрование (AE)

7. Эллиптические кривые

8. Цифровые подписи

9. Идентификация

10. Обмен ключами Диффи — Хеллмана

TODO

  1. Шифрование RSA
    • Шифрование RSA с дополнением PKCS1-v1.5
    • Атака на основе выбранного шифротекста на криптосистему RSA с оракулом младшего бита LSB [Готово]
    • Атака на оракул дополнения на систему шифрования RSA с дополнением PKCS1
    • Факторизация Ферма
      • Улучшение решетом
    • Атака Куперсмита
      • Атака Боне — Дёрфи
    • Широковещательная атака Хастада
      • Реализация HBA на дополненных сообщениях
  2. Генераторы псевдослучайных чисел
    • Линейный конгруэнтный генератор
    • Вихрь Мерсенна
    • Регистр сдвига с линейной обратной связью
  3. Цифровые подписи
    • Атака ослеплением на цифровые подписи RSA
  4. Обмен ключами Диффи — Хеллмана[Готово]
    • Эллиптический вариант Диффи — Хеллмана
  5. [Будет дополнено]

Автор

Ashutosh Ahelleya

  • Twitter: https://twitter.com/ashutosha_
  • Блог: https://masterpessimistaa.wordpress.com
  • Эл. почта: [email protected]
Скачать инструмент
№ТемаОписаниеРеализация/ЭксплойтЗадача#
1Основы блочных шифров — работа блочных шифров, дополнение и т.д.
  • - [x] [link]
  • - [ ]
  • - [ ]
2Режимы шифрования — различные режимы работы блочных шифров: ECB, CBC, CTR
  • - [x] [link]
  • - [ ]
  • - [ ]
3Определение размера блока — определение размера блока блочного шифра, шифрующего данные на удалённом сервисе
  • - [x] [link]
  • - [ ]
  • - [ ]
4Определение режима — определение типа режима шифрования: независимое или зависимое шифрование блоков
  • - [x] [link]
  • - [ ]
  • - [ ]
5ECB побайтово — побайтовое дешифрование строки secret, работающей на удалённом сервисе, который шифрует input+secret в режиме ECB
  • - [x] [link]
  • - [ ]
  • - [x] [link]
6Определение IV в CBC — определение значения вектора инициализации на удалённом сервисе, который шифрует наши данные с помощью блочного шифра в режиме CBC
  • - [x] [link]
  • - [x] [link]
  • - [ ]
7Атака переворотом битов в CBC — эксплуатация механизма генерации cookie для входа в систему как администратор, когда cookie генерируется с помощью блочного шифра в режиме CBC
  • - [x] [link]
  • - [ ]
  • - [x] [link]
8CBC побайтово — побайтовое дешифрование строки secret, работающей на удалённом сервисе, который шифрует input+secret в режиме ECB
  • - [x] [link]
  • - [x] [link]
  • - [ ]
9Атака через оракул дополнения в CBC — дешифрование данных, зашифрованных уязвимым сервисом, предоставляющим шифрование/дешифрование
  • - [x] [link]
  • - [ ]
  • - [x] [link]
10Переворот битов в CTR — эксплуатация механизма генерации cookie для входа в систему как администратор, когда cookie генерируется с помощью блочного шифра в режиме CBC
  • - [x] [link]
  • - [ ]
  • - [x] [link]
№ТемаОписаниеРеализация/ЭксплойтЗадача#
1RSA без дополнения (шифр/дешифр) — генерация ключей, распределение, шифрование/дешифрование, проверка формулы дешифрования и дополнение в RSA
  • - [x] [link]
  • - [ ]
  • - [ ]
2Атака прямым извлечением корня — атака на RSA без дополнения с малым открытым ключом
  • - [x] [link]
  • - [ ]
  • - [ ]
3Факторизация Ферма — метод факторизации модуля n, когда значения p и q близки
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
4Факторизация Полларда p-1 — метод факторизации n, когда оба его множителя p и q, p-1 и q-1 имеют очень маленькие простые делители
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
5Атака общим модулем — расшифровка шифротекста, когда соответствующий открытый текст дважды зашифрован с использованием одного и того же модуля n
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
6Атака общим простым множителем — получение множителей модулей n1 и n2, когда у них есть общий множитель
  • - [x] [link]
  • - [ ]
  • - [x] [link]
7Атака Винера — получение значения показателя дешифрования d, когда d < N0,25
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
8Вариант атаки Винера — получение значения показателя дешифрования d, когда d на несколько бит больше N0,25 или d < N0,25
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
9Атака Копперсмита — теорема Копперсмита, атака на стереотипные сообщения и факторизация n с известными старшими битами
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
10Атака Франклина-Рейтера на связанные сообщения — атака для восстановления связанных сообщений, зашифрованных с использованием одного и того же модуля
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
11Атака Хастада с вещанием — с расширением — атака для восстановления сообщения, разосланного разным людям, зашифрованного с использованием одного и того же показателя, но разных модулей
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
12RSA с дополнением PKCS1-v1.5 (шифрование/дешифрование) — кодирование ASN1, шифрование RSA с дополнением (требует исправления)
  • - [ ]
  • - [ ]
  • - [ ]
13Атака через оракул младшего значащего бита — атака на оракул RSA, раскрывающий значение младшего значащего бита при дешифровании
  • -[x] [link]
  • -[x] [link]
  • - [ ]
14Атака восстановления модуля — атака на оракул RSA для извлечения значения модуля, если он не является открытым
  • -[x] [link]
  • -[x] [link]
  • -[x] [link]
15Введение в RSA (задачи) — базовые задачи по RSA, связанные с теорией чисел
  • - [x] [link]
  • - [ ]
  • - [x] [link]
№ТемаОписаниеРеализация/ЭксплойтЗадача#
1Код аутентификации сообщения — внутреннее устройство и анализ безопасности MAC
  • - [x] [link]
  • - [ ]
  • - [ ]
2Фабрикация CBC-MAC — генерация двух сообщений M1 и M2, имеющих одинаковую метку аутентификации CBC-MAC
  • - [x] [link]
  • - [ ]
  • - [x] [link]
3Атака расширения длины на CBC-MAC — генерация допустимой метки аутентификации для сообщения M1M2 (конкатенация) при известном MAC(M1)
  • - [x] [link]
№ТемаОбъяснениеРеализация/ЭксплойтЗадача №
1Криптосистема ElGamal — шифрование/дешифрование — генерация ключей, шифрование, дешифрование в криптосистеме ElGamal
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
№ТемаОбъяснениеРеализация/ЭксплойтЗадача №
1Основы и внутреннее устройство AE — принцип работы аутентифицированного шифрования
  • - [x] [link]
  • - [ ]
  • - [ ]
2AE с помощью MAC — различные методы реализации AE с помощью MAC: Encrypt-and-MAC, MAC-then-encrypt и Encrypt-then-MAC
  • - [x] [link]
  • - [ ]
  • - [ ]
3Аутентифицированные шифры
  • - [x] [link]
  • - [ ]
  • - [ ]
4AE с ассоциированными данными (AEAD)
  • - [x] [link]
  • - [ ]
  • - [ ]
5AES-GCM — шифрование в AES-GCM, MAC Вегмана — Картера
  • - [x] [link]
  • - [x] [link]
  • - [ ]
6Атака «Forbidden» на AES-GCM — атака на AES-GCM из-за повторного использования nonce
  • - [x] [link]
  • - [ ]
  • - [x] [link]
№ТемаОбъяснениеРеализация/ЭксплойтЗадача №
1Внутреннее устройство эллиптических кривых — определение эллиптических кривых, сложение точек, удвоение точек и скалярное умножение
  • - [x] [link]
  • - [x] [python], [sage]
  • - [ ]
№ТемаОбъяснениеРеализация/ЭксплойтЗадача №
1Подписи ElGamal — генерация ключей, создание подписи, проверка подписи и корректность схемы подписи ElGamal
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
2ECDSA — создание подписи, проверка подписи и корректность алгоритма подписи
  • - [x] [link]
  • - [ ]
  • - [ ]
3Атака повторного использования k в ECDSA — подделка подписей ECDSA из-за повторного использования k
  • - [x] [link]
  • - [ ]
  • - [ ]
4Цифровые подписи RSA без дополнения — создание и проверка подписи в схеме цифровой подписи RSA
  • - [x] [link]
  • - [x] [link]
  • - [ ]
5Цифровые подписи RSA с дополнением PKCS1-v1.5
  • - [x] [link]
  • - [x] [link]
  • - [ ]
6Атака Бляйхенбахера при e=3
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
№ТемаОбъяснениеРеализация/ЭксплойтЗадача №
1Внутреннее устройство идентификации
  • - [x] [link]
  • - [ ]
  • - [ ]
2Аутентификация с помощью эфемерного ключа
  • - [x] [link]
  • - [ ]
  • - [x] [link]
№ТемаОбъяснениеРеализация/ЭксплойтЗадача №
1Внутреннее устройство обмена ключами Диффи — Хеллмана
  • - [x] [link]
  • - [x] [link]
  • - [ ]
2Атака ограничением на малую подгруппу
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]
3Атака на некорректные точки кривой
  • - [x] [link]
  • - [x] [link]
  • - [x] [link]