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

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

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

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

Криптография перед эпохой квантовых вычислений

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

Недавно мы провели встречу экспертного сообщества по криптографии и квантовым технологиям, в которой приняли участие ведущие российские компании данной отрасли – «Российский квантовый центр», QApp, «Криптонит», «КриптоПро», «ЭЛВИС-ПЛЮС» и другие. На мероприятии обсудили развитие квантовых и гибридных вычислительных алгоритмов, разработку квантовых компьютеров и связанные с этим вызовы для криптографии. Эксперты обозначили ряд принципиальных моментов, подробнее о которых мы расскажем в этой статье.

Какие бывают квантовые компьютеры?

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

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

Где актуальны квантовые алгоритмы?

«Какими бы ни были по своей природе компьютеры будущего, сейчас нужно разрабатывать универсальные квантовые алгоритмы, без которых вычислительная система с любым количеством кубитов окажется дорогой и бесполезной железкой. В своей практике мы часто сталкиваемся с задачами комбинаторной оптимизации. Именно на них мы таргетируем свои исследования и разработку своих алгоритмов», — сказал эксперт компании QBoard Антон Божедаров.

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

Новости

Шифруем все: 5 надёжных инструментов для защиты данных

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

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

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

Пароль не нужен. Разбиение файла на зашифрованные фрагменты по схеме Шамира

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


После того как Google отказалась от паролей и перешла на Passkey по умолчанию создаётся впечатление, что концепция текстовых паролей (парольных фраз) сама по себе устарела. И действительно, в некоторых случаях можно добиться достаточного уровня безопасности без паролей вообще.

Например, простенькая утилита horcrux (крестраж*) разбивает файл на несколько зашифрованных частей (например, пять), причём для дешифровки и восстановления исходного текста не нужен пароль, а нужно найти и соединить несколько из этих частей (например, три). Предполагается, что сами отдельные части хранятся у разных людей в разных местах и/или надёжно спрятаны, например, в разных местах дома, сейфах, банковских ячейках и т. д.

*Крестраж — волшебный артефакт, созданный с помощью тёмной магии, из вселенной Гарри Поттера.
Читать дальше →
Всего голосов 32: ↑31 и ↓1 +30
Комментарии 11

Приключения Люцифера во «Дворце головоломок»

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

Трудно переоценить фундаментальный вклад Клода Шеннона в наше время. При этом Шеннон наш современник, а не какая-то совсем уж историческая личность. Безусловно, Да Винчи и Ньютон — не менее мощные фигуры в масштабах человеческой истории, но жили они давно. Шеннон не зря считается одним из «отцов информационной эпохи». Его труды легли в её основу, но сегодня речь пойдёт не о нём, а об одном из тех, кто развивал некоторые его идеи. Одними из важнейших результатов работы Клода Шеннона являются заложенные им основы современной криптографии. Именно его подход к криптографии как к науке и послужил её переходу из искусства в ремесло. В «теории связи в секретных системах» Шеннон впервые ввёл фундаментальные понятия криптографии.

Доподлинно неизвестно, кто первым придумал такой криптографический примитив, как блочный шифр, поскольку на протяжении веков многие криптографы разбивали открытый текст на блоки для шифрования, однако современные блочные шифры своим появлением обязаны именно Шеннону. В статье, на которую я сослался выше, он сформулировал условия стойкости блочного шифра. Такой шифр должен обладать свойствами перемешивания и рассеивания. Рассеивание — это свойство шифра, при котором один символ открытого текста влияет на несколько символов зашифрованного текста, в идеальном случае на все символы в пределах одного блока. При выполнении этого условия шифрование двух минимально различающихся между собой блоков текста даёт различные блоки зашифрованного текста. Свойство перемешивания влияет на способность шифра скрывать зависимости между символами открытого и зашифрованного текста, то есть снижает статистические и функциональные закономерности.

