• XSS.stack #1 – первый литературный журнал от юзеров форума

Как я ускорил подбор криптокошельков до 20 000 ключей в секунду: моя история и выводы

ZeR0ShKa

HDD-drive
Пользователь
Регистрация
05.02.2024
Сообщения
32
Реакции
4
Приветствую всех любителей криптовалют и тех, кто стремится найти новые возможности в этом мире! Сегодня я хочу поделиться своей историей о том, как я решил глубоко изучить устройство криптокошельков и через упорство, ошибки и оптимизацию ускорил процесс подбора приватных ключей до 20 000 в секунду. Это не просто техническая задача — это вызов для каждого, кто верит в возможности технологии.
Как все началось: Metamask и BIP39

Моя первая остановка была на Metamask — одном из самых популярных кошельков. Для входа нужно использовать набор из 12–24 слов из словаря BIP39, содержащего 2048 слов. Число возможных вариантов кошельков просто колоссально! И, конечно, я задался вопросом: как можно это ускорить? Первый код позволял проверять 500 000 кошельков в час — на тот момент казалось, что это впечатляющая цифра. Но вскоре стало ясно, что с такой скоростью много не заработаешь, ведь большинство кошельков оказывались пустыми.
Тогда я обратился к многопоточности и асинхронности, что увеличило скорость до 1 миллиона кошельков в час. Но и этого мне было недостаточно, ведь за несколько дней работы не удалось найти ни одного "удачного" кошелька.
От эфира к биткоину

Поняв, что проверка кошельков Metamask приносит слишком мало результатов, я переключился на биткоин. Важно было сфокусироваться на более востребованной криптовалюте. И тут начались новые поиски: кошелек Electrum, попытки его интеграции, первые проблемы. Но, как оказалось, самые сложные решения могут быть и самыми эффективными.
Оптимизация работы с ключами

После изучения устройства биткоин-кошельков, я обнаружил, что можно значительно ускорить процесс, если минимизировать количество операций. Важным моментом стало то, что можно работать полностью офлайн — это кардинально изменило подход.
Я написал парсер для блокчейна и собрал 700 000 публичных адресов с транзакциями. Однако моя первая большая ошибка заключалась в том, что я не собрал сразу все адреса. Проверка транзакций была проще, чем проверка баланса, но, несмотря на это, скорость работы программы тогда составляла всего 144 000 кошельков в час.
Прорыв: как я увеличил скорость до 2000 кошельков в секунду

Не устраиваясь на достигнутом, я продолжил оптимизацию и через несколько бессонных ночей довел скорость до 2000 кошельков в секунду. В процессе я обнаружил, что моя программа замедляется из-за того, что сохраняет каждый кошелек в текстовый файл. Учитывая количество генерируемых ключей, этот процесс заполнял память и тормозил работу.
Решение оказалось простым: отказаться от сохранения. Вероятность сгенерировать один и тот же кошелек повторно крайне мала, а значит, незачем хранить все ключи. Это позволило сделать еще один значительный шаг вперед.
Достижение 6000 ключей в секунду и планы на будущее

После оптимизации и избавления от ненужных библиотек, скорость работы программы возросла до 6000 ключей в секунду. И снова я был доволен, но понимал, что потенциал не исчерпан. Следующий шаг — использование видеопамяти и переписывание кода на C++. Именно это позволит достичь новой цели — 20 000 приватных ключей в секунду.
Что дальше?

Моя цель — создать систему, которая будет генерировать приватные ключи с беспрецедентной скоростью, достигнув показателя в 20 000 ключей в секунду. Это требует не только оптимизации, но и нового оборудования. В планах — подключить майнинг, задействовать мощности видеокарт и достичь настоящих высот в этой игре.
Мой путь показал, что успех приходит не сразу. Нужно тестировать, экспериментировать, ошибаться и пробовать снова. Если вы увлечены криптовалютами и новыми технологиями — вас ждет много интересных открытий, если не бояться сложных задач и готовы их решать. Каждое улучшение — это шаг вперед, а в нашем мире скорости и производительности — важен каждый ключ и каждый кошелек.
Добро пожаловать в мир криптографии, где упорство и знания могут открыть новые горизонты.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Чувак))) херня вся эта генерация ключей я уже 4 года на каких то ботах генерирую кошельки и там ничего ты не найдешь)
Я даже не знаю где эти генераторы запущены, но уведы о ключах приходят, но пустые)))) так что забей это невозможно, на это очень минимальный шанс
 
