Как стать автором
Обновить
-12
CRYPTO DEEP TECH @cryptodeeptechread⁠-⁠only

Криптоаналитик

Отправить сообщение

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

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

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

Для этого существуют несколько алгоритмов из списка популярных атак на Биткоин, один из которых “Frey-Rück Attack on Bitcoin”.

Мы не будем погружаться в теоретические аспекты данной атаки перейдем сразу к экспериментальной части

Из нашей практики нам известно что в блокчейне Биткоина очень много уязвимых и слабых транзакции и в процессе нашего криптоанализа мы нашли множество Биткоин Адресов, где большое количество подписи ECDSA были совершены с раскрытием секретного ключа "K" (NONCE).

Рассмотрим пять Биткоин Адресов

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

Tesla BrainWallet ловушки от Биткоин кошельков остерегаемся фишинга и популярных парольных фраз

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

Для создания Биткоин кошелька существует множество форм. Один из первых методов создания Биткойн кошелька был известен как BrainWallet.
BrainWallet удобен в том плане, что позволяет хранить в памяти или в блокноте "парольную фразу". Парольная фраза хешируется с использованием алгоритма SHA-256, и используется в качестве начального числа для создания приватного ключа.

Из-за своей популярности и простоты использования, многие BrainWallet за последние несколько лет использовались со слабыми парольными фразами.

Этот слабый способ генерации приватного ключа позволил злоумышленникам украсть довольно большое количество монет BTC, просто взломав пароль против хэшей, хранящихся в блокчейне. Хотя эта атака известна уже много лет, она стала широко известна в 2015 году благодаря работе, проделанной Райан Кастеллуччи (Ryan Castellucci)

7 августа 2015 года

Райан Кастеллуччи (Ryan Castellucci) выступил на DEFCON23 с докладом о взломе паролей BrainWallet. Хотя к этому моменту парольные фразы для BrainWallet использовались уже много лет, разговор помог донести эти проблемы до более широкой общественности

Document [PDF]: Cracking Cryptocurrency Brainwallets Ryan Castellucci

Райан опубликовал результаты своей работы по взлому BrainWallet в сочетании с инструментом под названием BrainFlayer проверенный взломщик для криптовалютных кошельков BrainWallet) и других алгоритмов с низким уровнем энтропии.

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

Coingecko & Agent Ftpupload создаем красивые адреса криптокошелька, но помним о сохранности приватного ключа

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

В криптосообществе за многие годы образовался целый культ по созданию красивых адресов для криптокошельков. Каждый желающий может сгенерировать для себя «красивый» адрес, который будет не только уникальным, но и будет иметь в себе определенное сочетание букв и цифр. Это очень увлекательный и интересный процесс, но нельзя полностью исключать риск, связанный с привлечением третьей стороны и перехватом приватного ключа к криптокошельку. Все мы когда-либо слышали о независимых агрегаторах CoinMarketCap и CoinGecko это самые популярные площадки для отслеживая цен на бирже, но в этой статье мы не будем рассматривать механизмы и функции этих площадок. Речь пойдет о скрытых кодах в vanitygen + oclvanitygen и стремительное распространение их на популярных площадках.

Это исследовательский проект создан в целях информационной безопасности.

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

Согласно порталу TAdviser жертвами все чаще становятся из-за использование не проверенное программное обеспечение.

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

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

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

В погоне за кубитами Baidu Inc как лидер среди китайских поисковых систем не отстаёт от своего западного конкурента Alphabet Inc.

В августе 2022 года китайский гигант поисковой системы Baidu Inc разработал собственный квантовый компьютер, который вскоре получил название «Qianshi».

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

Биткоин использует сразу несколько криптографических алгоритмов: алгоритм цифровой подписи на эллиптической кривой (ECDSA) для подписи транзакций и две хэширующие функцииSHA-256 и RIPEMD160.

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

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

Новые приватные ключи будут генерироваться системой после успешного внедрения постквантового шифрования. Чтобы активировать переход на новый приватный ключ, пользователи должны будут подписать для утверждения свой старый приватный ключ. Однако неактивные пользователи Биткоина могут никогда не обновить свой приватный ключ, что может вызвать серьезные проблемы, так как бездействующие Биткоин Кошельки, такие как те, которые содержат более 1 миллиона монет BTC, которые предположительно принадлежат Сатоши Накамото, вероятно, никогда не увидят улучшения шифрования.

Один из наиболее часто упоминаемых способов атаки на Биткойн который может быть применим квантовыми компьютерами это атака «дней рождения» (Birthday attack)

Этот метод основан на поиске коллизий хеш-функций на основе парадокса дней рождения.

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

MrRobotQR сканируем QR-коды из поисковых систем в поисках приватных ключей Биткоин Кошельков

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

Всем нам известна фраза: "Все что попадает в интернет, остается в нем навсегда и становится общедоступным".

Вплоть до скрытого контента.

В 2021 году пандемия вернула популярность QR-кодов. Впервые QR-коды были использованы на производстве в 1994 году дочерняя компания Toyota в Японии ввела их на заводе по сборке для контроля выпускаемых автомобилей и деталей к ним. В отличие от штрих-кода QR-код содержит больше информации, что и подтолкнуло производителя к введению инновации. Технология начала распространяться в основном в азиатских странах, а в 2003 году китайская компания Inspiry разработала специальный механизм считывания QR-кодов, который позволил это делать быстро, что подогрело популярность. Однако широкое распространение пришлось уже на период массового использования планшетов и смартфонов, когда считывание стало доступно через камеру носимого устройства.

Устройства от китайской компании Inspiry

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

Переводы, оплаты, QR-коды просто незаменимая вещь и самое важное в том что все это экономит наше время.

Нужно помнит ещё одну важную вещь:

Googlebot, Bingbot, Baidubot работают 24/7 и в любой момент могут сохранить приватные данные в своих гигантских серверах.

На поиски скрытого контента из глубин поисковых систем подключаются совершено противоположенные поисковым ботам герои в черном худи из известного сериала Мистер Робот (Mr. Robot) .

«MrRobotQR» - это скрипт с открытым исходным кодом который автоматизирует процесс от ввода ключевого слова поиска до вывода приватного ключа Биткоин кошелька.

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

Восстановление Биткоин Кошелька через короткие подписи ECDSA

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

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

Почему же эти подписи ECDSA называются короткими?

Ответ на этот вопрос вы можете получить из обсуждаемой темы: "Самая короткая подпись ECDSA" [The shortest ECDSA signature]

В прошлой нашей статье: "Уменьшение приватного ключа через скалярное умножение используем библиотеку ECPy + Google Colab" мы создали Python-скрипт: maxwell.py который сгенерировал для нас довольно интересный публичный ключ

(0x3b78ce563f89a0ed9414f5aa28ad0d96d6795f9c63 , 0xc0c686408d517dfd67c2367651380d00d126e4229631fd03f8ff35eef1a61e3c)

Как мы знаем значение сигнатуры "R" это и есть публичный ключ от секретного ключа (Nonce)

Взгляните на Blockchain транзакцию: 11e6b169701a9047f3ddbb9bc4d4ab1a148c430ba4a5929764e97e76031f4ee3

RawTX:

0100000001afddd5c9f05bd937b24a761606581c0cddd6696e05a25871279f75b7f6cf891f250000005f3c303902153b78ce563f89a0ed9414f5aa28ad0d96d6795f9c6302200a963d693c008f0f8016cfc7861c7f5d8c4e11e11725f8be747bb77d8755f1b8012103151033d660dc0ef657f379065cab49932ce4fb626d92e50d4194e026328af853ffffffff010000000000000000016a00000000

Размер этой транзакции всего лишь: 156 байт

Как можно восстановить Биткоин Кошелек через короткие подписи ECDSA?

В криптоанализе блокчейна криптовалюты Bitcoin мы используем собственный Bash-скрипт: btcrecover.sh

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

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

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

В этой статье мы постараемся показать как можно уменьшить приватный ключ зная только утечку из списка «BLOCKCHAIN FOLBIT LEAKS» и публичный ключ из «UTXO».
В экспериментальной части мы воспользуемся скриптами 08ReducePrivateKey и восстановим Биткоин Кошелек.

Скалярное умножение эллиптической кривой — это операция добавления точки P на кривую k раз.

Q=kP=P+P+P, k times


Pточка на эллиптической кривой, а kбольшое натуральное число.

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

Воспользуемся библиотекой ECPy

ECPy предоставляет:

подписи ECDSA

подписи Ed25519

подписи ECSchnorr

подписи Borromean

операции с точками

Во многих наших исследованиях мы используем библиотеку ECPy и Google Colab

Откроем [TerminalGoogleColab]

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

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

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

В этой статье мы рассмотрим функцию ускорение secp256k1 с помощью эндоморфизма которая помогает в оптимизации проверки ECDSA для криптовалюты Биткоин, но для начала немного истории.

12 января 2009 года Сатоши Накамото в самых ранних транзакциях Биткоина отправил Хэлу Финни 10 BTC.

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

Будучи одним из лучших в мире криптографов, Хэл понял, что Биткоин стал огромным прорывом сразу же после того, как он наткнулся на него.

Еще в 2008 году он назвал Биткоин «очень многообещающей идеей».

Этот твит, опубликованный 11 января 2009 года, является достаточным доказательством того, что Хэл предсказал успех Биткоина еще до того, как многие узнали, что это такое.

Прошло два года и в 2011 году Хэл Финни как разработчик и Биткоин-энтузиаст написал на форуме Bitcointalk, что функция эндоморфизма secp256k1 может быть использована для ускорения проверки подписи ECDSA

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