До 1970-х,по меткому выражению Дэвида Кана, криптография практически полностью находилась на службе бога войны Марса. Гражданское применение криптографии являлось уделом редких энтузиастов. Появление общих вычислений в начале 1970-х годов ясно показало, что гражданским правительственным учреждениям, банкам и другим организациям тоже необходимо защищать свои данные, однако большая часть полезной информации о шифровании находилась под колпаком силовых структур. В США на рынке существовало некоторое количество проприетарных систем, однако за пределами АНБ вряд ли кто-то знал, что такое надёжный алгоритм шифрования. При этом в других странах ситуация была ещё хуже.

ЧБД
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 0

Истории

Постквантовая защита WhatsApp, новый Matrix 2.0 и PoW-задачи для входа на сайт

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


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

Signal применяется для криптографической защиты сессий в одноимённом мессенджере, в Google RCS, WhatsApp и др. Опенсорсный протокол можно использовать в любом ПО.

Итак, что изменилось в криптографической подсистеме?
Читать дальше →
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 2

Функциональный Rijndael

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

Rijndael (авторы Vincent Rijmen, Joan Daemen) - алгоритм, признанный стандартом шифрования в 2001 году, ныне называемый AES (Advanced Encryption Standard).

Материалов про AES много, и я сразу выделю отличие этой статьи от других:

• приведена реализация шифра в функциональной парадигме;

• рассматривается полная версия Rijndael с 9 вариациями длин блока и ключа, а не урезанный AES до 3 вариаций;

• реализовано шифрование файлов;

• я старался объяснить математическую составляющую для неподготовленного читателя так, чтобы была понятна философия, смыслы и образы происходящего, а не мелкие технические детали;

• использоваться будет Haskell, однако для читателя знание этого языка не требуется, поскольку все конструкции будут пояснены.

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

Ральф Меркл: криптограф, крионик и теоретик молекулярной инженерии

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


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

Но мало кто знает автора этой идеи и одного из родоначальников современной криптографии — американца швейцарского происхождения Ральфа Меркла. А ведь это очень неординарная личность с разносторонними интересами, как и его жена.
Читать дальше →
Всего голосов 52: ↑52 и ↓0 +52
Комментарии 1

Как найти приватный ключ в бинарном коде от Bitcoin Lightning Wallet уязвимость в Quasar Framework

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

В этой статье мы заострим внимание на приложение для смартфонов iOS и Android популярный Биткоин Кошелек с поддержкой быстрых платежей через (Lightning network) BLW: Bitcoin Lightning Wallet. К большому сожалению многие автономные ноды мобильных приложении с открытым исходным кодом от LNbits Node Manager и Core Lightning подвергает ВЫСОКЕМУ РИСКУ потери всех денежных средств в различных криптовалютных монетах.

Разработчик David Shares из японской компании Bitcoin Portal опубликовал множество документов.

Разберем теоретическую основу: LNbits – это бесплатная система учетных записей для многих мобильных приложений, которые работают с различными криптовалютными кошельками. Изначально широкую популярность LNbits Node Manager получила с развитием Bitcoin Lightning Wallet (BLW) т.к. развитие некастодиальных и автономных нодов для Bitcoin SPV, предназначенный для Android и iPhone с функциональностью Node.js. Благодаря автономным нодам вы имеете полный контроль над своим средством и вам необходимо самостоятельно управлять своими платежными средствами (в отличие от других мобильных приложении с криптовалютными кошельками).

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

Изучаем Q#. Не будь зашоренным…

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

Алгориитм Шора — квантовый алгоритм факторизации (разложения числа на простые множители), позволяющий разложить число M за время O((logM)^3) используя O(log M) логических кубитов.

Алгоритм Шора был разработан Питером Шором в 1994 году. Семь лет спустя, в 2001 году, его работоспособность была продемонстрирована группой специалистов IBM. Число 15 было разложено на множители 3 и 5 при помощи квантового компьютера с 7 кубитами.

Алгоритм Шора состоит из 2-х частей - квантовых и классических вычислений.

Квантовая часть алгоритма отвечает за определение периода функции с помощью квантовых вычислений.

Классические вычисления решают задачу как по найденному периоду степенной функции найти разложение на сомножители.

Практически, схема этого алгоритма полностью повторяет схему алгоритма Саймона, с отличием в последнем шаге - вместо применения оператора Адамара перед измерением входного регистра, используется оператор преобразования Фурье.

