Револьвер на стероидах: скорость и архитектура
Главное отличие новой версии ciphey от оригинального проекта на Python — радикальное повышение производительности. Разработчики заявляют о приросте скорости в 700% (в 7 раз). Это стало возможным благодаря переписыванию ядра на Rust и внедрению нативной многопоточности через библиотеку Rayon.
В оригинальном Ciphey поиск оптимального пути дешифровки требовал сложных вычислений искусственного интеллекта. В ciphey этот этап минимизирован: инструмент настолько быстр, что может параллельно проверять множество вариантов без значительных задержек. Для сравнения, если старый инструмент тратил время на анализ пути, новый просто перебирает варианты с максимальной скоростью.
AI-анализ и точность обнаружения
Ключевая проблема дешифровки — отличить осмысленный текст от случайного набора символов. В ciphey решена эта задача через интеграцию модели BERT (через crate gibberish-or-not). Это позволяет:
- Повысить точность определения «plain text» (открытого текста) примерно на 40%.
- Снизить количество ложных срабатываний и пропусков.
Для работы этой функции требуется однократная загрузка модели весом 500 МБ (требуется аккаунт Hugging Face). Также добавлена настраиваемая чувствительность: для классических шифров (например, Цезаря) используется низкая чувствительность, а для остальных — средняя, что повышает надежность результата.
Умный поиск и статистика
Движок использует алгоритм поиска A* с эвристиками. Он кэширует результаты, обрезает дерево поиска для экономии памяти и динамически приоритизирует декодеры. Например, если шифр Цезаря встречается чаще, чем шифр Беафора, алгоритм будет проверять его первым. Также учитываются популярные цепочки, такие как Base64 → Base64.
Встроенная база данных хранит статистику по более чем 15 000 CTF-задач (Capture The Flag), собранных и проанализированных AI. Это позволяет инструменту мгновенно распознавать популярные паттерны, API-ключи, MAC-адреса и даже известные пароли из дампов.
Сравнение возможностей: Ciphey vs ciphey
| Характеристика | Ciphey (Python) | ciphey (Rust) |
|---|---|---|
| Скорость работы | Базовая | В 7 раз быстрее (+700%) |
| Многопоточность | Отсутствует | Нативная (Rayon) |
| Количество декодеров | ~50 | 16 (растут ежедневно) |
| Анализ текста | Базовый | AI (BERT) + n-граммы |
| Может работать бесконечно | Встроенный таймер (5-10 сек) | |
| Многоуровневая дешифровка | Не поддерживалась из-за скорости | Поддерживается (например, Rot13 → Base64 → Rot13) |
Как установить и использовать
Инструмент доступен в нескольких форматах. Самый простой способ — использование Discord-бота в канале #bots. Для локального запуска разработчики рекомендуют установку через Cargo:
cargo install ciphey
Также доступна сборка через Docker. В CLI добавлены кастомные темы для улучшения доступности и удобства использования. Поддерживаются сложные шифры, включая Vigenere (с улучшенным алгоритмом обработки не-буквенных символов), Braille и Atbash.
Источник: Github ↗
