Help Needed – Qubic Wallet Recovery .vault file, PBKDF2-HMAC-SHA256)
#1
I’m trying to recover my Qubic wallet but have lost both the password and the recovery phrase. Unfortunately, my computer crashed before I could save them.
The wallet file is a
.vault
file, which I believe is encrypted using PBKDF2-HMAC-SHA256 with 100,000 iterations, and contains the salt, IV, cipher, and data fields.
For testing, I created a separate wallet where I knew the password, extracted the hash using Python, and successfully cracked it with Hashcat. However, I’m stuck on how to extract a similar hash from my real wallet file, given I don’t have the password.
I’ve looked into
john2hash
and similar tools, but most examples seem tailored for other wallet formats, and I’m not sure they apply to Qubic.
Any advice on how to proceed would be greatly appreciated.
Reply
#2
From my understanding in order to get compatible hash for hashcat. you need the password especially for PBKDF2 encryption. However there must be a method in order to have the last part of the hash as a ? so Hashcat attack modes can guess a password with the criteria given then enter that sha256 hashed password into the hash in order to see if it could open the wallet to reveal the keys. I believe this is how it works but I am still very new to this so i am not sure. 

Any advice on if I am thinking the right way or if I need to shift my thinking at all. 


Thanks in advance
Reply
#3
Basically, as with all crackers, what you need is a way to verify if a password is correct. With most algorithms used today, you simply have to reproduce what the target application does. For example, if you know the algorithm uses PBKDF2, then you use PBKDF2. If you know that AES is needed afterwards, such as decrypting some data and then checking for a specific pattern, you follow the same steps. Many algorithms follow this exact pattern, and it is easy to find a template kernel implementation for such cases.

There is a useful pull request that is not yet merged because it is out of date, but it is a good starting point for learning how to write an efficient hashcat kernel: https://github.com/hashcat/hashcat/pull/4127
Reply
#4
(8 hours ago)atom Wrote: Basically, as with all crackers, what you need is a way to verify if a password is correct. With most algorithms used today, you simply have to reproduce what the target application does. For example, if you know the algorithm uses PBKDF2, then you use PBKDF2. If you know that AES is needed afterwards, such as decrypting some data and then checking for a specific pattern, you follow the same steps. Many algorithms follow this exact pattern, and it is easy to find a template kernel implementation for such cases.

There is a useful pull request that is not yet merged because it is out of date, but it is a good starting point for learning how to write an efficient hashcat kernel: https://github.com/hashcat/hashcat/pull/4127
Reply