А какие есть ещё варианты определить период функции используя квантовые вычисления?

Когда-то ранее я писал статьи про способы сравнения (поиска фрагмента) изображений, поиска частоты сердечных сокращений с использованием операции вычисления скалярного произведения, которую я делал с помощью свёртки на основе БФП.

Фурье-вычисления для сравнения изображений

Определение частоты сердечных сокращений методом корреляции с использованием быстрых Фурье преобразований

а так же начал повторять эту технологию при квантовых вычислениях

Изучаем Q#. Алгоритм Гровера. Не будите спящего Цезаря

Так почему бы не повторить успешный успех и, заодно, обобщить теорию вопроса?

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

Повышаем качество обслуживания трафика в российских криптошлюзах: нюансы внедрения QoS

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

Вспомните обычный рабочий созвон или видеоконференцию – с задержкой связи, эхом или торможением видео. Как правило, это происходит из-за плавающей пропускной способности каналов связи. И если для одних видов трафика (электронная почта или обмен короткими текстовыми сообщениями), подобные задержки некритичны, то для других (голосовые сообщения, видеотрансляции) они становятся серьезной проблемой. При этом безопасность все равно нужно обеспечивать, да так, чтобы средства наложенной защиты, в том числе для ГОСТ-шифрования, не вызывали дополнительных лагов в работе прикладных сервисов. Для этого криптомаршрутизаторы (они же криптошлюзы) должны поддерживать качество обслуживания (Quality of Service – QoS) различных видов трафика, которые конкурируют между собой за ресурсы различных каналов. В этой статье мы разберем, как обеспечивается QoS в зарубежном оборудовании, и изучим нюансы внедрения этих механизмов в российские криптошлюзы.

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

Изучаем Q#. Обучаем перцептрон

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

Базовым элементом построения нейросетей, как мы знаем, является модель нейрона, а, соответственно, простейшей моделью нейрона, является перцептрон.

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

Обобщенная схема нейрона представляет собой функцию f(SUM Wi*xi - W0)

Здесь:

x1,...,xn – компоненты вектора признаков x=(x1,x2,...,xn);

SUM – сумматор;

W1,W2,...,Wn – синоптические веса;

f – функция активации; f(v)= { 0 при v < 0 и 1 при v>0 }

W0 – порог.

Таким образом, нейрон представляет собой линейный классификатор с дискриминантной функцией g(X)=f(SUM Wi*Xi - W0).
И задача построения линейного классификатора для заданного множества прецедентов (Xk,Yk) сводится к задаче обучения нейрона, т.е. подбора соответствующих весов W1,W2,...,Wn и порога W0.

Классический подход обучения перцептрона хорошо известен

• Инициализируем W0,W1,W2,...Wn (обычно случайными значениями)

• Для обучающей выборки (Xk,Yk) пока для всех значений не будет выполняться f(SUM Wi*Xki - W0)==Yi повторяем последовательно для всех элементов

W = W + r(Yk - f(SUM Wi*Xki - W0)) * Xk*, где 0 < r < 1 - коэффициент обучения

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

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

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

Для понимания данного туториала вам потребуются базовые знания по

• нейросетям

• квантовым вычислениям (кубиты и трансформации)

• программированию на Q-sharp

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

Milk Sad уязвимость в библиотеке Libbitcoin Explorer 3.x. Крупная кража на $ 900 000 у пользователей Биткоин Кошельков

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

Исследователи компании «Slowmist» проводят регулярное исследование сферы безопасности блокчейна Биткоин. Они обнародовали уязвимость в библиотеке Libbitcoin Explorer 3.x, которая позволила злоумышленникам украсть более $ 900 000 у пользователей Биткоин Кошельков (BTC).

По данным аналитиков, эта уязвимость может также затронуть пользователей Ethereum, Ripple, Dogecoin, Solana, Litecoin, Bitcoin Cash и Zcash, которые используют Libbitcoin для создания учетных записей.

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

Реверс мобильных приложений на cocos2dx

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

Хочу поделиться своим опытом в реверс инженеринге приложения на lua cocos2d-x. Файлы приложения зашифрованы xxtea, а ключи шифрования находятся в .so файле внутри приложения.

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

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

