Jump to content
  • entries
    54
  • comments
    2
  • views
    23905

About this blog

Что мы знаем про решетчатую атаку?

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


 

Цитата

ECDSA — это особая форма алгоритма цифровой подписи (DSA). DSA — это довольно распространенная схема цифровой подписи , которая определяется тремя алгоритмами: генерация ключа, подпись и проверка. Алгоритм генерации ключей генерирует закрытый и открытый ключи; закрытый ключ отвечает за создание подписей; а открытый ключ отвечает за проверку подписей. Алгоритм подписи принимает в качестве входных данных сообщение и закрытый ключ и создает подпись. Алгоритм проверки принимает в качестве входных данных сообщение, подпись и открытый ключ и возвращает значение true или false, указывая, является ли подпись действительной.


DSA определяется для любой математической группы, и эта схема безопасна до тех пор, пока проблема дискретного логарифмирования сложна для этой группы. Обычно используемая группа представляет собой целые числа по модулю простого числа p . Наряду с этой группой у нас будет генератор группы g и некоторая криптографически безопасная хэш - функция H. Мы можем предположить, что p , g и H будут общеизвестны.

Генерация ключей работает, сначала случайным образом выбирая значение x из целых чисел по модулю p . Затем вычисляется значение y = g x mod p . Закрытый ключ подписи имеет значение x , а открытый ключ — y . Ключ подписи должен храниться в секрете, поскольку именно он позволяет делать подписи.

 

Алгоритм подписи создает подпись из сообщения m и секретного ключа x . Сначала генерируется случайный элемент группы k . Это известно как одноразовый номер , что важно, когда речь идет об атаках. Затем вычисляются значения r = g k mod p и s = ( k -1 ( H ( m ) + xr )) mod p . Здесь k - 1 — обратная группа, а H ( m ) — результат вычисления хэша mи интерпретация результата как целое число по модулю p . Подпись определяется как пара ( r , s ). (Примечание: если одно из значений r или s равно 0, алгоритм перезапускается с новым значением k ).

 

Алгоритм проверки получает на вход подпись ( r , s ), сообщение m и открытый ключ y . Пусть ŝ = s - 1 , тогда алгоритм выдает истину тогда и только тогда , когда r , s ≠ 0 и r = ( g H ( m ) y r ) ŝ . Эта проверочная проверка работает, потому что g H ( m ) y r = g H ( m )+ xr = g ks, и поэтому (gH(m)yr)ŝ = gk = r.

 

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

DSA определяется над математической группой. Когда DSA используется с группой эллиптических кривых в качестве этой математической группы, мы называем это ECDSA. Группа эллиптических кривых состоит из точек эллиптических кривых, которые представляют собой пары ( x , y ), которые удовлетворяют уравнению y 2 = x 3 + ax + b для некоторых a , b . Для этого сообщения в блоге все, что вам нужно знать, это то, что, используя эллиптические кривые, вы можете определить конечную группу, что означает, что вы получаете генератор группы, g (точка эллиптической кривой), и операции сложения и скалярного умножения точно так же, как вы можете с целыми числами. Поскольку они образуют конечную группу, генератор,g , будет иметь конечный порядок, p . Этот пост в блоге не будет объяснять или требовать, чтобы вы знали, как работают эти операции с эллиптическими кривыми.

 

