Как стать автором
Поиск
Написать публикацию
Обновить
71.85

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

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

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

Разбираем байты постквантовой ML-KEM на примере «браузерного» TLS

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

В TLS 1.3 постквантовые криптосистемы используются в составе гибридных схем, совместно с обычными, классическими, криптосистемами. Посмотрим на дампы TLS-сообщений и, на примере дампов, попробуем разобраться с основами практического использования ML-KEM - пока что единственного постквантового варианта для распространённых браузеров.

Читать далее

Уровни поддержки и сопротивления – основа трейдинга. Часть 2

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

Определение уровней поддержки и сопротивления на дневных графиках

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

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

Читать далее

Ад — это чересчур уверенные в себе разработчики, пишущие собственную криптографию

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

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

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

Я заметил такую тенденцию (как в примере с Session): разработчики некорректно утверждают, что не реализуют собственную криптографию, ведь они используют низкоуровневую криптографическую библиотеку.

Эта ошибка свойственна не только сомнительным приложениям, форкающим мессенджеры со сквозным шифрованием, чтобы вырезать прямую секретность (forward secrecy).
Читать дальше →

CodeSigning для разработчиков под Windows по новым правилам

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

С 1.06.2023 году вступили в действие новые требования к сертификатам для подписи кода (aka CodeSigning), которые значительно осложнили жизнь разработчиков ПО. Суть изменений - прощай старый добрый PFX, закрытые ключи теперь должны быть неизвлекаемыми и некопируемыми. Примеры изменений у поставщиков: раз, два, три - в общем-то у всех одно и тоже.

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

Безопасность должна быть более безопасной

Оптическая криптография: нейронные сети, голограммы, лазеры и этанол

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


Развитие технологий коммуникации сопряжено с двумя соперничающими процессами — развитием информационной безопасности и развитием методов ее обхода. Это вечное противостояние весьма полезно, так как заставляет технологии цифровой безопасности развиваться и не стоять на месте. Ученые из Института электронных структур и лазеров (Греция) разработали новую оптическую систему шифрования, которую невозможно взломать классическими методами. Из чего состоит данная система, как она работает, и действительно она так надежна? Ответы на эти вопросы мы найдем в докладе ученых.
Читать дальше →

Cryptohack. Решение CTRIME

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

Приветствую, Хабр! Я продолжаю освещать режимы шифрования блочных шифров и сегодня расскажу про режим CTR (Counter), а также разберу решение задачи CTRIME, в которой этот режим используется. При этом в задаче напрямую не используется уязвимость самого режима шифрования, решение будет построено на основе уязвимости CRIME. Впрочем, про уязвимость в CTR я тоже расскажу.

Читать далее

От чего зависит безопасность квантовой сети? Часть 2

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

Продолжаем говорить о безопасности квантовой сети.

Проблема безопасности при передаче ключей

При рассмотрении производительности сети КРК мы используем следующие предположения:

1.    Узлы являются доверенными. Протокол аутентификации работает должным образом и даёт сбой с вероятностью не более εauth для каждого узла. Все узлы атакуются по отдельности и одновременно в каждом сеансе передачи ключей.

2.    КРК-соединения могут быть любого типа (через оптоволокно, свободное пространство, соединение «точка-точка» или с недоваренными узлами между ними, например, см. рис. 3),  должны работать должным образом между всеми узлами, и каждое соединение независимо должно быть εqkd-безопасным (для простоты мы считаем их одинаковыми для каждого соединения). Все КРК-соединения атакуются по отдельности и одновременно в каждом сеансе передачи ключей.

3.    Расстояние между двумя соседними узлами не превосходит предельного. Предельным должно рассматриваться расстояние между наиболее удалёнными друг от друга связанными (через c − 1) узлами.

Читать далее

Менеджер паролей для бизнеса — большой обзор 2025

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

Стек технологий безопасности для рабочих мест будет неполным без программ управления паролями для сотрудников. Почему?

Читать далее

Криптоанализ шифра Виженера. Как реализовать и взломать

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

Сказал как-то один французский дипломат...

Что же он такого мог сказать в 16 веке ? Разберемся в этой статье.

Читать далее

Станет ли ИИ катастрофой для сквозного шифрования?

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

Недавно я обнаружил потрясающую новую статью How to think about end-to-end encryption and AI, написанную группой исследователей из Нью-Йоркского и Корнеллского университетов. Я очень рад прочтению этой статьи, потому что, хоть не согласен со всеми её выводами, она стала первой попыткой ответа на невероятно важные вопросы.

