Как стать автором
Обновить
75.5

Криптография *

Шифрование и криптоанализ

Сначала показывать
Порог рейтинга
Уровень сложности

Как подружить DynamoRIO и LibFuzzer

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров882

Приветствую всех обитателей Хабра и случайных гостей!
Этой статьёй я хотел бы начать цикл заметок, посвящённых моей научной работе в вузе, связанной с фаззинг-тестированием. Всего на данный момент я работаю над темой 2 семестра.

За это время мне много раз приходилось обращаться к интернет ресурсам в поисках информации по работе с DynamoRIO. Но, к сожалению, годных ресурсов попадалось крайне мало. Поэтому я решил облегчить судьбу другим, интересующимся этой темой и инструментарием, и состряпал данную статью.

Надеюсь, кому-нибудь это да пригодится ;-)

Читать далее
Всего голосов 1: ↑1 и ↓0+3
Комментарии3

Как я потерял и брутфорсил кодовое слово на сайте загранпаспортов МИДа РФ и автоматизировал получение загранпаспорта

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров7.3K

Это история о том, как я подался на получение загранпаспорта нового образца в консульство в Тбилиси, забыл кодовое слово для доступа к анкете на сайте zp.midpass.ru, перерыл весь код их фронтенда и вспомнил комбинаторику, чтобы восстановить это слово. А также готовый код для тех, кто попал в такую же беду и бот, который нажимает одну кнопку раз в день.

Читать далее
Всего голосов 23: ↑19 и ↓4+17
Комментарии11

Синусоида и начальные условия факторизации едины

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров5.6K
image

Начну с предыстории.

В те давние времена, когда Pentium 4 считался верхом технологической мысли, среди обычных людей того времени было развлечение на сайте bugtraq. Там оценивали стойкость хешей и шифров. Поначалу это была как игра, какая команда обработает больше блоков. Потом случились поступление в университет и работа. Но страсть к шифрам осталась и даже не собиралась уходить. С тех самых пор ваш покорный слуга «заболел» шифрами и всем, что с ними связано. Основную работу, как и увлечение разработкой электроники, при этом никто не отменял.
Читать дальше →
Всего голосов 34: ↑32 и ↓2+43
Комментарии31

История о том, как Graphviz и бор взломали шифр от Sony

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров14K

Мою первую статью я желаю посвятить истории о том, как я решил заняться исследованием часто встречающихся в модулях PlayStation Portable непонятных байтовых строк. Никакой документации в Homebrew коммьюнити найти не удалось, так что я взялся за дело сам.

Как это было
Всего голосов 117: ↑117 и ↓0+153
Комментарии17

Истории

Книга: «Реальная криптография»

Время на прочтение22 мин
Количество просмотров8.7K
image Привет, Хаброжители!

Криптография — это фундамент информационной безопасности. Чтобы быть на шаг впереди хакеров, атакующих ваши системы, необходимо разбираться в инструментах, структурах и протоколах, защищающих ваши сети и приложения. В книге просто и наглядно описываются аутентификация, шифрование, подписи, хранение секретов и другие криптографические понятия.

Изучите приемы, которые используют разработчики, системные администраторы и специалисты по безопасности в своей повседневной работе. Вы не встретите ни сложных математических выкладок, ни умопомрачительного жаргона: современные криптографические методы рассматриваются с помощью понятных графиков и практических примеров. Познакомьтесь с хеш-функциями и подписями, криптографическими протоколами и безопасным обменом сообщениями, а также с передовыми достижениями, такими как постквантовая криптография и криптовалюты. Читать «Реальную криптографию» одно удовольствие и, возможно, она спасет, когда в следующий раз злоумышленники покусятся на ваши данные.
Читать дальше →
Всего голосов 14: ↑14 и ↓0+17
Комментарии1

Управление секретами IT-инфраструктуры

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров6.4K

Хай, даров всем! Недавно защитил свой диплом по разработке системы для управления корпоративными секретами. В честь этого хотел представить небольшую выжимку из моей работы.

Что вы получите от статьи?

В статье будет показан практический пример применения шифрования и комбинацией разных видов шифрования. Также вы узнаете базовые принципы работы цифровой подписи и криптографии. Ссылка на исходный код проекта доступна в конце статьи.

Зачем это нужно?

У компании, в которой я проходил практику, есть около 60 веб-сервисов и приложений, которые продолжают улучшаться и поддерживаться. У каждого сервиса есть в среднем около 15-20 секретов, например: логин и пароль от админки, API-ключи, строки подключения к БД, ключи шифрования и т.д. Обычно они хранятся в специальных файлах конфигурации проекта (appsettings.json) либо прямо в коде. Управлять ими в таком формате, когда они разбросаны по разным репозиториям и файлам, проблематично. Под "управлять" я имею в виду такие действия, как получение и периодическое обновление секретов. Передаются эти секреты между разработчиками обычно через мессенджеры, что приводит к их расползанию.

Для решения этих проблем и что бы сдать этот диплом, я сделал свой сервис для управления секретами.

Показать полностью
Всего голосов 6: ↑3 и ↓3+2
Комментарии15

Proton Mail в командной строке: пошаговая инструкция

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров2.2K

Привет, Хабр!

В этом посте мы расскажем, как подключить учетную запись Proton Mail в Eppie CLI — консольный клиент Eppie.

Proton Mail использует при аутентификации протокол Secure Remote Password (SRP) — обычные почтовые клиенты его не поддерживают. В Eppie SRP реализован (мы об этом уже рассказывали здесь), попробовать можно уже сейчас, если скачать наше CLI приложение. Вся настройка займет минуту.

Прежде чем мы начнем, возможно, вам захочется узнать больше об Eppie. Это наш GitHub. Кое-что можно почитать и здесь, на Хабре. А теперь к делу.

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии4

Как анализируют криптографические стандарты и зачем постквантовые алгоритмы без квантового компьютера?

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров4.2K

Об этом и о других перспективных направлениях криптографии эксперты компании «Криптонит» рассказали на прошедшей в июне конференции CTCrypt 2024.

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Комментарии0

Читаем ключевой контейнер КриптоПро (ч.2)

Уровень сложностиСредний
Время на прочтение2 мин
Количество просмотров6.7K

В прошлой части я разбирался с транспортным ключевым контейнером от КриптоПро (он же PFX, PKCS12, P12). В этой статье пойдёт речь о собственном формате ключевого контейнера КриптоПро (те самые 6 файлов .key)

Читать далее
Всего голосов 15: ↑14 и ↓1+18
Комментарии15

Тьюринг. Гений, опередивший время

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров17K

Как известно, именно Алан разгадал немецкий шифр в «Энигме». Но не будем повествовать об этом – тема давно изъезжена вдоль и поперёк, сняты фильмы, написаны книги и выпущено бесчисленное количество статей. Лучше к дню рождения великого британского математика попробуем узнать, каким человеком он был. 

Читать далее
Всего голосов 34: ↑31 и ↓3+36
Комментарии19

Соловьиная песня постквантового шифрования

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров3.1K

Почти год назад я написал статью о постквантовой криптографии и в этом материале решил продолжить эту тему, поскольку с каждым годом приближается момент, когда криптография, какой мы её знаем сегодня, накроется медным тазом. С появлением квантовых вычислений значительно возрос интерес к асимметричным технологиям шифрования. В частности сегодня пытаются найти подходящую замену RSA и алгоритмам на основе дискретных логарифмов, которые тривиально легко будут взломаны с помощью алгоритма Шора. Хотя симметричное шифрование более устойчиво к квантовым вычислениям, с их широким распространением оно будет существенно скомпрометировано реализациями алгоритма Гровера, поскольку он может выполнять неструктурированный поиск за O(sqrtN). Таким образом размер симметричного ключа уменьшится в два раза, то есть эффективность ключа AES-256 будет уменьшена до 128 бит. Тогда автоматически возникает вопрос, будет ли AES-256 оставаться безопасным? Давайте разбираться.

Читать далее
Всего голосов 7: ↑7 и ↓0+8
Комментарии6

Сложно ли генерировать 1024-битные простые числа?

Уровень сложностиПростой
Время на прочтение28 мин
Количество просмотров12K

Простые числа удивительны!

С одной стороны, их легко объяснить: это просто числа, которые делятся только на единицу и на себя; с другой стороны, они содержат в себе бесконечную сложность. Они встречаются во множестве разных сфер, от математических концепций и гипотез до любопытных визуализаций и криптографии, лежат в основе многих Интернет-стандартов и протоколов безопасности, которые мы используем ежедневно.

Несмотря на моё восхищение простыми числами, я никогда не исследовал их подробно, поэтому решил бросить себе вызов. А есть ли лучший способ изучить простые числа, чем воспользоваться моей любовью к кодингу для их генерации?

Вызов

Но какие простые числа мне генерировать? Нахождение миллиардного числа — это слишком просто, а попадание в таблицу рекордов самых больших известных простых чисел — слишком амбициозная задача для первой попытки. Соединив простые числа и интерес к криптографии, я придумал такую задачу:

Генерировать простые числа, способные генерировать ключи для алгоритма RSA

На момент написания этой статьи хорошей длиной ключей RSA считаются 2048 битов. Ключи RSA генерируются перемножением двух простых чисел, так что для получения 2048-битного ключа нам нужны два числа длиной примерно 1024 бита. Это ограничивает рамки задачи генерацией 1024-битных простых чисел. Теперь вы знаете, откуда взялось число из заголовка поста.

Читать далее
Всего голосов 56: ↑56 и ↓0+74
Комментарии24

Дешифрование паролей для доступа к потерянным Биткоин Кошелькам с помощью метода Gauss-Jacobi

Время на прочтение14 мин
Количество просмотров5K

В этой статье мы рассмотрим на примере метод Gauss-Jacobi которые применяют современные технологии, такие как предварительно обученная модель Bitcoin ChatGPT, что позволяют более эффективно решать сложные задачи в области цифровых технологий. Важно заметить что альтернативные алгоритмы, такие как Gauss-Jacobi играют ключевую роль и открывают новые горизонты для развития вычислительной математики.

Метод Gauss-Jacobi является итеративным численным методом для решения систем линейных уравнений. Он широко используется в различных областях, таких как криптография, криптоанализ, инженерия и вычислительная математика. Сеть Биткоин использует криптографические алгоритмы, такие как хэш-функции SHA-256, алгоритм подписи ECDSA, эллиптические кривые secp256k1, для создания публичных и приватных ключей, которые представляют собой точки на эллиптической кривой. Приватный ключ – это секретная числовая величина, которая используется для генерации публичного ключа, а публичный ключ – это точка на кривой, полученная путем вычисления с приватным ключом. Таким образом, эллиптические кривые secp256k1 лежат в основе криптографических механизмов, которые обеспечивают безопасности транзакций и защиты от различных атак. Современные технологии которые развивают предварительно обученную модель Bitcoin ChatGPT находят эффективные способы решение сложных криптографических задач, лежащих в основе алгоритмов, используемых в Биткоине.

Читать далее
Всего голосов 5: ↑2 и ↓3+1
Комментарии5

Ближайшие события

7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

Самые актуальные исследования в области квантовых коммуникаций: важные шаги и вызовы

Время на прочтение5 мин
Количество просмотров1.1K

В эпоху стремительного развития квантовых технологий и их интеграции в современные телекоммуникационные сети крайне важно быть в курсе последних достижений и вызовов, стоящих перед учеными и инженерами.

Исследования в области квантового распределения ключей (КРК) и квантовых сетей продолжают открывать новые горизонты, обещая высокий уровень безопасности и эффективности в передаче данных на большие расстояния.

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

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Уязвимость DeserializeSignature в сети Биткоин криптоанализ и недействительные подписи ECDSA

Время на прочтение18 мин
Количество просмотров1.9K

В этом исследовании мы рассмотрим уязвимость DeserializeSignature, которая позволяла злоумышленникам создавать недействительные подписи ECDSA в сети Биткоин. В криптографии цифровая подпись ECDSA – это математическая схема, позволяющая доказать подлинность цифрового сообщения или документа. В сети Bitcoin подписи используются для авторизации транзакций, подтверждая, что владелец определенного количества биткоинов действительно согласен на их перевод. Однако, уязвимость в функции DeserializeSignatureобнаруженная в 2023 году, позволяла злоумышленникам создавать недействительные подписи, которые могли быть приняты сетью как валидные.

Читать далее
Всего голосов 5: ↑3 и ↓2+3
Комментарии3

Локальный HTTPS в dev-окружении — простая настройка

Время на прочтение6 мин
Количество просмотров11K


Иногда в процессе веб-разработки требуется безопасное окружение в браузере, то есть HTTPS. Удобный способ сделать это — установить локальный УЦ и автоматизировать выдачу сертификатов на любые поддомены lcl.host и localhost. Это более функциональная и удобная альтернатива самоподписанным сертификатам.

Для установки локального УЦ есть инструменты lcl.host и mkcert, которые помогают быстро настроить и использовать HTTPS в dev-окружении.
Читать дальше →
Всего голосов 24: ↑18 и ↓6+17
Комментарии5

Реализация Streebog256 и Streebog512 на языке RUST

Уровень сложностиПростой
Время на прочтение18 мин
Количество просмотров2.8K

Как и планировалось, следом за реализацией семейства хэш-функций SHA, появляется Стрибог и тоже в двух версиях, для 256 и 512 бит на выходе. Надеюсь эта статья будет полезна другим студентам. Более опытные разработчики в комментариях приветствуются.

Весь код сохранен в репозитории GitVerse.

Читать далее
Всего голосов 16: ↑13 и ↓3+12
Комментарии14

Vo(IP) Really Simple: пишем простое VoIP решение

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров2.3K

Будучи поклонником suckless философии, минимализма и простоты в программном обеспечении, я не нахожу простых и маленьких VoIP решений. Программ связанных с VoIP очень много. Но это либо колоссальные системы для построения SIP-based экосистемы, либо что-то из мира WebRTC. Особняком выделяю Mumble -- популярное решение среди геймеров: централизованный сервер, указываешь его адрес и вот уже слышишь в наушниках другого человека. А нет ли чего ещё попроще?

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии4

Разбор вердикта суда в отношении разработчика Tornado Cash

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров15K

В результате беспрецедентного судебного разбирательства Алекс Перцев, ключевой разработчик инструмента для обеспечения приватности на базе Ethereum под названием Tornado Cash, был приговорен сегодня к более чем пяти годам тюремного заключения за свою работу над проектом. Вынесенный приговор был максимальным, запрошенным прокуратурой, и стал первым приговором разработчику, создавшему децентрализованный инструмент достижения приватности с использованием криптовалют.

Читать далее
Всего голосов 65: ↑58 и ↓7+68
Комментарии276

Генерация надёжных псевдослучайных чисел с ChaCha8Rand в Go

Время на прочтение4 мин
Количество просмотров1.7K

В версии Go 1.22 пакет math/rand/v2претерпел значительные изменения, а в частности - переход на ChaCha8Rand. Этот новый генератор представляет собой модификацию широко известного и проверенного временем шифра ChaCha8, который используется в протоколах TLS и SSH.

Читать далее
Всего голосов 10: ↑9 и ↓1+12
Комментарии7