ECDSA работает так же, как DSA, но с другой группой. Секретный ключ x по-прежнему будет случайным значением из целых чисел по модулю p . Теперь открытый ключ y по- прежнему вычисляется как y = g x , за исключением того, что теперь g является точкой эллиптической кривой. Это означает, что y также будет точкой эллиптической кривой (раньше y был целым числом по модулю p ). Еще одно отличие заключается в том, как мы вычисляем значение r . Мы по-прежнему генерируем случайный одноразовый номер k как целое число по модулю p , как и раньше. Мы вычислим g k , но опять же,g — точка эллиптической кривой, и, следовательно, g k — тоже. Следовательно, мы можем вычислить ( x k , y k ) = g k и установить r = x k . Теперь значение s можно вычислить, как и раньше, и мы получим нашу сигнатуру ( r , s ), которая по-прежнему будет целым числом по модулю p , как и раньше. Чтобы проверить, нам нужно сделать поправку на тот факт, что мы вычислили r немного по-другому. Итак, как и прежде, мы вычисляем значение ( g H ( m ) y r )ŝ , но теперь это значение является точкой эллиптической кривой, поэтому мы берем x-координату этой точки и сравниваем ее с нашим значением r .

Восстановление секретных ключей из повторно используемых одноразовых номеров

 

Теперь, когда мы понимаем, что такое ECDSA и как он работает, давайте продемонстрируем его хрупкость. Опять же, поскольку это схема цифровой подписи, крайне важно, чтобы секретный ключ никогда не раскрывался никому, кроме лица, подписывающего сообщение. Однако, если подписывающее лицо когда-либо выпускает подпись, а также выпускает использованный одноразовый номер, злоумышленник может немедленно восстановить секретный ключ. Скажем, я освобождаю подпись ( r , s ) для сообщения m и случайно обнаруживаю, что использовал одноразовый номер k .

Цитата

 

Поскольку s = ( k -1 ( H ( m ) + xr )), мы можем легко вычислить секретный ключ:

s = (k-1(H(m) + xr))

ks = H(m) + xr

ks – H(m) = xr

x = r-1(ks – H(m))

 

 

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

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

Цитата

 

Пусть ( r , s 1 ) и ( r , s 2 ) будут двумя подписями, созданными на сообщениях m 1 и m 2 (соответственно) из одного и того же одноразового номера, k - поскольку они имеют один и тот же одноразовый номер, значения r будут одинаковыми, так что это очень легко обнаруживается злоумышленником:

s1 = k-1(H(m1) + xr) and s2 = k-1(H(m2) + xr)

s1 – s2 = k-1(H(m1) – H(m2))

k(s1 – s2) = H(m1) – H(m2)

k = (s1 – s2)-1(H(m1) – H(m2))

 

 

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

 

Давайте на минутку переварим это.


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

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

 

В блокчейне Биткоина мы нашли некую транзакцию:  08d917f0fee48b0d765006fa52d62dd3d704563200f2817046973e3bf6d11f1f для Биткоин Адреса: 15N1KY5ohztgCXtEe13BbGRk85x2FPgW8

и нам удалось размножить фейковые подписи и применить решетку, где с помощью скрипта на пайтоне algorithmLLL.py  с установкой пакетов в GOOGLE COLAB

INSTALL >> SAGE + ECDSA + BITCOIN + algorithm LLL

Нам удалось получить Private Key к Bitcoin Wallet из одной слабой транзакции в ECDSA.
Данный видеоматериал создан для портала CRYPTO DEEP TECH для обеспечения финансовой безопасность данных и криптографии на эллиптических кривых secp256k1 против слабых подписей ECDSA в криптовалюте BITCOIN

 

Entries in this blog

Исследование уязвимости Signature Malleability и компрометации приватного ключа в подписи Bitcoin

CRYPTO DEEP TECH     Уязвимость, известная как Signature Malleability, представляет собой серьезную угрозу для криптовалют Bitcoin и Ethereum, использующих алгоритм цифровой подписи на эллиптических кривых (ECDSA). Эта уязвимость позволяет злоумышленникам манипулировать подписями, создавая недействительные, но приемлемые для системы подписи. В данной статье рассматриваются механизмы эксплуатации этой уязвимости, ее последствия для безопасности криптовалют и

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Манипуляции с координатами кривой Jacobian исследование уязвимости поддельной подписи с помощью декодируемого файла Биткоин Кошелька

Манипуляции с координатами кривой Jacobian исследование уязвимости поддельной подписи с помощью декодируемого файла Биткоин Кошелька CRYPTO DEEP TECH     В данной статье рассмотрим на примере уязвимость, связанная с реализацией кривой Якоби (Jacobian Curve). В последние годы криптовалюты, такие как Биткоин, стали важной частью финансовой экосистемы. Однако с ростом их популярности увеличивается и количество угроз, связанных с кибербезопасностью. Одной из таких

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Vector76 Attack: исследование и предотвращение угроз для сети Биткоин детальный криптоанализ на основе реальных данных

CRYPTO DEEP TECH   С развитием криптовалютных технологий и увеличением популярности Bitcoin, на рынке появились различные программные обеспечения, такие как Flash Bitcoin Software и Fake BTC Software. Эти программы могут привести к катастрофическим последствиям на экосистему Bitcoin. В данной статье мы рассмотрим на примере реальных данных, что представляют собой эти программные обеспечения, как они работают и какое влияние оказывают на криптовалюту Bitcoin, а также

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Fuzzing Bitcoin: Поиск критической уязвимости и новые методы защиты криптовалюты

CRYPTO DEEP TECH     В криптографических приложениях и криптовалютных кошельках есть критически важные компоненты, такие как генерация ключей, шифрование/дешифрование, подпись транзакций и.т.д. Эти компоненты должны быть основными целями для Фаззинг-тестирования. Использование Фаззинг-тестирования в криптографических приложениях и криптовалютных кошельках помогает выявлять и устранять уязвимости, повышая безопасность и надежность программного обеспечения.

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

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

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

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Blockchain-интеграция: возможности API и веб-сервисов для безопасных Биткоин транзакций

CRYPTO DEEP TECH В современном мире цифровых технологий тема блокчейна приобретает все большее значение. Блокчейн-технологии обещают революцию в различных сферах экономики и информационных систем, предоставляя надежные и прозрачные способы ведения записей. Одним из ключевых аспектов внедрения и использования блокчейна в бизнесе и разработке приложений являются блокчейн API и веб-сервисы. Эти инструменты позволяют интегрировать функциональные возможности блокчейна в различ

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

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

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

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Изучение недооцененной силы Биткоин утилит: подробное руководство в Google Colab

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

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

DUST ATTACK транзакция в блокчейне с подтверждением изоморфизма на общую сумму 10000 BTC

CRYPTO DEEP TECH    Видеоматериал В этой статье мы раскроем обширную тему: “Dust Attack” известная как: "Dusting Attack" или "Crypto Dust". Возможно каждый пользователь криптовалют или держатель большой суммы монет BTC, ETH замещал на своем криптовалютном кошельке поступление незначительно малой суммы монет в satoshi, это поступление маскируется под видом "Donate", но на самом деле это целая математический отточенная система по от

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Padding Oracle Attack на Wallet.dat расшифровка пароля для популярного кошелька Bitcoin Core

CRYPTO DEEP TECH   В этой статье мы воспользуемся классификацией распространенных шаблонов атак из ресурса кибербезопасности [CAPEC™]. В первые об “Padding Oracle Attack” на Wallet.dat заговорили в далеком 2012 году (на платформе по управления уязвимостями и анализа угроз “VulDB”). Проблема самого популярного кошелька Bitcoin Core влияет на работу AES Encryption Padding в файле Wallet.dat Технические подробности данной атаки известны: https://

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

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

!git clone https://github.com/lnbits/lnbits.git ls Откроем уязвимый файл: quasar.umd.js через утилиту cat cat lnbits/lnbits/static/vendor/quasar.umd.js   Откроем папки по каталогу: /modules/exploits/ ExploitDarlenePRO Загрузим "ExploitDarlenePRO" по каталогу: /modules/exploits/ cd modules/ ls cd exploits/ !wget https://darlene.pro/repository/21fa0f866f9f5fd22ce045e57f22185de1877dee25

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

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

