john icon indicating copy to clipboard operation
john copied to clipboard

adding support for Coinomi wallet cracking

Open DanielsBerlin opened this issue 3 years ago • 6 comments

I was wondering is it possible to add support for coinomi wallet file for john? because it is very similar to multibit wallet (Scrypt) John the ripper already supports extracting and cracking Multibit wallet. multibit backup file is using Scrypt algorithm. I tried extracting a coinomi wallet file using multibit2john. the result was a multibit hash, but John couldn't crack it with known password. I created a test coinomi wallet and tried to crack it using btcrecover and it cracked it and output was as below

Wallet Type: btcrpass.WalletCoinomi
Wallet difficulty: scrypt N, r, p = 16384, 8, 1
2022-02-22 11:38:22 : Using 8 worker threads
Notice: Loading File:  .\passwords\pass.txt
Notice: Finished File:  .\passwords\pass.txt
| 0  elapsed: 0:00:00  rate:   0.00  P/s                          
/ 10  elapsed: 0:00:01  rate:   0.52  P/s


Password found: '@coinomi@@'

then I tried to cracked one of the test wallets of multibit in btcrecover and it was also cracked and here is the output:

Wallet Type: btcrpass.WalletBitcoinj
Wallet difficulty: scrypt N, r, p = 16384, 8, 1
2022-02-22 11:43:43 : Using 8 worker threads
Notice: Loading File:  .\passwords\pass.txt
Notice: Finished File:  .\passwords\pass.txt
- 48  elapsed: 0:00:07  rate:   6.82  P/s


Password found: 'btcr-test-password'

as the wallet difficulty information of both wallets are:

Wallet difficulty: scrypt N, r, p = 16384, 8, 1

I have a wild guess that john can also crack it with some modifications. maybe some changes in how the hash is extracted by multibit2john can help to coinomi wallet cracking by john

I have created a test coinomi wallet which is downloadable at these 2 links coinomi.zip

https://ufile.io/c67vplyx
https://file.io/cg65zytapsAG

and the password for this coinomi wallet is:

@coinomi@@

I used multibit2john to get its hash, and the output was following hash:

$multibit$2*080712ba0108031ab5010a101d4d3ae3*7da57785138027268218419e12a0018b*080712ba0108031ab5010a101d4d3ae3

DanielsBerlin avatar Feb 22 '22 08:02 DanielsBerlin

@DanielsBerlin Can you please attach the test wallet right to this issue (click "Attach files ..." at the bottom of the comment edit box) and/or send us a pull request with it (and a text file explaining what it is and containing the password) against https://github.com/openwall/john-samples (it should probably be adding a Coinomi directory either at top-level or inside Multibit). Thanks!

solardiz avatar Feb 22 '22 12:02 solardiz

coinomi.zip

I added the file in zip format

password for wallet file is:

@coinomi@@

DanielsBerlin avatar Feb 22 '22 12:02 DanielsBerlin

@solardiz I was wondering did you look into these details to see is it possible to add coinomi wallet hash by doing some modifications to multibit hash extraction code???

DanielsBerlin avatar Feb 23 '22 11:02 DanielsBerlin

@DanielsBerlin I took a quick look at the hash you posted previously and at the Python code in btcrecover. This didn't appear to be a trivial enough fix for us to take care of right away. I didn't yet look at the wallet file you attached. Maybe someone else will, or not.

Overall, I'm sorry, but we don't treat this issue as a priority. Chances are it will just hang around for long.

solardiz avatar Feb 23 '22 11:02 solardiz

@solardiz I see. you are right do you offer paid services, to take care of these requests.?

DanielsBerlin avatar Feb 23 '22 13:02 DanielsBerlin

@DanielsBerlin Occasionally yes, see https://www.openwall.com/services/

solardiz avatar Feb 23 '22 13:02 solardiz

Мне было интересно, можно ли добавить поддержку файла кошелька coinomi для Джона? поскольку он очень похож на мультибитный кошелек (Scrypt), John the ripper уже поддерживает извлечение и взлом мультибитного кошелька. многобитный файл резервной копии использует алгоритм Scrypt. Я попытался извлечь файл кошелька coinomi с помощью multibit2john. в результате получился многобитный хэш, но Джон не смог взломать его, зная пароль. Я создал тестовый кошелек coinomi и попытался взломать его с помощью btcrecover, и он взломал его, и результат был таким, как показано ниже.

Wallet Type: btcrpass.WalletCoinomi
Wallet difficulty: scrypt N, r, p = 16384, 8, 1
2022-02-22 11:38:22 : Using 8 worker threads
Notice: Loading File:  .\passwords\pass.txt
Notice: Finished File:  .\passwords\pass.txt
| 0  elapsed: 0:00:00  rate:   0.00  P/s                          
/ 10  elapsed: 0:00:01  rate:   0.52  P/s


Password found: '@coinomi@@'

затем я попытался взломать один из тестовых кошельков multibit в btcrecover, и он также был взломан, и вот результат:

Wallet Type: btcrpass.WalletBitcoinj
Wallet difficulty: scrypt N, r, p = 16384, 8, 1
2022-02-22 11:43:43 : Using 8 worker threads
Notice: Loading File:  .\passwords\pass.txt
Notice: Finished File:  .\passwords\pass.txt
- 48  elapsed: 0:00:07  rate:   6.82  P/s


Password found: 'btcr-test-password'

поскольку информация о сложности кошелька для обоих кошельков:

Wallet difficulty: scrypt N, r, p = 16384, 8, 1

У меня есть дикое предположение, что Джон также может взломать его с некоторыми модификациями. возможно, некоторые изменения в том, как multibit2john извлекает хеш, могут помочь взлому кошелька coinomi.

Я создал тестовый кошелек coinomi, который можно скачать по этим 2 ссылкам coinomi.zip

https://ufile.io/c67vplyx
https://file.io/cg65zytapsAG

и пароль для этого кошелька coinomi:

@coinomi@@

Я использовал multibit2john, чтобы получить его хэш, и на выходе был следующий хэш:

$multibit$2*080712ba0108031ab5010a101d4d3ae3*7da57785138027268218419e12a0018b*080712ba0108031ab5010a101d4d3ae3

Hello. Could you please share the full script to extract hash from coinomi wallet. With corrections. multibit2john unable to extract hash

0verflow123 avatar Dec 12 '22 09:12 0verflow123

This is now implemented via #5292. I mention in case anyone in here wants to help test it, or just use it.

solardiz avatar Apr 22 '23 18:04 solardiz