.NET 7 против российской криптографии. Часть 2. Штампы времени

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

Практически неотъемлемой частью формирования электронной подписи стало формирование штампов времени (TS) на подпись. С их помощью обеспечивается доверенное подтверждение времени подписания документа. Со штампами времени в .NET 7 та же беда, что и с CMS-сообщениями - отсутствие нативной поддержки российских алгоритмов хэширования и электронной подписи на уровне фреймворка. Но, благо, старый добрый WinAPI и здесь поможет обойти проблему.

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

PKI на ENS. Часть 2. Proof-of-Concept

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

Небольшие правки в первой части и программа для связки пары ключей для подписи и домена(имени).

Использование обратного резолвинга(хеш на домен) в смарт-контракте ENS для привязки пары ключей для подписи с доменом(или именем).

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

На что способен КриптоПро JCP? Туториал по валидации отсоединенной электронной подписи

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

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

Меня зовут Вадим, я Java-разработчик SimbirSoft. В этой статье я расскажу, как на одном из проектов мы реализовали возможность валидации электронной подписи с помощью КриптоПро JCP. Этот фреймворк оказался хорошей альтернативой КриптоПро SVS после того, как последний попал под санкции Microsoft. Впоследствии на других подобных проектах я убедился в том, что решение рабочее и наиболее подходящее под бизнес-цели заказчиков. Прежде всего это банки, нанимающие организации и другие юрлица, где ведется электронный документооборот.

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

Что общего у приватности и феодализма

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

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

Децентрализованные проекты обычно не говорят «приватность», а говорят, что данные «принадлежат пользователю» (data ownership). А в чем разница? Мы придумали забавную аналогию, и хотим поделиться.

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

Криптография с открытым ключом: ключи RSA

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

Уверен, что вы хотя бы раз создавали пару ключей RSA, напримет, потому, что вам нужно было подключиться к GitHub, и вы хотели избежать необходимости вводить свой пароль каждый раз. Вы добросовестно следовали инструкциям по созданию SSH-ключей, и через пару минут всё было готово.

Но знаете ли вы, что именно вы делали? Углублялись ли вы в детали процесса?

Знаете ли вы, что содержится в файле ~/.ssh/id_rsa? Почему ssh создает два файла с разным форматом? Замечали ли вы, что один файл начинается со слов ssh-rsa, а другой — с -----BEGIN RSA PRIVATE KEY----- ? Вы замечали, что иногда в заголовке второго файла отсутствует часть RSA и просто написано BEGIN PRIVATE KEY?

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

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

Изучаем Q#. Статистическое сравнение двух последовательностей чисел

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

Добро пожаловать в новый мир новых технологий вычислений!

В быту, когда мы смотрим на разные предметы, мы пытаемся понять - похожи ли они или нет, и на сколько они похожи.

Так и в математике - когда мы смотрим на последовательностей чисел, мы пытаемся понять - похожи ли они или нет, и насколько они похожи.

Одним из таких критериев "похожести" является совпадение частотных характеристик этих последовательностей.

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

Для понимания данного туториала вам потребуются базовые знания по

теории вероятности

алгебре

булевым функциям

свёртке, корреляции, скалярному произведению

квантовым вычислениям (кубиты и трансформации)

программированию на Q-sharp

Добро пожаловать, дорогу осилит идущий ...
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 3

Уитфилд Диффи — ученый и шифропанк

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

Этого человека, немного похожего на худощавого Санту, знают, наверное, все без исключения специалисты по криптографии. Уитфилд Диффи — не только автор концепции криптографии с открытым ключом, но также один из первых и самых известных в мире шифропанков. Диффи — один из немногих лауреатов премии Тьюринга, присуждаемой за выдающиеся достижения в сфере IT, а также научный сотрудник Фонда Маркони и института Исаака Ньютона. Вот история человека, внесшего огромный вклад в информационную безопасность и сохранение конфиденциальности личной информации миллионов пользователей интернета по всему миру.
Читать дальше →
Всего голосов 41: ↑41 и ↓0 +41
Комментарии 8

Вклад авторов