Последнее редактирование:
Пожалуйста, обратите внимание, что пользователь заблокирован
Приветствую всех любителей криптовалют и тех, кто стремится найти новые возможности в этом мире! Сегодня я хочу поделиться своей историей о том, как я решил глубоко изучить устройство криптокошельков и через упорство, ошибки и оптимизацию ускорил процесс подбора приватных ключей до 20 000 в секунду. Это не просто техническая задача — это вызов для каждого, кто верит в возможности технологии.
Как все началось: Metamask и BIP39

Моя первая остановка была на Metamask — одном из самых популярных кошельков. Для входа нужно использовать набор из 12–24 слов из словаря BIP39, содержащего 2048 слов. Число возможных вариантов кошельков просто колоссально! И, конечно, я задался вопросом: как можно это ускорить? Первый код позволял проверять 500 000 кошельков в час — на тот момент казалось, что это впечатляющая цифра. Но вскоре стало ясно, что с такой скоростью много не заработаешь, ведь большинство кошельков оказывались пустыми.
Тогда я обратился к многопоточности и асинхронности, что увеличило скорость до 1 миллиона кошельков в час. Но и этого мне было недостаточно, ведь за несколько дней работы не удалось найти ни одного "удачного" кошелька.
От эфира к биткоину

Поняв, что проверка кошельков Metamask приносит слишком мало результатов, я переключился на биткоин. Важно было сфокусироваться на более востребованной криптовалюте. И тут начались новые поиски: кошелек Electrum, попытки его интеграции, первые проблемы. Но, как оказалось, самые сложные решения могут быть и самыми эффективными.
Оптимизация работы с ключами

После изучения устройства биткоин-кошельков, я обнаружил, что можно значительно ускорить процесс, если минимизировать количество операций. Важным моментом стало то, что можно работать полностью офлайн — это кардинально изменило подход.
Я написал парсер для блокчейна и собрал 700 000 публичных адресов с транзакциями. Однако моя первая большая ошибка заключалась в том, что я не собрал сразу все адреса. Проверка транзакций была проще, чем проверка баланса, но, несмотря на это, скорость работы программы тогда составляла всего 144 000 кошельков в час.
Прорыв: как я увеличил скорость до 2000 кошельков в секунду

Не устраиваясь на достигнутом, я продолжил оптимизацию и через несколько бессонных ночей довел скорость до 2000 кошельков в секунду. В процессе я обнаружил, что моя программа замедляется из-за того, что сохраняет каждый кошелек в текстовый файл. Учитывая количество генерируемых ключей, этот процесс заполнял память и тормозил работу.
Решение оказалось простым: отказаться от сохранения. Вероятность сгенерировать один и тот же кошелек повторно крайне мала, а значит, незачем хранить все ключи. Это позволило сделать еще один значительный шаг вперед.
Достижение 6000 ключей в секунду и планы на будущее

После оптимизации и избавления от ненужных библиотек, скорость работы программы возросла до 6000 ключей в секунду. И снова я был доволен, но понимал, что потенциал не исчерпан. Следующий шаг — использование видеопамяти и переписывание кода на C++. Именно это позволит достичь новой цели — 20 000 приватных ключей в секунду.
Что дальше?