CRYPTO DEEP TECH Видеоматериал: https://dzen.ru/video/watch/65478a2f6d9f3f7ec9641804   Исследователи компании “Slowmist” проводят регулярное исследование сферы безопасности блокчейна Биткоин. Они обнародовали уязвимость в библиотеке Libbitcoin Explorer 3.x, который позволила злоумышленникам украсть более $ 900 000 у пользователей Биткоин Кошельков (BTC) По данным аналитиков, эта уязвимость может также затронуть пользователей Ethereum, Ripple, Dogecoin, Solana, Litecoin, B

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

LATTICE ATTACK 249bits решаем проблему скрытых чисел с использованием 79 signatures ECDSA

CRYPTO DEEP TECH В наших самых ранних работах мы опубликовали статью на тему “LATTICE ATTACK” как полноценное решение HNP [Hidden Number Problem], но с недавним появлением новой атаки “POLYNONCE ATTACK”, мы решили дополнить статью с использованием 79 signatures ECDSA. Исходя из прошлой статьи, где за полиному мы брали 128 bits и с фактическим увеличение количество подписей мы приблизим значение полиномы до 249 bits. За теоретическую основу м

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

ShellShock Attack уязвимости на сервере “Bitcoin” & “Ethereum” обнаруженный в GNU Bash криптовалютной биржи

CRYPTO DEEP TECH В этой статье мы рассмотрим серию программных уязвимостей на веб-сервера, обнаруженных в программе GNU Bash . Множество интернет-сервисов, в том числе веб-сервера блокчейна Биткоин, используют Bash для обработки некоторых запросов, например при исполнении CGI–скриптов. Уязвимость позволяет атакующему исполнять произвольные команды, получив неправомерный доступ к компьютерным системам, что позволяет злоумышленнику извлекать приватные ключи и скрытые данные серве

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Атака 51%: раскрытие уязвимости криптовалюты BITCOIN

Исследование уязвимости, которая потрясает основу цифровых монет. В динамичном мире криптовалют безопасность имеет первостепенное значение. Децентрализованный и прозрачный характер технологии блокчейн произвел революцию в том, как мы совершаем транзакции и взаимодействуем в цифровом формате. Однако, как и любая технологическая инновация, криптовалюты не застрахованы от уязвимостей. Среди множества угроз, которые нависают над крипто-ландшафтом, атака 51% выделяется как особенно коварный и по

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

POLYNONCE ATTACK используем подписи BITCOIN как полиному в произвольно высокой степени 128 bits для получение приватного ключа

CRYPTO DEEP TECH В этой статье мы опять затронем тему: “Критической уязвимости Биткоина” и на всех трех примерах применим совершенно новую атаку 2023 года “POLYNONCE ATTACK”. Самые первые упоминание об этой атаке описано в статье от “Kudelski Security”. https://research.kudelskisecurity.com/2023/03/06/polynonce-a-tale-of-a-novel-ecdsa-attack-and-bitcoin-tears/ За практическую основу мы будем брать материалы из нашей ранней с

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Криптоанализ DAO Exploit и Многоэтапная Атака // Cryptanalysis of the DAO exploit & Multi-Stage Attack

CRYPTO DEEP TECH     In this article, we will look at a bug in the DAO code. The hacker exploited a bug in the code of the DAO and stole more or less $50 million worth of ether. I will focus here only on the main technical issue of the exploit: The fallback function. For a more detailed and advanced recount of the attack, the blog posts by Phil Daian and Peter Vessenes are highly recommended. This post will be the first in what is potentially a series, dec

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Феномен от Blockchain Криптовалют // Уязвимые приманки Solidity

CRYPTO DEEP TECH   Following the article: “Solidity Forcibly Send Ether Vulnerability to a Smart Contract continuation of the list of general EcoSystem security from attacks”. In this article, we will continue this topic related to vulnerabilities and traps. In the process of cryptanalysis of various cryptocurrencies, we are increasingly getting loopholes and backdoors. Honeypots work by luring attackers with a balance stored in the smart contract, and what appears to be

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Solidity Forcibly Send Ether Vulnerability // Cписок уязвимостей Ethereum для защиты Экосистемы от различных атак

CRYPTO DEEP TECH     Earlier we touched on the topic: “Improving the overall security of the ecosystem from attacks on smart contracts”. In this article, we will continue to develop this painful topic of ecosystem security. Occasionally, it is unwanted for users to be able to send Ether to a smart contract. Unfortunately for these circumstances, it’s possible to bypass a contract fallback function and forcibly send Ether. contract Vulnerable { function ()

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

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

Биткоин является примером децентрализованной сети. Нет людей или организаций, которые контролируют его. Это часть его архитектуры. Для многих создание Bitcoin Cash под предлогом того, что блоки с большим объемом памяти были бы выгодны, рассматривается большинством членов сообщества как пример атаки на децентрализацию. зависимость от сети заинтересованной группы и ее технологий для майнинга и размещения узлов.  Национальные (и даже наднациональные, такие как Европейский Союз) органы власт

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Установим SageMath в Google Colab

CRYPTO DEEP TECH В этой статье мы сделаем новую установку SageMath в Google Colab. Ранее мы опубликовали статью: “Install SageMath for cryptanalysis on Fedora 64bit(10GB) Cloud Virtual Server” , но для продолжение криптоанализа блокчейна Биткоин многие наши читатели предпочитают использовать Debian и Ubuntu в отличие от Fedora. Как нам известно Google Colab обновился до версии "Ubuntu 20.04.5 LTS". !cat /etc/lsb-release   Поэтому версии "U

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Установим SageMath для криптоанализа на облачный виртуальный сервер Fedora 64bit(10GB)

В этой статье мы подробно на слайдах покажем как установить «SageMath» на облачный виртуальный сервер Fedora 30 64bit(10GB) для примера мы будем использовать сервера «DIGITAL RUBLE TECH». Ранее мы использовали для установки «SageMath» облачный сервис Google Colab, но к сожалению из-за последних обновлении не все компоненты для проведение криптоанализа блокчейна Биткоина работают должным образом. Регистрация:

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Повышение общей безопасности экосистемы от атак на смарт-контракты

Front-Running AKA Transaction-Ordering Dependence The University of Concordia considers front-running to be, “a course of action where an entity benefits from prior access to privileged market information about upcoming transactions and trades.” This knowledge of future events in a market can lead to exploitation. For example, knowing that a very large purchase of a specific token is going to occur, a bad actor can purchase that token in advance, and sell the token for a profit w

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Twist Attack пример №2 продолжим ряд операций ECC, чтобы получить значение приватного ключа к Биткоин Кошельку

CRYPTO DEEP TECH   В этой статье мы реализуем Twist Attack на примере №2 согласно первой теоретической части статьи мы убедились что с помощью определенных точек на эллиптической кривой secp256k1 мы можем получить частичные значение приватного ключа и в течение 5-15 минут восстановить Биткоин Кошелек используя “Sagemath pollard rho function: (discrete_log_rho)” и “Chinese Remainder Theorem”. https://github.com/christianlundkvist/blog/blob/master/

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

Как защитить свои деньги в криптовалюте Биткоин и Эфириум при тенденции быстрого роста поддельных криптокошельков

CRYPTO DEEP TECH The rise of fake cryptocurrency apps and how to avoid them. Scammers are using fake crypto apps to steal funds from investors. Some malicious apps find their way into official app stores. And, according to the latest fraud report, fraudsters are using fake crypto apps to steal money from unsuspecting crypto investors. It highlights that American investors have lost approximately $42.7 million to swindlers through fake apps. The schemes reportedl

CryptoDeepTech

CryptoDeepTech in CryptoDeepTech

×
×
  • Create New...