С одной стороны, максимума мой интерес к этой теме достиг, когда были разработаны системы ИИ-помощников наподобие защиты от мошеннических звонков Google и Apple Intelligence. Обе эти системы нацелены на то, чтобы ИИ был задействован практически во всех частях телефона, даже в личных сообщениях. С другой стороны, я размышлял о негативном влиянии ИИ на конфиденциальность из-за недавних европейских обсуждений законов об обязательном сканировании контента, благодаря которым системы машинного обучения смогут сканировать все отправляемые личные сообщения.

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

Но давайте начнём с чего-то попроще.
Читать дальше →

Не пора ли переходить на постквантовые криптоалгоритмы уже сейчас?

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

Приветствую, Хабр! Долгое время я принадлежал к числу тех, кто скептически относится к возможностям квантового криптоанализа в частности и квантовых вычислений вообще. Мое отношение к этому вопросу кардинально изменилось после того, как я услышал один из докладов на прошедшей конференции «РусКрипто», авторы которого очень четко показали преимущества криптоанализа на основе гибридных вычислений, совместно использующих традиционные и квантовые компьютеры, по сравнению с классическим криптоанализом.

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

Предлагаю вашему вниманию статью с анализом степени срочности перехода на постквантовые алгоритмы. Справедливости ради, я приведу и недавние высказывания известных экспертов-скептиков, но основная мысль статьи состоит в том, что откладывать далее переход на постквантовые криптоалгоритмы невозможно – начинать их реализацию и думать об их внедрении необходимо прямо сейчас, чтобы, скажем, через 5 лет такой переход был уже осуществлен. Иначе можем опоздать (прежде всего, из-за усиливающихся с каждым годом возможностей гибридных вычислений).

Подробности – далее.

Читать далее

Merkle-tree: Как проверить целостность данных без полного доступа?

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

Хэширование — простой и надёжный способ проверить целостность данных. Но как быть, если нужно удостовериться, что часть данных принадлежит определённому набору? Например, проверить отдельную транзакцию в блоке Bitcoin или чанк файла в BitTorrent? Для этого используется уникальная структура данных — Merkle-tree. В этой статье вы узнаете, как с её помощью решать задачи проверки данных без доступа к их полному объёму.

Читать далее

TMA Wallet — некастодиальный MPC воллет для вашего Telegram Mini App

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

Всем привет! Думаю, все уже знают, что в телеге уже год как бум мини-аппов, все тапали хомяка. Подавляющее большинство из них связаны с криптой. Многие хотят внутри приложения давать своим пользователям кошелёк (EVM, TON или Solana, etc.), как некий виртуальный счёт, который можно пополнить, выводить средства, и, самое главное, дергать смарт-контракты.

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

Сложное и неудобное решение - кошелёк, который юзер должен записать на бумажке и следить за его безопасностью сам. В этом случае, вам лучше вообще использовать WalletConnect или не делать миниапп вообще. Правда, в этом случае UI миниаппа превращается в ад, где юзер должен подтверждать каждое действие во внешнем приложении.

Мы искали для нашего миниаппа вариант, который бы давал безопасность некастодиального кошелька, но с максимально гладким UX/UI. И нашли.

В этой статье я хочу сделать обзор TMA Wallet (npm-пакет, сайт, github) - opensource некастодиального multi-party кошелька, подходящего для любых чейнов, работающего на базе недавно появившееся API Telegram Cloud Storage.

Поехали!

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

Сквозное шифрование в облаках. Уязвимости — во всех сервисах

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


В наше время большинство пользователей хранят файлы в том или ином облачном хранилище: Google Drive, Яндекс.Диск, Dropbox, OneDrive и т. д. Благодаря низкой стоимости такие сервисы очень популярны. Их аудитория оценивается более чем в 4 млрд человек, а объём хранимых данных — порядка экзабайта. Почти все провайдеры шифруют файлы на своих серверах. Но если сам провайдер скомпрометирован, такая система не обеспечивает никакой защиты.

Поэтому отдельные сервисы реализовали сквозное шифрование (E2EE), когда не сервер, а пользователь контролирует ключи шифрования.

В основном, эти сервисы предлагают услуги для коммерческих клиентов. Например, MEGA, Nextcloud, Sync, Tresorit, Seafile, Icedrive и pCloud. К сожалению, реальность далека от рекламных заявлений. Независимое исследование показало, что все перечисленные провайдеры страдают от уязвимостей и архитектурных изъянов.
Читать дальше →

Как мы взломали 512-разрядный ключ DKIM в облаке менее чем за $8

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

