|
Прочие способы заработка криптовалюты Как заработать криптовалюту без вложений. Как получить криптовалюту бесплатно. |
Опции темы |
24.11.2021, 16:44 | #1 |
Member
Регистрация: 08.01.2021
Сообщений: 52
|
МАНУАЛ ИНСТРУКЦИЯ FAQ по BrainFlayer
МАНУАЛ ИНСТРУКЦИЯ FAQ по BrainFlayer
Продолжаю тему поиска сокровищ Накомото, а именно как и обещал запилю здесь подробный разбор атаки на мозговые кошельки биткойна (разумеется утерянные на заре становления сети). ДИСКЛЕЙМЕР /Все что напишу - это не опус профессионала, а информация которую я собрал из десятков источников (в основном через переводчик на западных ресурсах) самостоятельно собирая и тестируя замечательную программу brainflayer, единственно что скажу точно - инструкция рабочая. Ничего похожего в одном месте и на русском языке просто нет/ Исходя из объема инфы предполагаю что будет минимум пять частей которые буду публиковать здесь по мере написания (оглавление в дальнейшем заменю на ссылки) ЧАСТЬ 1.... ТЕОРИЯ ЧАСТЬ 2.... СБОРКА И ИНСТАЛЯЦИЯ ЧАСТЬ 3.... ПОДГОТОВКА И ЗАПУСК ЧАСТЬ 1 ТЕОРИЯ - Что еще за мозговой кошелек? Уу... это супер крутая штука!) Это "кошелек" который ты (или кто-то другой) держит прямо у себя в голове. Для него не нужны компьютеры, флешки, интернет или еще что то физическое, для управления средствами достаточно помнить парольную фразу. Сатоши и Ко создали биткойн таким образом что любой набор символов на ЛЮБОМ языке (включая китайские иероглифы), любой длинны, можно преобразовать в адрес сети биткойн и ключи к нему. Например кто-то в 2014 году загадал фразу "Arnold Schwarzenegger" - и не долго хранил копейки на адресе "1NSctAAKi1xrhEuVK9e2CLfbhMfDs8L37j" - Как это работает? Все просто - заходим на сайт https://www.bitaddress.org/, выбираем русский язык, затем клацаем на "Умный кошелек", вводим к примеру "to be or not to be", нажимаем "Просмотр" (по заложенному алгоритму код выполняет необходимые преобразования) и получаем адрес сети BTC и приватный ключ которые можем импортировать в программу клиент. Быстро проверить движняк по данному адресу можем на https://www.blockchain.com/ введя адрес в строку поиска. СРАЗУ ХОЧУ УБЕРЕЧЬ ЖЕЛАЮЩИХ ОТ ИССПОЛЬЗОВАНИЯ АДРЕССА СГЕНЕРИРОВАННОГО НА ПУБЛИЧНОМ РЕСУРСЕ В РЕАЛЬНЫХ ПРИХОДНЫХ И РАСХОДНЫХ ОПЕРАЦИЯХ. СКОРЕЕ ВСЕГО ВАШИ СРЕДСТВА - ПОХИТЯТ. - И этим кто-то пользуется? Да, метод не теряет актуальности. Очевидные "преимущества" позволяют например держать накопленное (награбленное) "в голове", отсиживая срок в техасской тюрьме не боясь что жена выкидывая твои вещи выкинет вмести с ними флешку или ноут с миллионами долларов. - Но это очень рискованно! Риск присутствует (сболтнуть сокамерникам). Однако пароли длинной от 14и случайных символов или предложения из 12 и более слов - считаются "небрутабельными". Так что при грамотном подходе сама идея вполне имеет место быть. - И что? Его можно брутить?? Да) В 2016 году группа (опг) исследователей во главе с Райан Кастеллуччи опубликовала код программы brainflayer которая умеет преобразовывать словари с произвольным содержанием в адреса btc и на неплохой скорости сверять их со списком адресов имеющих положительный баланс. Вместе с программой они опубликовали любопытные материалы своих изысканий, с которыми я настоятельно рекомендую ознакомиться тех кто заинтересовался данной темой http://fc16.ifca.ai/preproceedings/36_Vasek.pdf - Я в деле! |
24.11.2021, 16:46 | #2 |
Member
Регистрация: 08.01.2021
Сообщений: 52
|
ЧАСТЬ 2 ИНСТАЛЯЦИЯ BRAINFLAYER
ВАЖНО Единственный оригинальный источник - это https://github.com/ryancdotorg/brainflayer. Авторы отдельно отмечают что если вы скачиваете готовые сборки (или покупаете у находчивых граждан) - то с большой долей вероятности эти сборки будут содержать бэкдоры или еще какую нить гадость. Никакой поддержки проекта или оф. форума по факту нет, создатели на вопросы практически не отвечают и ничего не гарантируют. Итак начнем. Так как оригинальная программа создана "под линукс" мы никак не обойдемся без установки Ubuntu. Я несколько раз собирал программу на разных машинах с разными версиями системы, все работало - поэтому считаю что нет особой разницы какую версию убунту скачивать, а так же я не вижу смысла в установке "на диск" отдельной системы (у программы нет "многопоточности", одна запущенная версия забирает одно ядро ЦП, по факту разница в производительности между виртуалкой и обычной системой 5-8% в пользу последней). Для наших целей отлично подойдет виртуальная машина VMware Workstation с выделенными четырмя ядрами, 4-6 гигами оперативы и объемом дискового пространства по Вашему усмотрению (если планируете закидывать словари размером 50 Гб - изначально закладывайте размер виртуального диска "с запасом"). Не забудьте про установку "vmware tools" (получите систему на нужный размер экрана и общий нужный с виндой буфер обмена). На ютубе десятки пошаговых инструкций по установке убунту на виртуальную машину - поэтому не стану на этом останавливаться. Дальше. Система установлена и нам сперва нужно установить недостающие пакеты и зависимости. При запуске части команд которые я укажу ниже система будет выдавать Вам сообщения что уже есть последняя версия и ничего ставить не будет - это нормально, просто переходите к следующей. На запросы - отвечайте "ДА". Я понятия не имею за нахера нужны половина из указанных ниже библиотек, это просто список из десятка разных источников который - работает. Запускаем терминал и копируем по одной туда эти команды. sudo apt-get update sudo apt-get upgrade sudo apt-get install build-essential sudo apt-get install libjansson-dev sudo apt-get install openssl sudo apt-get install git sudo apt-get install make sudo apt-get install autotools-dev sudo apt-get install libsparsehash-dev sudo apt-get install zlib1g-dev sudo apt-get install libssl-dev sudo apt-get install libcurl4-openssl-dev sudo apt-get install libtool sudo apt-get install autoconf sudo apt-get install dh-autoreconf sudo apt-get install automake sudo apt-get install pkg-config sudo apt-get install libgtk-3-dev sudo apt-get install libgmp-dev sudo apt-get install libgmp3-dev sudo apt-get install libboost-all-dev sudo apt-get update Следующей командой скачиваем прогу git clone https://github.com/ryancdotorg/brainflayer.git В домашней папке появился каталог brainflayer, переходим в него в терминале командой: cd brainflayer/ Производим тестовый запуск справки: ./brainflayer -h (здесь и далее не забывайте про точку и слэш в начале команды) Если Вам открылась справка программы - все идет по плану. STAY TUNED!!! |
24.11.2021, 16:49 | #3 |
Member
Регистрация: 08.01.2021
Сообщений: 52
|
ЧАСТЬ 3 ПОДГОТОВКА И ЗАПУСК
Первое что нам понадобиться - это свежий список всех адресов сети содержащих положительный баланс. Измучившись и перепробовав десяток парсеров блокчейна (не один толком не работал), был найден ресурс одного энтузиаста который периодически выкладывает http://addresses.loyce.club два нужных нам файла - свежие отсортированные адреса и адреса с указанием баланса (в сатоши). Качаем оба. Первый нужен для фильтра блума, второй чтоб без использования публичных сервисов узнать баланс нужного кошелька. Для создания фильтра сперва нужно перекатать скаченный тхт файл в формат HEX160. Я делал в винде, так и буду объяснять, уверен что то же самое можно и в убунту. Скачиваем и устанавливаем в винду Perl (на нем написан скрипт), затем создаем текстовый файл с произвольным именем, копируем код от сюда - http://lenschulwitz.com/b58/base58perl.txt. вставляем в текстовый файл . Затем часть кода (в самом конце).... ---------------------------------------------------------- #Sample test taken from https://en.bitcoin.it/wiki/Technical...coin_addresses. my $base58_encoded_address = "16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM"; print "\nRunning tests for bitcoin address $base58_encoded_address\n"; print "Bitcoin address is valid. Address type: '", check_bitcoin_address($base58_encoded_address), "'.\n"; my $binary_address = decodebase58tohex($base58_encoded_address); print "Binary hexadecimal representation is: $binary_address\n"; my $reencoded_base58 = encodebase58fromhex($binary_address); print "Re-encoded back to Base58 is: $reencoded_base58\n\n"; ----------------------------------------------------------- Меняем на... ----------------------------------------------------------- my $fileSrc = 'base58.txt'; open my $fhSrc, $fileSrc or die "Could not open $fileSrc: $!"; my $fileDest = 'hex.txt'; open(my $fhDest, '>>', $fileDest) or die "Could not open file $fileDest: $!"; while( my $base58_encoded_address = <$fhSrc>) { my $binary_address = decodebase58tohex($base58_encoded_address); say $fhDest $binary_address; } close $fhSrc; close $fhDest; ----------------------------------------------------------- Сохраняем файл, меняем расширение на "pl", меняем название файла с адресами на base58.txt, складываем в один каталог, запускаем скрипт и через пару минут получаем в том же каталоге файл hex.txt Дальше закидываем файл hex.txt в виртуалку, в каталог brainflayer в домашней папке. Затем в терминале убунту вводим cd brainflayer/ ./hex2blf hex.txt btcaddress.blf В каталоге программы появится файл btcaddress.blf - фильтр Блума. Подробно что это за штука можно прочитать на википедии. Если коротко - это такой фильтр который помогает программе не сравнивать каждый из миллиардов сгенерированных адресов, с 33 млн адресов с балансом (что сократило бы скорость процесса до нуля в секунду) а сразу говорить принадлежит ли сгенерированный адрес множеству из адресов с балансом. Важной особенностью которую про этот фильтр нужно знать - является недостаток в виде небольшой вероятности ложноположительного срабатывания. (то есть фильтр скажет что адрес множеству принадлежит - а он на самом деле нет) Главное в его работе - отсутствие ложноотрицательных срабатываний (это когда сгенерированный адрес отбрасывается а в действительности множеству он принадлежит). Еще про фильтр можно добавить то что чем больше в него загружать адресов то вероятность ложноположительного срабатывания ростет. К примеру в качестве эксперимента я загружал в него список всех адресов когда-либо имевших положительный баланс (250 млн) - ложное срабатывание было в 100% словарей))))) У нас все готово к работе, загружаем в каталог проги вордлист и запускаем перебор! ./brainflayer -v -b btcaddress.blf -i ваш_файл_паролей.txt либо можно перенаправлять в brainflayer вывод одного из генераторов паролей: hashcat, crunch и т.п. (в два раза снижается скорость) hashcat -a 0 pass.dict -r rule1.rule --stdout | ./brainflayer -v -b btcaddress.blf ВАЖНО!!! (сэкономлю Вам пару сотен человеко-часов) Если Ваш файл с паролями создан в винде то перед запуском в обязательном порядке нужно применить к файлу следующую команду cat ваш_файл_паролей.txt | sed "s/\r$//" > ваш_файл_паролей_2.txt Она удалит (если он есть) символ переноса строки который в винде не отображается а линукс воспринимает как отдельный символ и соответственно "кандидат" не подходит. В качестве первоначальных тестов строго рекомендую собрать маленькие "самодельные" словари и списки адресов заранее сделанных из этих словарей - чтоб увидеть как программа их находит. Создать можно с помощью все того же https://www.bitaddress.org. |