Моя цель — создать систему, которая будет генерировать приватные ключи с беспрецедентной скоростью, достигнув показателя в 20 000 ключей в секунду. Это требует не только оптимизации, но и нового оборудования. В планах — подключить майнинг, задействовать мощности видеокарт и достичь настоящих высот в этой игре.
Мой путь показал, что успех приходит не сразу. Нужно тестировать, экспериментировать, ошибаться и пробовать снова. Если вы увлечены криптовалютами и новыми технологиями — вас ждет много интересных открытий, если не бояться сложных задач и готовы их решать. Каждое улучшение — это шаг вперед, а в нашем мире скорости и производительности — важен каждый ключ и каждый кошелек.
Добро пожаловать в мир криптографии, где упорство и знания могут открыть новые горизонты.
А как насчёт RotorCUDA
Или Collider? У этого вообще я перебирал Более 5 EKey/s приватников. Но я считаю бессмысленной
эту затею поиска по приватным ключам.
 
https://xss.pro/threads/123398/post-873276
Братан как бы твой позитив и настойчивость это хорошо, но он направлен немного не туда, это как сильнее и быстрее долбиться головой в бетонную стену толщиной в миллион километров. Со скоростью 20к это будет 5444517870735020000000000000000000000000 / 20000= 272225893536751000000000000000000000 секунд или 8632226456644818619989852866 лет. Даже если ты на всех компьютерах мира будешь брутить это будет примерно 8632226456644818619989 лет или больше, а кошелек с балансом тебе будет попадаться раз в 86322264566448186 лет.
Тут надо искать уязвимости в алгоритмах новых кошельков и блокчейнов, а не идти против всего мира который признал надежность и криптостойкость устоявшихся криптосистем
1729373557389.png
 
Последнее редактирование:
20к в секунду? Это очень низкая скорость даже для питона. Вы плохо изучили матчасть... Есть инструменты которые проверяют миллионы кошельков в секунду и даже с такой скоростью потребуются миллионы лет, чтобы найти хотя бы один кошелек. Нет никакого объективного шанса, что вы что-нибудь найдете даже если арендуете оборудование на миллион долларов и ускорите работу своей программы в тысячу раз.

Но если вам интересно, то я расскажу как вы можете ускорить работу вашей программы...
1) Не стоит пытаться найти кошельки с помощью функции random, она сильно замедляет работу. Да, вы можете надеяться на то, что кто-то сгенерировал кошелек с помощью именно этой реализации рандома(питон?), чтобы попытаться найти коллизию, но это не сильно повышает ваши шансы без системного подхода в этом вопросе. Если вам это интересно, то вы можете целенаправленно изучить вопрос поиска таких коллизий.
Вместо этого вам следует использовать случайные интервалы в 160-битном диапазоне чисел и перебирать их полностью. Это ускорит работу в десятки раз при использовании других советов ниже.
2) Вы можете пытаться найти любой существующий кошелек, для этого вам потребуется bloom-фильтр из базы адресов, которую вы получили из блокчейна, она сильно повысит скорость работы программы.
3) Но чтобы увеличить скорость в сотни раз вы можете остановиться на ограниченном количестве кошельков с огромным балансом.
Наиболее эффективным способом в этом случае будет не генерировать публичный адрес, а вместо этого использовать известный pubkey(узнать, если доступен) от нужных вам адресов для перебора и генерировать свои pubkey, это очень сильно ускорит работу.
4) Основным методом увеличения скорости является является вычисления с помощью GPU. Инструменты перебора ключей на видеокарте уже существуют. Я могу посоветовать keyhunt для процессора или keyhuntCuda для видеокарты.
5) Помимо обычного перебора, эффективность можно повысить с помощью математических алгоритмов атак. Большинство из них уже встроены в keyhunt. Существуют также инструменты на основе алгоритма кенгуру Полларда, но он подходит только для решения биткоин головоломки. О ней я расскажу ниже.
6) Существуют также мнемонические фразы от биткоин кошельков, которые тоже можно перебирать. Для этого есть готовые инструменты как для процессора, так и для видеокарты. С помощью них можно пытаться найти адреса, которые были сгенерированы именно с помощью seed фраз. Шансы на это намного выше(для 12 слов), но не все биткоин адреса были сгенерированы с помощью них.

