Pages:
Author

Topic: Wallet.dat перебор по словарю - page 2. (Read 8310 times)

newbie
Activity: 26
Merit: 0
February 18, 2012, 04:27:07 AM
#4
Посмотрел исходники, вот релевантные файлы:
https://github.com/bitcoin/bitcoin/blob/master/src/wallet.cpp
https://github.com/bitcoin/bitcoin/blob/master/src/crypter.cpp
https://github.com/bitcoin/bitcoin/blob/master/src/crypter.h


Для шифрования там используется AES-256, для деривации ключа - SHA-512. Скорость брута упрется именно в SHA, т.к. количество раундов деривации зависит от скорости процессора, но как минимум 25000.

Зная сколько мегахешей выдает видюха для майнинга можно примерно посчитать с какой скоростью она будет перебирать пароли  Grin

В протоколе биткойна используется SHA-256, это навскидку раз в 5 быстрее на ГПУ чем SHA-512 (из-за 64-битных операций в последнем).
Т.е 400 MH/s SHA-256 это 80 MH/s SHA-512 или 3200 паролей в секунду (при 25к раундах).

Если пароль не состоит только из цифр, то брутить 9 символов с такой скоростью бесполезно, разве что по словарю можно попробовать.

P.S. wallet.dat - файл базы данных berkeley db
newbie
Activity: 58
Merit: 0
February 18, 2012, 03:54:44 AM
#3
Смещение: 0xF530
Размер: 64 байта
Вкусняшки хранятся в этом куске wallet.dat

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


LZ
legendary
Activity: 1722
Merit: 1072
P2P Cryptocurrency
February 17, 2012, 05:00:30 PM
#2
Длина пароля до 9 символов.
Много. Необходимо, чтобы Вы точно вспомнили все использованные в пароле символы.
Судя по количеству времени, которое уходит на зашифровку/расшифровку кошелька,
эта процедура требует большой производительности, что очень снижает наши шансы.

Примерный план подготовки.
1. Выявить шаблон, по которому будем сверять, что данные расшифрованы правильно.
2. Узнать, как именно добавляется соль в шифр, и как она используется в алгоритме.

Примерный план разработки.
1. Вытащить из wallet.dat данные в зашифрованном виде.
2. Написать генератор для этого алгоритма шифрования.
3. Переписать на OpenCL/CUDA для повышения скорости.

Демотиватор.
Если окажется, что брутфорс пароля экономически более оправдан, чем покупка
биткоинов на бирже, то наши наработки будут применяться в очень плохих целях.

Может есть софт для брута у кого-то.
И еще квантовый компьютер в кладовке. Smiley

Если же серьезно, то такой софт пишется специально для конкретных алгоритмов.
Не уверен, что есть причины, чтобы в мире уже существовал нужный брутфорсер.
newbie
Activity: 58
Merit: 0
February 17, 2012, 03:39:28 PM
#1
Случилось самое ужасное. Не принимает пароль от кошелька. Видимо когда устанавливал, допустил ошибку. Интуитивно понимаю что пароль мог поставить только определённый. Скорее всего либо раскладка была не та, либо капс, либо символ пропустил. Длина пароля до 9 символов. Да и алфавит не весь используется в предполагаемых паролях. Попробовал простым путём пойти. С разными раскладками, капсом клацать. Не заходит. Может есть софт для брута у кого-то.
Pages:
Jump to: