Проверка приватного ключа биткоин

Новый вид мошенничества: раскрываемые закрытые ключи

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

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

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

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

Вот так выглядит закрытый ключ:

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

«Расшифровка» закрытого ключа

Поскольку закрытым ключом может в буквальном смысле быть все, что угодно, технически мы можем взять любую фразу или цепочку букв и цифр и использовать их в качестве закрытого ключа (например, «satoshi nakamoto») . Другими словами, можно забросить в хэш-функцию любой набор символов и создать кошелек. После этого создается публичный ключ и – добро пожаловать в мир криптовалют! Однако так поступать настоятельно не рекомендуется, поскольку очевидно, что раз вы можете придумать закрытый ключ, то раскрыть его сможет и кто-то другой. Такой ключ уже не будет по-настоящему случайным, а ведь именно это свойство необходимо для создания безопасного кошелька.

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

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

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

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

Читайте также:  Денежный поток определение внутренней нормы доходности

Затем он использовал корни Меркла (Merkle roots) некоторых блоков на предмет существования раскрываемых ключей, и вновь ему удалось обнаружить адреса, на которые отправлялись монеты. К сожалению, все балансы были нулевыми, но охота становилась все интереснее. Третий эксперимент проводился с использованием простых слов, несколько раз прошедших хэширование, таких как “hello” или “sender”. Хэши этих слов затем хэшировались снова и снова, добавляя дополнительный слой защиты и уменьшая шансы на то, что ключ будет открыт. Если вы захэшируете слово один раз, впоследствии вы сможете повторить это еще и еще, и в конечном итоге вы получите закрытый ключ, который уже когда-то использовался. Таким образом было обнаружено несколько адресов, использовавших этот метод. Один из самых забавных было слово “password” (пароль), после хэширования которого 1 975 раз получался действующий закрытый ключ, на который отправлялись средства. Более чем вероятно, что создатель этого адреса родился в 1975 году.

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

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

Что происходит на самом деле?

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

Пользователь создал бот для постоянного сканирования данных адресов и перехвата всех отправляемых на них биткоинов, и волей случая он наткнулся на транзакцию в 0,5 биткоина на адрес с раскрываемым закрытым ключом. К сожалению, бот сработал недостаточно хорошо, и ему не удалось во время создать транзакцию. Биткоины были извлечены из кошелька и отправлены дальше. Однако пользователь что-то заподозрил и продолжил эксперимент с ботом, после чего он заметил, что аналогичный «адрес сбора» использовался во множестве способов раскрытия ключей. По меньшей мере, один адрес из всех методов перечислял биткоины, один за другим, в адрес кого-то, контролирующего всю систему. Ежедневно пользователь наблюдал более 6 транзакций, прошедших через его базу данных закрытых ключей.

Например, пользователь Reddit под ником /u/fitwear рассказал о взломе кошелька на blockchain.info и краже почти 9 BTC. Несмотря на то, что при создании кошелька он выполнил все меры предосторожности (использовал надежный пароль и двухфакторную аутентификацию), его биткоины пропали. В ответ на обращение в службу техподдержки он получил стандартный ответ, ссылающийся на то, что кто-то, возможно, завладел его данными, либо его устройство было повреждено вирусом.

Анонимному пользователю Pastebin удалось найти 9 биткоинов на адресе, копия закрытого ключа к которому содержалась в его базе данных. Пользователю /u/fitwear повезло, и он получил свои биткоины назад, однако дальнейшее расследование адреса открыло очень тревожные подробности.

Очевидно, что предположения техподдержки blockchain.info о вирусе абсолютно необоснованны – логично, что разработчик создал бы закрытый ключ из какой-то конфиденциальной информации, а не случайного адреса. Тот факт, что адрес является случайным, дает любому понимающему эту схему шанс забрать монеты до того, как хакер сможет отправить их в кошелек, находящийся под его контролем. Что-то здесь определенно не сходится.

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

Читайте также:  Что за валюта биткоин кэш

Что дальше?

Несмотря на то, что обнаруженная информация очень тревожна, безопасность Биткоина не пострадала. 99,999% генерируемых закрытых ключей создаются случайным образом, и если ключ генерируется правильно, статистически возможность того, что ваши закрытые ключи будут расшифрованы, крайне ничтожна. Обращаясь к примеру с количеством секунд, прошедших с зарождения вселенной, попытку раскрыть случайно сгенерированный ключ можно сравнить с попыткой угадать во всем этом количестве секунд одну конкретную секунду. Очень маловероятно, что вы угадаете хотя бы год, не говоря уже о месяце, дне, часе, минуте и секунде. Если вы пользуетесь проверенным кошельком и контролируете его закрытые ключи, вы 100% не пострадаете.