Pollard's Kangaroo находим решения дискретного логарифма secp256k1 PRIVATE KEY + NONCES в известном диапазоне

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

В этой статье мы рассмотрим самый быстрый алгоритм для ECDLP из области вычислительной теории чисел, кенгуру Полларда также называют алгоритм лямбды Полларда.

Метод кенгуру Полларда вычисляет дискретные логарифмы в произвольных циклических группах. Он применяется, если известно, что дискретный логарифм лежит в определенном диапазоне, скажем [ a , b ], а затем имеет ожидаемое время выполнения групповой операции.

Преимущество Pollard's Kangaroo:

использует очень мало памяти

можно распараллелить с линейным ускорением

можно эффективно отслеживать требования к объему памяти

Все это делает метод кенгуру самым мощным методом решения задачи дискретного логарифмирования.

Один из способов сломать схемы подписи ECDSA — это решить проблему дискретного логарифмирования.

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

Как мы знаем в блокчейне Биткоина отправитель монет BTC всегда раскрывает свой публичный ключ.

Для метода кенгуру Полларда достаточно знать публичный ключ или значение сигнатуры R ( значение R - это тоже своего рода публичный ключ от Nonces т.к. это точка координата x на плоскости эллиптической кривой secp256k1)

Остается только определить диапазон PRIVATE KEY или диапазон NONCES.

Случается такое что некоторые устройства которые создают подписиECDSAв блокчейне Биткоина могут частично раскрывать байты информации о значение "K" (NONCES)

Мы считаем что это потенциальная угроза потери монет BTC и настоятельно рекомендуем всем всегда обновлять ПО и использовать только проверенные устройства.

В недалеком прошлом мы провели криптоанализ в блокчейне Биткоина и нашли несколько таких транзакции.

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

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

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

В этой статье мы создадим инструмент который будет генерировать Биткоин Адреса (P2KH), используя уязвимость 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 заполнялась только идентификатором процесса. Из-за различий между порядком байтов и sizeof(long) выходные данные зависят от архитектуры: 32-битный прямой порядок байтов (например, i386), 64-битный прямой порядок байтов (например, amd64, ia64), 32-битный прямой порядок байтов (например, powerpc, sparc). PID 0 — это ядро, а PID_MAX (32768) не достигается при переносе, поэтому для каждой архитектуры было 32767 возможных потоков случайных чисел.

Программный клиент Bitcoin Core использует библиотеку OpenSSL. В частности, он использует функцию «EC_KEY_generate_key()» для генерации Биткоин Адресов (например, ключа) для получения платежей. Старые версии Bitcoin Core генерируют и хранят 100 ключей в wallet.dat

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

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

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

В этой статье мы рассмотрим несколько полезных и эффективных алгоритмов для эллиптической кривой E над полем GF(p) , заданной коротким уравнением Вейерштрасса

у^2 = х^3 + Ах + В 

 Алгоритм генерации точки на кривой E

 Алгоритм добавления точек

 Алгоритм удвоения точек

 Алгоритм нахождения целой кратной точки

 Алгоритм нахождения целой кратной точки (скалярное умножение)

 Алгоритм построения делителя D над кривой E с носителем supp(D) заданного размера d

 Алгоритм Миллера для вычисления значения функции Вейля n, P по делителю D такому, что supp(D) ∩ {P, O} = ∅

 Pairing Weil (Спаривание Вейля)

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

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

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

В этой статье мы научимся тому, как в большом количестве данных проверить баланс монет Биткоина используя для этого Python-скрипт bitcoin-checker.py

Так же мы научимся конвертировать публичный ключ Биткоина PUBKEY (HEX) в Биткойн Адрес (Base58) всю эту большую работу делает Python-скрипт pubtoaddr.py

В итоге мы с особой легкостью будем проверять баланс Биткоина, сканируя Блокчейн в терминале Google Colab [TerminalGoogleColab].

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Это довольно хрупко, и это только легкие атаки!

Но существует новая атака Lattice Attack которую очень подробно и детально описали Йоахим Брайтнер и Надя Хенингер (Joachim Breitner and Nadia Heninger)

В блокчейне Биткоина мы нашли некую транзакцию:

transaction: 08d917f0fee48b0d765006fa52d62dd3d704563200f2817046973e3bf6d11f1f

для Биткоин Адреса: 15N1KY5ohztgCXtEe13BbGRk85x2FPgW8E

и нам удалось размножить фейковые подписи и применить решетку

где с помощью Python-скрипта algorithmLLL.py с установкой пакетов в GOOGLE COLAB

INSTALL >> SAGE + ECDSA + BITCOIN + algorithm LLL

Нам удалось получить Private Key к Bitcoin Wallet из одной слабой транзакции в ECDSA.

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

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность

Специализация

Администратор защиты, Инженер по безопасности
Старший
Python
Linux
Git
Базы данных
Bash
Ubuntu
Unix
Oracle
Docker