napulsnik (OP)
Newbie
Offline
Activity: 19
Merit: 0
|
|
July 17, 2017, 01:25:36 PM |
|
Здравствуйте. Ищу программу, в которую можно загрузить текстовый файл со списком слов, а на выходе Биткоин адреса с приватными ключами. Знаю, что есть такая программа, как "libbitcoin-explorer", но она очень медленная. На моем процессоре 1 миллион фраз обрабатывает целые сутки. Есть что-то побыстрее для запуска в Windows?
|
|
|
|
ligor
Full Member
Offline
Activity: 1246
Merit: 138
Hodl DeepOnion
|
|
July 21, 2017, 11:36:13 AM |
|
Здравствуйте. Ищу программу, в которую можно загрузить текстовый файл со списком слов, а на выходе Биткоин адреса с приватными ключами. Знаю, что есть такая программа, как "libbitcoin-explorer", но она очень медленная. На моем процессоре 1 миллион фраз обрабатывает целые сутки. Есть что-то побыстрее для запуска в Windows?
Имеется в виду использование слов в качестве seed? На моем процессоре 1 миллион фраз обрабатывает целые сутки. - что за процессор такой? Вряд ли чтение пару десятков мегабайт текста (надеюсь, под фразой не подразумевается многострочный текст?) Значит медленный алгоритм генерации в этом самом "libbitcoin-explorer".
|
|
|
|
napulsnik (OP)
Newbie
Offline
Activity: 19
Merit: 0
|
|
July 21, 2017, 12:04:18 PM |
|
Здравствуйте. Ищу программу, в которую можно загрузить текстовый файл со списком слов, а на выходе Биткоин адреса с приватными ключами. Знаю, что есть такая программа, как "libbitcoin-explorer", но она очень медленная. На моем процессоре 1 миллион фраз обрабатывает целые сутки. Есть что-то побыстрее для запуска в Windows?
Имеется в виду использование слов в качестве seed? На моем процессоре 1 миллион фраз обрабатывает целые сутки. - что за процессор такой? Вряд ли чтение пару десятков мегабайт текста (надеюсь, под фразой не подразумевается многострочный текст?) Значит медленный алгоритм генерации в этом самом "libbitcoin-explorer". Да, в качестве seed. Уже нашел решение на Питоне, но тоже медленно (20млн/сутки). Можно и под линукс. Процессор обычный: Core i5-3470 3.2
|
|
|
|
negeroy
Legendary
Offline
Activity: 1148
Merit: 1051
|
|
July 21, 2017, 01:11:56 PM |
|
есть конечно, но зря время потратите, тема была актуальна в году так 2013, а после того как amaclin прошёлся там вообще ловить нечего , и вот почему: https://www.youtube.com/watch?v=5NQg9gYBxIY
|
|
|
|
ligor
Full Member
Offline
Activity: 1246
Merit: 138
Hodl DeepOnion
|
|
July 21, 2017, 01:32:10 PM |
|
Да, в качестве seed. Уже нашел решение на Питоне, но тоже медленно (20млн/сутки). Можно и под линукс. Процессор обычный: Core i5-3470 3.2
Сейчас накидал утилиту (использовал Bitcoin Address Utility C#) так 10 000 за минуту из произвольного сида делал. Т.е. миллион за 100, в сутки миллионов 14. Так что у вас на питоне быстрее. Хотя может дело в деталях, под дебаггером, включена проверка на валидность и прочее.
|
|
|
|
napulsnik (OP)
Newbie
Offline
Activity: 19
Merit: 0
|
|
July 21, 2017, 01:45:41 PM |
|
Все, да не все :-) Невозможно перебрать 100% всех сидов, т.к. мало ли чего человеку в голову взбредет, когда он пароль придумывает. Много чего нету в популярных словарях для брута. Может ткнете пальцем в быстрый генератор brainwallet адресов?
|
|
|
|
napulsnik (OP)
Newbie
Offline
Activity: 19
Merit: 0
|
|
July 21, 2017, 01:52:51 PM |
|
Да, в качестве seed. Уже нашел решение на Питоне, но тоже медленно (20млн/сутки). Можно и под линукс. Процессор обычный: Core i5-3470 3.2
Сейчас накидал утилиту (использовал Bitcoin Address Utility C#) так 10 000 за минуту из произвольного сида делал. Т.е. миллион за 100, в сутки миллионов 14. Так что у вас на питоне быстрее. Хотя может дело в деталях, под дебаггером, включена проверка на валидность и прочее. Я запускаю сразу 3 потока, т.к. 1 поток не грузит процессор на 100%. Если в 3 потока, то получается где-то в 2,5 раза быстрее. Поэтому возможно ваш вариант еще быстрее, если несколько копий запустить одновременно. Я просто запускал 1 копию, засекал минуту, выключал и считал сколько адресов сгенерировалось. Потом 2 копии одновременно и считал общее кол-во сгенерированных адресов. На моем проце вышло, что оптимально 3 копии, а если больше, то уже не рационально.
|
|
|
|
negeroy
Legendary
Offline
Activity: 1148
Merit: 1051
|
|
July 21, 2017, 02:42:50 PM |
|
Может ткнете пальцем в быстрый генератор brainwallet адресов? ну почему же не "ткнуть", прийдется конечно скомпилировать на linux, но раз есть непреодолимое желание этим заниматься то справитесь , 50-80к в секунду будет генерить, правда в hex формате https://github.com/ryancdotorg/brainflayer
|
|
|
|
napulsnik (OP)
Newbie
Offline
Activity: 19
Merit: 0
|
|
July 21, 2017, 03:27:59 PM |
|
Может ткнете пальцем в быстрый генератор brainwallet адресов? ну почему же не "ткнуть", прийдется конечно скомпилировать на linux, но раз есть непреодолимое желание этим заниматься то справитесь , 50-80к в секунду будет генерить, правда в hex формате https://github.com/ryancdotorg/brainflayerА, этот, что Кастеллуччи юзал. Пойду разбираться, спасибо.
|
|
|
|
ligor
Full Member
Offline
Activity: 1246
Merit: 138
Hodl DeepOnion
|
|
July 21, 2017, 04:08:06 PM |
|
Я запускаю сразу 3 потока, т.к. 1 поток не грузит процессор на 100%. Если в 3 потока, то получается где-то в 2,5 раза быстрее. Поэтому возможно ваш вариант еще быстрее, если несколько копий запустить одновременно. Я просто запускал 1 копию, засекал минуту, выключал и считал сколько адресов сгенерировалось. Потом 2 копии одновременно и считал общее кол-во сгенерированных адресов. На моем проце вышло, что оптимально 3 копии, а если больше, то уже не рационально.
Да, в многопоточном режиме в 3 раза быстрее. Попробуйте https://yadi.sk/d/qMh5yB0w3LGcBQ (архив, один экзешник и криптобиблиотека, требуется .Net framework 4.5). 10 000 - число вариантов Случайные строки - генерирует случайные строки длинной 100 байт в файл, заданный ниже (D:\\output.txt) Генерировать случайно - генерирует случайную строку в 100 байт а из неё адрес, выводит в текстовое поле Генерировать из файла - читает из заданного файла строки и из них генерирует адреса - сколько строк - столько адресов. Выводит в поле. Разделитель между приватным ключем и адресом можно задать, по умолчанию стоит " | ". Попробуйте если что.
|
|
|
|
napulsnik (OP)
Newbie
Offline
Activity: 19
Merit: 0
|
|
July 21, 2017, 04:17:34 PM |
|
Я запускаю сразу 3 потока, т.к. 1 поток не грузит процессор на 100%. Если в 3 потока, то получается где-то в 2,5 раза быстрее. Поэтому возможно ваш вариант еще быстрее, если несколько копий запустить одновременно. Я просто запускал 1 копию, засекал минуту, выключал и считал сколько адресов сгенерировалось. Потом 2 копии одновременно и считал общее кол-во сгенерированных адресов. На моем проце вышло, что оптимально 3 копии, а если больше, то уже не рационально.
Да, в многопоточном режиме в 3 раза быстрее. Попробуйте https://yadi.sk/d/qMh5yB0w3LGcBQ (архив, один экзешник и криптобиблиотека, требуется .Net framework 4.5). 10 000 - число вариантов Случайные строки - генерирует случайные строки длинной 100 байт в файл, заданный ниже (D:\\output.txt) Генерировать случайно - генерирует случайную строку в 100 байт а из неё адрес, выводит в текстовое поле Генерировать из файла - читает из заданного файла строки и из них генерирует адреса - сколько строк - столько адресов. Выводит в поле. Разделитель между приватным ключем и адресом можно задать, по умолчанию стоит " | ". Попробуйте если что. Спасибо. Правда 50к в секунду c Brainflayer, конечно более предпочтительно :-) Осталось придумать, как эти 50к в секунду сразу сверять с базой адресов, у которых положительный баланс. Готовую базу денежных кошельков скачать не проблема, чтобы не пришлось в интернете все чекать.
|
|
|
|
ligor
Full Member
Offline
Activity: 1246
Merit: 138
Hodl DeepOnion
|
|
July 21, 2017, 04:47:25 PM |
|
Спасибо. Правда 50к в секунду c Brainflayer, конечно более предпочтительно :-) Осталось придумать, как эти 50к в секунду сразу сверять с базой адресов, у которых положительный баланс. Готовую базу денежных кошельков скачать не проблема, чтобы не пришлось в интернете все чекать.
Я пределал файл под библиотеку NBitcoin. Входную строку использовал как энтропию по примеру из книжки https://programmingblockchain.gitbooks.io/programmingblockchain/content/key_generation/key_generation.html#is-it-random-enoughПолучилось обработать 100 мб файл (1 миллион строк по 100 байт) за 270 секунд, что значительно быстрее предыдущей версии.
|
|
|
|
negeroy
Legendary
Offline
Activity: 1148
Merit: 1051
|
|
July 21, 2017, 05:03:29 PM |
|
Осталось придумать, как эти 50к в секунду сразу сверять с базой адресов, у которых положительный баланс. Готовую базу денежных кошельков скачать не проблема, чтобы не пришлось в интернете все чекать.
вы описание то читали? в brainflayer, всё уже придумано, не нужно изобретать велосипед, используется фильтр Блума, загоняете адреса в hex формате в фильтр и всё, генерация и проверка происходит на лету независимо от кол-ва проверяемых адресов, правда чем больше адресов тем больше и вероятность ложного срабатывания фильтра, но это не критично до 100-200 млн.
|
|
|
|
napulsnik (OP)
Newbie
Offline
Activity: 19
Merit: 0
|
|
July 21, 2017, 05:14:12 PM |
|
Осталось придумать, как эти 50к в секунду сразу сверять с базой адресов, у которых положительный баланс. Готовую базу денежных кошельков скачать не проблема, чтобы не пришлось в интернете все чекать.
вы описание то читали? в brainflayer, всё уже придумано, не нужно изобретать велосипед, используется фильтр Блума, загоняете адреса в hex формате в фильтр и всё, генерация и проверка происходит на лету независимо от кол-ва проверяемых адресов, правда чем больше адресов тем больше и вероятность ложного срабатывания фильтра, но это не критично до 100-200 млн. Вот сейчас сижу, читаю с переводчиком Многое пока не понятно. Ложное срабатывание, как я понял - это именно ложно положительное, что не так плохо. Положительные результаты легко сверить с блокчейном, ведь их не так много будет.
|
|
|
|
amaclin1
|
|
July 23, 2017, 08:29:03 AM |
|
Я прогнал блокчейн по словарю из (примерно) миллиарда брейн-валлетов. Что-то находил, но там либо копейки были, либо выведено другими. В фильтрах блума я так и не разобрался, староват я стал, а в школе в мое время этому не учили и делать пример не заставляли. Могу лишь сказать, что проверяльщики брейн-валлетов обладают базами которые наверно в сотни и тысячи раз больше моей. Так что найти что-то на халяву в блокчейне практически нереально. Но вообще говоря возможно.
|
|
|
|
|