Если у вас есть вычислительные мощности которые вы хотите направить на взлом биткоина, то вам следует знать, что существует биткоин-головоломка из серии биткоин адресов, которые реально взломать. Сложность их взлома в тысячи раз ниже, чем сложность взлома настоящих биткоин адресов. Головоломка существует с целью доказать, что биткоин адреса безопасны от перебора грубой силой. То есть, ее существование напрямую доказывает, что вы занимаетесь бесполезным(с точки зрения конечного результата) делом. Но в общеобразовательных целях это полезно и я поддерживаю вас в этом, потому что я когда тоже изучал этот вопрос.
 
20к в секунду? Это очень низкая скорость даже для питона. Вы плохо изучили матчасть... Есть инструменты которые проверяют миллионы кошельков в секунду и даже с такой скоростью потребуются миллионы лет, чтобы найти хотя бы один кошелек. Нет никакого объективного шанса, что вы что-нибудь найдете даже если арендуете оборудование на миллион долларов и ускорите работу своей программы в тысячу раз.

Но если вам интересно, то я расскажу как вы можете ускорить работу вашей программы...
1) Не стоит пытаться найти кошельки с помощью функции random, она сильно замедляет работу. Да, вы можете надеяться на то, что кто-то сгенерировал кошелек с помощью именно этой реализации рандома(питон?), чтобы попытаться найти коллизию, но это не сильно повышает ваши шансы без системного подхода в этом вопросе. Если вам это интересно, то вы можете целенаправленно изучить вопрос поиска таких коллизий.
Вместо этого вам следует использовать случайные интервалы в 160-битном диапазоне чисел и перебирать их полностью. Это ускорит работу в десятки раз при использовании других советов ниже.
2) Вы можете пытаться найти любой существующий кошелек, для этого вам потребуется bloom-фильтр из базы адресов, которую вы получили из блокчейна, она сильно повысит скорость работы программы.
3) Но чтобы увеличить скорость в сотни раз вы можете остановиться на ограниченном количестве кошельков с огромным балансом.
Наиболее эффективным способом в этом случае будет не генерировать публичный адрес, а вместо этого использовать известный pubkey(узнать, если доступен) от этого адреса, это очень сильно ускорит работу.
4) Основным методом увеличения скорости является является вычисления с помощью GPU. Инструменты перебора ключей на видеокарте уже существуют. Я могу посоветовать keyhunt для процессора или keyhuntCuda для видеокарты.
5) Помимо обычного перебора, эффективность можно повысить с помощью математических алгоритмов атак. Большинство из них уже встроены в keyhunt. Существуют также инструменты на основе алгоритма кенгуру Полларда, но он подходит только для решения биткоин головоломки. О ней я расскажу ниже.
6) Существуют также мнемонические фразы от биткоин кошельков, которые тоже можно перебирать. Для этого есть готовые инструменты как для процессора, так и для видеокарты. С помощью них можно пытаться найти адреса, которые были сгенерированы именно с помощью seed фраз. Шансы на это намного выше(для 12 слов), но не все биткоин адреса были сгенерированы с помощью них.

Если у вас есть вычислительные мощности которые вы хотите направить на взлом биткоина, то вам следует знать, что существует биткоин-головоломка из серии биткоин адресов, которые реально взломать. Сложность их взлома в тысячи раз ниже, чем сложность взлома настоящих биткоин адресов. Головоломка существует с целью доказать, что биткоин адреса безопасны от перебора грубой силой. То есть, ее существование напрямую доказывает, что вы занимаетесь бесполезным(с точки зрения конечного результата) делом. Но в общеобразовательных целях это полезно и я поддерживаю вас в этом, потому что я когда тоже изучал этот вопрос.
спасибо, учту, попытаюсь что то исправить, сейччас был в радостях что программа смогла вывсети подсчет в 14121 ключ в секунду, а теперь расстроился что кто то делает миллионы(
 
Пожалуйста, обратите внимание, что пользователь заблокирован
спасибо, учту, попытаюсь что то исправить, сейччас был в радостях что программа смогла вывсети подсчет в 14121 ключ в секунду, а теперь расстроился что кто то делает миллионы(
 
А как насчёт RotorCUDA
Или Collider? У этого вообще я перебирал Более 5 EKey/s приватников. Но я считаю бессмысленной
эту затею поиска по приватным ключам.
пыытался понять CUDA, но выводило очень много ошибок по итогу сейчас перешёл на c++
 
Пожалуйста, обратите внимание, что пользователь заблокирован
спасибо, учту, попытаюсь что то исправить, сейччас был в радостях что программа смогла вывсети подсчет в 14121 ключ в секунду, а теперь расстроился что кто то делает миллионы(
https://bitcointalk.org/index.php?topic=1306983.0
Это тема биткоин-головоломки. Сейчас общий бюджет головоломки 936 биткоина или 63941252 долларов. Вся доступная информация по перебору ключей содержится там, от обсуждения самых эффективных инструментов, до разработки новых алгоритмов...
Спойлер: самые эффективные это алгоритмы Кенгуру Полларда и BSGS(Keyhunt и тот, что вы уже рассмотрели)
В контексте обычного брутфорса нет смысла пытаться взломать реальные кошельки, если не можете взломать головоломки, сложность которых в тысячи раз легче.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Пожалуйста, обратите внимание, что пользователь заблокирован
Я человек который вообще в другом разбираюсь , уже даже стало интересно что у вас тут) думаю тоже попробовать) спасибо
ненужно ))) Это затянет. А выхлоп нулевой.
только время потратишь.
К стати вот сайт с этой головоломкой и мозговыми кошельками.
Посмотри как там искали.
Пароли от кошельков целые предложения. Я даже представить не могу как их искали.
 
ненужно ))) Это затянет. А выхлоп нулевой.
только время потратишь.
К стати вот сайт с этой головоломкой и мозговыми кошельками.
Посмотри как там искали.
Пароли от кошельков целые предложения. Я даже представить не могу как их искали.
Я пожалуй соглашусь, но как никак это неплохо так мозг напрягает как и что можно придумать, может когда-то и в будущем пригодиться
 
Хотел я мальвар изучать крипт и тд. А по итогу засел над этим, так плюсом еще и учеба навалилась, думаю завтра надо уже добиться максималки, понять, что ничего не будет с этого и пересесть на монетоприносящее
 
ненужно ))) Это затянет. А выхлоп нулевой.
только время потратишь.
К стати вот сайт с этой головоломкой и мозговыми кошельками.
Посмотри как там искали.
Пароли от кошельков целые предложения. Я даже представить не могу как их искали.
Я так искал кошельки на основе SHA256 из чего-только-не-сгенерированных. Я нашел таких тысячи реальных кошельков. Я перестал их считать, потому что большинство из них были сгенерированы одним человеком(или программой, может чьим то вирусом) и проходила через них(и проходит до сих пор) какая то пыль. Но встречались и адреса с сотнями биткоинов снятыми очень давно.
Сколько всего адресов и сколько в сумме прошло через них средств не считал, но общая сумма транзакций 1561947, включая исходящие. Довольно солидно!
 
Последнее редактирование:
и пересесть на монетоприносящее
на шо монетоприносящее пересесть хочешь?
 
Я так искал кошельки на основе SHA256 из чего-только-не-сгенерированных. Я нашел таких тысячи реальных кошельков. Я перестал их считать, потому что большинство из них были сгенерированы одним человеком(или программой, может чьим то вирусом) и проходила через них(и проходит до сих пор) какая то пыль. Но встречались и адреса с сотнями биткоинов снятыми очень давно.
Сколько всего адресов и сколько в сумме прошло через них средств не считал, но общая сумма транзакций 1561947, включая исходящие. Довольно солидно!
может просто биткоин миксеры были
 
Я так искал кошельки на основе SHA256 из чего-только-не-сгенерированных. Я нашел таких тысячи реальных кошельков. Я перестал их считать, потому что большинство из них были сгенерированы одним человеком(или программой, может чьим то вирусом) и проходила через них(и проходит до сих пор) какая то пыль. Но встречались и адреса с сотнями биткоинов снятыми очень давно.
Сколько всего адресов и сколько в сумме прошло через них средств не считал, но общая сумма транзакций 1561947, включая исходящие. Довольно солидно!
а как вы это делали , если не секрет ?
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх