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

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

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

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

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

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

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

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

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

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

Читать далее

Новости

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

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

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

Читать далее

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

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

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

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

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

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

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

Поехали!

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

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


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

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

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

Истории

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

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

В ходе нашего исследования, охватывавшего записи 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 мин
Количество просмотров1.7K

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

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

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

Криптография Средних веков: от алхимических шифров до магических квадратов

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

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

Что же представляли из себя средневековые шифры? Являлись ли они простой «абракадаброй» или действительно содержали ключ к тайным знаниям? Сегодня на эти вопросы ответит Анастасия Ашаева, кандидат исторических наук, старший научный сотрудник московского Музея криптографии.

Читать далее

Ресурсы для OSINT-исследования ransomware

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

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

Читать далее

Парольная защита статичной HTML-страницы на JS

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


Обычно парольная защита производится через веб-сервер, который проверяет пароль и выдаёт контент. Стандартный способ: .htaccess и htpasswd. Но что, если нужно выложить зашифрованную веб-страницу и файлы на публичном хостинге, где у нас нет контроля над сервером? Эту проблему решают инструменты StatiCrypt и Portable Secret.

Для шифрования HTML перед публикацией StatiCrypt использует AES-256 и WebCrypto, а расшифровка происходит с помощью ввода пароля в браузере на стороне клиента, как показано в демо (пароль test).

StatiCrypt генерирует статическую страницу, которую можно безопасно заливать на любой хостинг, в том числе бесплатный сторонний хостинг, такой как GitHub Pages.
Читать дальше →

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

27 марта
Deckhouse Conf 2025
Москва
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

Интернет будущего: от свободы к централизации и обратно

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

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

Читать далее

Низкоресурсный блокчейн для Интернета вещей: как с пользой «скрестить ежа с ужом»

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

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

Казалось бы, между ресурсоемким по своей природе блокчейном и Интернетом вещей, построенном на использовании устройств с ограниченными ресурсами, лежит огромная пропасть. Однако многие из свойств блокчейна оказались настолько востребованными в Интернете вещей, что появилось целое направление блокчейн-технологий – низкоресурсный блокчейн (Lightweight Blockchain, LWB), в рамках которого было предложено множество подходов к созданию блокчейнов с пониженными требованиями к ресурсам и, следовательно, к их адаптации для реализации в системах Интернета вещей и, в частности, в устройствах с низкими вычислительными ресурсами.

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

Читать далее

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

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

Квантовое распределение ключей (QKD) [1] является одним из наиболее стремительно развивающихся направлений в современной науке. Важнейшим преимуществом QKD является безопасность передачи персональных данных квантово-распределенными ключами, основанная на законах квантовой физики, а не на математических алгоритмах. Последние могут быть взломаны, а вот обмануть фундаментальные законы физики не представляется возможным.

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

Читать далее

Реализация шифра «Магма» на языке RUST

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

Привет! Сегодня мы продолжаем реализовывать шифрование. В этой статье мы рассмотрим алгоритм шифра "Магма", который был разработан и использовался в СССР.

Читать далее

Криптон. Оживляем «криптографический танк» из девяностых

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров14K
Приветствую всех!
Не так давно я рассказывал про построенный на базе «гражданского» девайса портативный шифратор ‭«Электроника МК-85С‭». Самое время поведать миру о ещё одном, не менее значимом, но чуть менее известном девайсе — отечественном криптопроцессоре «Блюминг-1», а также об алгоритме, который он реализовывал.



Итак, в сегодняшней статье рассмотрим ещё одного представителя российской шифровальной техники — построенную на данном чипе плату шифрования ‭«Криптон‭». Узнаем, как работает эта штука и где она применялась. Заодно посмотрим на её софт и попробуем что-то зашифровать. Как водится, будет много интересного.
Читать дальше →

Получаем персональные данные пользователей с Госуслуг: Интеграция с ЕСИА на Java

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

В эпоху цифровизации обеспечение надежной аутентификации и авторизации пользователей становится основой для безопасного доступа к различным государственным сервисам. Единая система идентификации и аутентификации (ЕСИА) предоставляет инструменты для выполнения этих задач в России. В этой статье я поделюсь опытом интеграции с ЕСИА с использованием OpenID Connect 1.0, а также предоставлю пример реализации интеграции на Java с ЕСИА для получения персональных данных пользователя. 

Читать далее

CRUS: принципиально новая архитектура работы с данными

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

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

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

Ответить на все вопросы
1
23 ...