Беспокоиться следует людям, которые пользуются услугами третьих сторон, таких как биржи или онлайн-кошельки. С другой стороны, стоит также отметить, что прямых доказательств причастности сайта blockchain.info или кого-то другого к краже биткоинов /u/fitwear или другим подозрительным транзакциям, обнаруженными анонимным пользователем в блокчейне, не существует.

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

Источник

Bitcoin Private Key Finder

Free online tool for fast scanning random Bitcoin, Bitcoin Cash, Bitcoin SV, Litecoin, Dogecoin, Dash, Zcash private keys and finding addresses with balance.

How does it work?

Bitcoin Key Finder uses your CPU to generate private keys and check their balance without making heavy internet requests. Instead of checking the balance of each address, an address is matched against a database of funded addresses.

Why do I need it?

Instead of viewing the random private keys page and checking balances manually, you can use this tool to generate random private keys and check their balance automatically at high speed.

Which blockchains are supported?

Bitcoin Key Scanner supports Bitcoin, Bitcoin Cash, Bitcoin SV, Litecoin, Dogecoin, Dash, Zcash, Ethereum blockchains.

How many addresses are in the database?

Our scanner’s database contains about 7,000,000 funded addresses:

  • Bitcoin addresses with the balance greater or equal 0.01 BTC;
  • Bitcoin Cash addresses with the balance greater or equal 1 BCH;
  • Bitcoin SV addresses with the balance greater or equal 1 BSV;
  • Litecoin addresses with the balance greater or equal 1 LTC;
  • Dogecoin addresses with the balance greater or equal 100,000 DOGE;
  • Dash addresses with the balance greater or equal 1 DASH;
  • Zcash addresses with the balance greater or equal 1 ZEC;
  • Top 1,000,000 richest Ethereum addresses.

Why does it may find addresses with zero balance?

Private Key Finder uses a space-efficient probabilistic data structure to store funded addresses. It has a compact size, but it may produce false positives. In other words, Finder shows addresses that possibly have balance.

Is it possible to use my GPU to generate private keys too?

Currently, it’s not possible to make complex GPU calculations in JavaScript. But you can use BitCrack.

Has anyone ever found a funded Bitcoin private key?

The scanner found an address with the balance. What’s next?

A found balance will be paid to the payout address specified. Payouts are made manually ASAP.

What is the service fee?

30% will be subtracted from the found balance before payout as a service fee.

Источник

Пул поиска приватных ключей Bitcoin, Ethereum и других

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

1. SecretScan v1.3 GPU Nvidia Private Keys Scanner of Bitcoin, Ethereum, Altcoins addresses для совместного поиска приватных ключей в пуле.

Требуется 64-битная система Windows и видеокарты Nvidia от 2011 года выпуска (версия спецификации 3.0 и выше).

1. Зарегистрируйтесь.
2. Зайдите в Личный кабинет, введите адрес своего кошелька или сгенерируйте новый на сайте.
3. Скачайте и установите Nvidia Cuda 9.2 для работы программы.
4. Скачайте архив программы SecretScan v2.3, распакуйте на диск C или рабочий стол.
5. Отредактируйте файл «1_SecretScanGPU.bat» (для 1060 и новее) или «2_SecretScanGPU.bat» (для видеокарт 1050ti и старше), вместо слова YourWallet укажите номер вашего кошелька, указанный в личном кабинете на сайте. Также в папке есть бат файлы «3. «, «4. «. Выберите файл с максимальной скоростью и стабильностью.
6. Запустите bat файл. Подождите 3-5 минут, проверьте результаты работы программы на сайте.

Читайте также:  Gts 250 сколько майнит

Рекомендации!
1. Убедитесь, что на 3 строке программы есть такие данные: (CUDA 9.2, Driver 9.2), поменяйте Cuda или драйвер в случае не совпадения, удалив текущие драйвера программой удаления старых драйверов DDU и установив Cuda заново.
2. В случае сбоя потребуется переустановка Cuda 9.2. Драйвера входят в пакет Cuda, отдельно их устанавливать не требуется.
3. Программа для настройки разгона видеокарт: MSI Autoburner. Разгон видеокарт примерно аналогичен настройкам на майнинг по алгоритму Equilhash (70-100 PL, Core 120-200, Memory 400-600). Задействовано ядро и память. Старайтесь получить не максимальную скорость Mk/s, а максимальную эффективность — Mks/Watt.
4. Инструкция как сделать автоперезапуск в случае ошибки или сбое в работе программы/интернет/питания.
В скаченной версии bat файла перезапуск программы установлен по умолчанию. Если требуется перезагрузка при сбое видеокарт,
то уберите слово «rem» перед «shutdown /r /t 10 /f» и при сбое компьютер будет перезагружаться.
5. Инструкция как сделать автозапуск при включении фермы/компьютера. Нажмите правой кнопкой мыши на файле 1_SecretScanGPU.bat в папке с программой, создайте ярлык. В левом нижнем углу нажмите линзу-поиск, напишите и выберите «Выполнить», в коммандной строке наберите: shell:startup, затем перенесите созданный вами ярлык в открывшуюся папку автозагрузки.
6. Рекоммендуется запускать сканер после новой загрузки windows (перезагрузите компьютер/ферму после майнинга, игр и т.п.).
7. Если программа не работает, то нужно вернуть виндовс к заводским настройкам с сохранением файлов (в панели управления в разделе восстановление). 8. Защитник windows, брандмауэр может блокировать программу, их надо настраивать и отключать в некоторых случаях.
9. На компьютере должны быть установлены Visual C++ 2013 и Visual C++ 2017.
10. Увеличить файл подкачки: Панель управления -> Система -> Дополнительные параметры системы -> Быстродействие -> Параметры -> Дополнительно -> Изменить

Таблица скоростей
1050Ti 30 Mk/s
1060 54 Mk/s, Gigabyte 70 PL 180 Core 600 Memory
1070 74 Mk/s, Gigabyte 70 PL 150 Core 600 Memory
1070Ti 71 Mk/s
1080 71 Mk/s
1080Ti 94 Mk/s
2080Ti 250 Mk/s

2. SecretScan GPU AMD для совместного поиска приватных ключей в пуле на видеокартах AMD.

Планируется к разработке. Пожалуйста воспользуйтесь разделом «Аренда».

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

Аренда 8 видеокарт GTX1060 на поиск ключей стоит 0.6 ETH в месяц: 30 триллионов ключей в день, 900 триллионов ключей в месяц.
Половина от этой суммы — затраты на электричество. Все средства с аренды или майнинга идут на создание и развитие проекта.

Укажите в личном кабинете и отправьте с адреса, указанного в личном кабинете,
сумму, кратную 0.6 ETH на адрес: 0x940cB21E0B52ea1F9eDE350Ed2811d429e57d341
Включение ферм поиска ключей на ваш адрес будет выполнено в течении 12 часов.

Как участвовать?

Как работает сканер?

1) Генерируется приватный ключ.
2) Из приватного ключа программа математически высчитывает публичный ключ и получает связанный с ним адрес кошелька.
3) Кошелек автоматически сверяется с топовыми адресами в базе, содержащими биткоины, эфир и т.д.

Какие шансы?

Вероятность нахождения 1 адреса 2^256 степени (примерно равно 10^77), что практически невозможно, но это как бесплатная биткоин лотерея и 1) с момента создания проекта скорости выросли в миллион раз, 2) в поиске 10^7 адресов, что увеличивает шансы, 3) в приватном ключе 64 знака, а в адресе только 40, поэтому у каждого адреса существует 2^(256/64*40=96), т.е. 2^96 (10^29) работающих приватных ключей. Проверив 2^(256-256/64*40=160) 2^160 (10^48) ключей, будут найдены все адреса, 4) используется особый математический рандом, сужающий область поиска на порядки, 5) если для поиска 1 видеокарте требуется миллион лет, тогда миллион видеокарт найдет за 1 год. В отличие от майнинга, когда добывается регулярно по чуть-чуть, процесс поиска ключей занимает длительное время, но и вознаграждение существенней.

Есть и другие направления развития проекта: на основе проверенных приватных ключей и полезных математических вычислений планируется сделать новую криптовалюту, которую участники как бы добывают уже сейчас, перенос открытого кода в блокчейн с запуском криптовалюты, привязанной к количеству проверенных приватных ключей с возможностью покупать/продавать и менять свой %, полная автоматизация и децентрализация (вся статистика в программе, программы участников связаны между собой в сеть).

Источник

Оцените статью