В ходе нашего исследования, охватывавшего записи SPF, DKIM и DMARC на 1 миллионе самых популярных веб-сайтов мы с удивлением обнаружили более 1 700 открытых DKIM-ключей длиной менее 1 024 бит каждый. Эта находка нас удивила, поскольку RSA-ключи короче 1 024 бит расцениваются как небезопасные, и их не рекомендуется использовать в DKIM с 2018 года, когда был введён в действие документ RFC 8301.

Просто из любопытства мы решили проверить, а удастся ли нам взломать один из таких ключей. Мы стремились извлечь закрытый ключ из открытого RSA-ключа, так, чтобы можно было подписывать им электронные сообщения, выдавая себя за их подлинного отправителя. Кроме того, нас занимало, пройдут ли DKIM-верификацию электронные письма, подписанные таким скомпрометированным ключом. Мы решили проверить крупнейших провайдеров электронной почты —  в частности, Gmail, Outlook.com и Yahoo Mail — вдруг они просто с порога откажутся проверять цифровые подписи, сгенерированные настолько коротким ключом.

Для нашего эксперимента мы выбрали домен redfin.com, на котором нашли 512-разрядный открытый RSA-ключ по адресу key1._domainkey.redfin.com (сейчас он уже не доступен):

Читать далее

Совместные конфиденциальные вычисления: как это работает

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

Моя основная деятельность — конфиденциальная обработка данных. Это такая развивающаяся область науки и техники, в которой часто возникает что-то новое, поэтому терминология ещё не устоялась. То, чем я занимаюсь, по-английски называется Secure Multi-Party Computation, а на русский переводят как совместные или многосторонние вычисления. Однажды я видел перевод: «многопартийные вычисления», – но, надеюсь, это единичный случай. Лично мне нравится вариант: «конфиденциальные вычисления», который использует википедия. Его буду использовать и я.

Представьте, вы собрали какие-то ценные данные, зашифровали их и сохранили на диске. Таким образом, вы защищаете данные во время хранения (data-at-rest). Далее, предположим, вам нужно передать данные по сети с одного сервера на другой. Серверы устанавливают защищённое соединение и обмениваются данными – снова зашифрованными. Так серверы защищают данные во время передачи (data-in-transit). Пока всё знакомо и понятно. Далее вы собираетесь делать то, ради чего вы эти данные собирали, хранили и передавали: использовать их. Что-нибудь посчитать, агрегат какой-нибудь, статистику или даже модельку обучить. Анализировать зашифрованные данные —, затруднительно, поэтому вы их расшифровываете и… делате беззащитными.

Во-первых, это странно: вы старательно защищали данные, когда хранили и передавали, и вдруг почему-то перестали. Во-вторых, это опасно: атаки, утечки, несанкционированный доступ, всё, что угодно может случиться, когда данные уязвимы. Ну, и в-третьих, расшифровывать не обязательно: существуют методы, защищающие данные, когда они используются (data-in-use). Совместные конфиденциальные вычисления – один из них.

Читать далее

Оживляем eToken NG-OTP: USB-ключ для SSH и аппаратный генератор одноразовых паролей

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

К 2025 году сложился достаточно насыщенный вторичный рынок USB-ключей eToken. Встретить их по ценам от нуля до весьма символических можно как на просторах барахолок, так и из рук в руки, как штучно, так и коробками. В то же время eToken NG-OTP является гостем редким и весьма интересным.

В данной статье речь пойдет об Aladdin eToken NG-OTP 72k (Java) с семисегментным ЖКИ, однако многие рассуждения полностью справедливы и для других разновидностей из этого семейства (в том числе без Java и с матричным ЖКИ) и частично справедливы для любых брелоков eToken. Поэтому если у вас фиолетовый eToken без дисплея, тоже милости прошу.

Статья разделена на две относительно независимые половины: аутентификация на сервере с помощью USB-ключа и задействование второго фактора — одноразового пароля.

Читать далее

Cryptohack. Решение Flipping Cookie, Lazy CBC

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

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

Читать далее

Реализация шифра «Кузнечик» на языке RUST

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

Привет Сегодня мы рассмотрим, заключительный в цикле материалов, Российский шифр «Кузнечик».

«Кузнечик» — это современный стандарт шифрования в России и за рубежом. Опубликован был в 19 июня 2015 года. В наступающем 2025 году будем отмечать его юбилей.

Читать далее

5 задач на взлом шифров

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

Известна зловещая история о том, как Мария Стюарт лишилась головы из‑за одноподстановочного шифра — задолго до вымышленных баек про «Золотого Жука» или «Пляшущих Человечков». Нынче подобные шифры вызывают снисходительную улыбку даже у школьников — чтобы расшифровать их, обычно и компьютер‑то не требуется.

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

Цезарь, Виженер, Потоковый, RSA, Плейфер