Перейти к содержанию
  • записей
    49
  • комментария
    2
  • просмотра
    17 804

О блоге

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

  Начнем с того что алгоритм цифровой подписи на эллиптических кривых (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

 

Записи в этом блоге

Эксплойт в коде майнинга криптовалюты, использующий опасную уязвимость Log4j CVE-2021-44228

CRYPTO DEEP TECH Background on Log4j Alibaba Cloud Security Team publicly disclosed a critical vulnerability (CVE-2021-44228) enabling unauthenticated remote code execution against multiple versions of Apache Log4j2 (Log4Shell). Vulnerable servers can be exploited by attackers connecting via any protocol such as HTTPS and sending a specially crafted string. Log4j crypto-mining campaign Darktrace detected crypto-mining on multiple customer deployments whi

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Холодные и Горячие кошельки находим уязвимости и устраняем различные атаки на Блокчейн

CRYPTO DEEP TECH In the last article: “Blockchain Attack Vectors & Vulnerabilities to Smart Contracts” we reviewed all known attacks on the blockchain, in this article we will talk about crypto threats again and we will talk about identifying vulnerabilities for Cold wallets, as well as for Hot wallets. Blockchain is the underlying tech layer made up of a decentralized ledger, and a very secure data structure as there are a lot of distributed nodes that participate in the c

CryptoDeepTech

CryptoDeepTech в 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 в CryptoDeepTech

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

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

CryptoDeepTech

CryptoDeepTech в 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 в CryptoDeepTech

Ускорение secp256k1 с помощью эндоморфизма

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

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Уменьшение приватного ключа через скалярное умножение используем библиотеку ECPy + Google Colab

CRYPTO DEEP TECH     В этой статье мы постараемся показать как можно уменьшить приватный ключ зная только утечку из списка «BLOCKCHAIN FOLBIT LEAKS» и публичный ключ из «UTXO». В экспериментальной части мы воспользуемся скриптами 08ReducePrivateKey и восстановим Биткоин Кошелек. Воспользуемся библиотекой ECPy ECPy предоставляет: подписи ECDSA подписи Ed25519 подписи ECSchnorr подписи Borromean

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Создаем свой терминал в Google Colab для работ в GitHub, GDrive, NGrok и.т.д

В настоящее время машинное обучение и глубокое обучение стали самой горячей тенденцией в индустрии компьютерных наук. Многие разработчики создают потрясающие проекты с помощью Google Colab. Google Colab был разработан Google для предоставления бесплатного доступа к GPU и TPU. Google Colab можно определить как улучшенную версию Jupyter Notebook. Google Colab предоставляет множество интересных функций, которые предлагает любая современная IDE Вы можете писать и запускайте

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Самая первая серьезная уязвимость в Blockchain и как получить публичный ключ Bitcoin ECDSA значение RSZ из файла RawTX

CRYPTO DEEP TECH     В этой статье мы поговорим о извлечение значений подписи ECDSA R, S, Z из блокчейна Биткойн, но для начало вспомним о самой первой серьезной уязвимости в транзакции блокчейн которую обнаружил Нильс Шнайдер (Nils Schneider он же– tcatm) Биткоин-разработчик и владелец "BitcoinWatch" & "BitcoinCharts". 4.1 История опасных случайных Атак на Биткоин 25 декабря 2012 года Нильс обнаружил потенциальную слабость в некоторых транзакция

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Руководство по восстановление криптокошельков BTC Recover Crypto Guide

CRYPTO DEEP TECH Инструменты для восстановления пароля и seed-фразы кошелька с открытым исходным кодом в репозитории Crypto Deep Tools . У многих в криптосообществе бывает ситуация, когда вы случайно потеряли или забыли часть своей мнемоники или допустили ошибку при отправке монет BTC. (Таким образом, вы либо видите пустой кошелек, либо получаете сообщение об ошибке, что ваше seed-фразa кошелька недействительно).  BTCRecover — это инструмент для восстановления пароля и сид-фразы

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Реализуем Frey-Rück Attack чтобы получить секретный ключ “K” (NONCE)

CRYPTO DEEP TECH В этой статье мы реализуем эффективный алгоритм Frey-Rück Attack для подписи ECDSA в транзакции блокчейна Биткоина. В наших более ранних публикациях мы несколько раз затрагивали тему уязвимости подписи ECDSA. При критической уязвимости транзакции блокчейна Биткоина мы можем решить довольно сложную задачу дискретного логарифмирования для извлечение из уязвимой подписи ECDSA секретный ключ "K" (NONCE), чтобы в конечном итоге восстановить Биткоин Кошелек, так как з

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Полный список взломов криптовалютных бирж [ 2011 – 2022 ]

CRYPTO DEEP TECH   В этой статье мы составим полный список взломов криптовалютных бирж начиная совсем недавним крупнейшим взломом биржи Binance, где хакеры украли токены BNB на общую сумму 570 миллионов долларов и заканчивая с трагедией в бирже Mt. Gox которая в период с 2010 по февраль 2014 годов являлась самой крупнейшей в мире биржой криптовалюты Bitcoin и обслуживала 80% транзакций. Весь этот циклический процесс взломов происходит из-за утечек д

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

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

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

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Полезные и эффективные алгоритмы для эллиптической кривой secp256k1

CRYPTO DEEP TECH     В этой статье мы рассмотрим несколько полезных и эффективных алгоритмов для эллиптической кривой E над полем GF(p) , заданной коротким уравнением Вейерштрасса у^2 = х^3 + Ах + В   Алгоритм генерации точки на кривой E  Алгоритм добавления точек  Алгоритм удвоения точек  Алгоритм нахождения целой кратной точки  Алгоритм нахождения целой кратной точки (скалярное умножение)

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Поиск монет BTC на более ранних версиях Bitcoin Core критической уязвимость OpenSSL 0.9.8 CVE-2008-0166

CRYPTO DEEP TECH В этой статье мы создадим инструмент который будет генерировать Биткоин Адреса (P2PKH), используя уязвимость CVE-2008-0166. Это исследовательский проект для поиска монет BTC на более ранних версиях программного клиента Bitcoin Core     Генератор случайных чисел, который генерирует предсказуемые числа CVE-2008-0166 VAIM- OpenSSL 0.9.8/1.0.0 Detected Критической уязвимость версии OpenSSL 0.9.8 CVE-2008-0166 заполнялась только идентифик

CryptoDeepTech

CryptoDeepTech в 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 в CryptoDeepTech

Одна слабая транзакция в ECDSA в блокчейне Биткоина и с помощью Lattice Attack мы получили Private Key к монетам BTC

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

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Кроссчейн-мосты как ценность блокчейна становится привлекательным для различных атак

CRYPTO DEEP TECH   В этой статье речь пойдет об уязвимости в межсетевых мостовых протоколах которая является большой угрозой безопасности для смарт-контрактов между различными блокчейнами. Перекрестные мосты являются привлекательной целью для хакеров, потому что они часто представляют собой центральную точку хранения средств, которые поддерживают «мостовые» активы в принимающей цепочке блоков. Что такое межсетевые мостовые протоколы? Межсетевые мос

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Криптостойкость Биткоина против квантового компьютера QIANSHI от китайского гиганта поисковой системы Baidu Inc.

CRYPTO DEEP TECH В погоне за кубитами Baidu Inc как лидер среди китайских поисковых систем не отстаёт от своего западного конкурента Alphabet Inc. Все супермощные компьютеры используют квантовую физику для решения сложных задач, недоступных для традиционных устройств, с помощью кубитов — эволюции классического двоичного бита. Кубиты могут одновременно представлять значение 1 или 0, что обещает экспоненциальный рост вычислительной мощности. Биткоин использует ср

CryptoDeepTech

CryptoDeepTech в 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 в CryptoDeepTech

Как получить приватный ключ к Биткоин Кошельку с помощью неисправности в подписи (Rowhammer Attack on Bitcoin)

CRYPTO DEEP TECH Самой большой криптостойкостью криптовалюты Биткоин является вычислительный метод в дискретной математике который берёт в основу проблему факторизации больших целых чисел и проблему скрытых чисел (HNP) в Биткоин транзакции подписи ECDSA. В этой статье мы применим дифференциальный анализ неисправностей подписи ECDSA и получим приватный ключ из транзакции для пяти разных Биткоин Кошельков. Rowhammer Attack on Bitcoin, позволяет нам эффективно найти все нули д

CryptoDeepTech

CryptoDeepTech в CryptoDeepTech

Как парсить транзакции Blockchain в папку Google Drive

CRYPTO DEEP TECH     В этой статье мы разберем транзакции биткоина и научимся очень быстро парсить RawTX из сети блокчейн в папку Google Drive все это поможет нам лучше понять, как работает транзакции биткоина и каково все её содержимое в сети блокчейн. Для начала нам нужно знать, что все транзакции биткоина хранятся в [txid]. Это означает, что RawTX дважды прошла через алгоритм SHA256, чтобы получить хэш транзакции, который мы видим в блокчейне. Наприме

CryptoDeepTech

CryptoDeepTech в 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 в CryptoDeepTech

Как конвертировать публичные ключи Bitcoin-PUBKEY HEX в Bitcoin-адрес Base58 и проверить баланс на наличие монет BTC

CRYPTO DEEP TECH     В этой статье мы научимся тому, как в большом количестве данных проверить баланс монет Биткоина используя для этого Python-скрипт bitcoin-checker.py Результат проверки Python-скрипта bitcoin-checker.py Так же мы научимся конвертировать публичный ключ Биткоина PUBKEY (HEX) в Биткойн Адрес (Base58) всю эту большую работу делает Python-скриптpubtoaddr.py Давайте перейдем в репозиторию «CryptoDeepTools» и разберем в детали работу 

CryptoDeepTech

CryptoDeepTech в 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 в CryptoDeepTech

×
×
  • Создать...