• SIDEBAR
  • Close
YouTube channel BCD Forum Discord

Bitcoin2john

Title: Bitcoin2john: A Cryptanalysis Tool for Bitcoin Wallet Passwords

Abstract:

Bitcoin, the world's first decentralized cryptocurrency, has gained significant attention in recent years. With the rise of Bitcoin, the need for robust security measures has become increasingly important. One crucial aspect of Bitcoin security is wallet password protection. In this paper, we introduce Bitcoin2john, a cryptanalysis tool designed to recover Bitcoin wallet passwords. We explore the design and implementation of Bitcoin2john, discuss its capabilities and limitations, and analyze its effectiveness in cracking Bitcoin wallet passwords.

Introduction:

Bitcoin wallets store users' private keys, which are used to authorize transactions and access funds. To protect these private keys, Bitcoin wallets often employ password-based encryption. However, users frequently choose weak passwords, making their wallets vulnerable to brute-force attacks. Bitcoin2john is a tool designed to exploit these vulnerabilities and recover wallet passwords.

Background:

Bitcoin wallets use various encryption algorithms, such as AES (Advanced Encryption Standard) and PBKDF2 (Password-Based Key Derivation Function 2), to protect private keys. These algorithms rely on a password, which is used to derive a cryptographic key. The strength of the encryption depends on the complexity and randomness of the password.

Related Work:

Several password cracking tools exist, such as John the Ripper (JTR) and Hashcat. These tools are designed to crack password hashes using brute-force attacks, dictionary attacks, or a combination of both. However, Bitcoin2john is specifically designed to target Bitcoin wallet passwords, taking into account the unique characteristics of Bitcoin wallet encryption. Bitcoin2john

Design and Implementation:

Bitcoin2john is built on top of the John the Ripper framework. The tool consists of three primary components:

  1. Wallet Parser: This module extracts the encrypted private key and salt values from the Bitcoin wallet file.
  2. Password Cracker: This module uses a combination of brute-force and dictionary attacks to guess the password.
  3. Key Derivation: This module derives the cryptographic key from the guessed password and salt values.

Bitcoin2john supports various Bitcoin wallet formats, including JSON Wallet and Bitcoin Core's wallet.dat file.

Capabilities and Limitations:

Bitcoin2john can:

However, Bitcoin2john has some limitations:

Experimental Evaluation:

We evaluated Bitcoin2john's performance on a dataset of Bitcoin wallets with known passwords. The results show that: Title: Bitcoin2john: A Cryptanalysis Tool for Bitcoin Wallet

Conclusion:

Bitcoin2john is a powerful tool for cryptanalyzing Bitcoin wallet passwords. While it can be used maliciously, it also serves as a warning to Bitcoin users about the importance of choosing strong, unique passwords. By understanding the capabilities and limitations of Bitcoin2john, wallet developers and users can take steps to improve wallet security and protect against password cracking attacks.

Recommendations:

References:

[1] Nakamoto, S. (2008). Bitcoin: A peer-to-peer electronic cash system.

[2] John the Ripper. (n.d.). Retrieved from https://www.openwall.com/john/

[3] Hashcat. (n.d.). Retrieved from https://hashcat.net/


9. Legal & Ethical Warning

Only use Bitcoin2john on wallets you own or have explicit permission to test. Unauthorized cracking of wallet files is illegal in most jurisdictions and violates computer fraud laws. This guide is for legitimate recovery of your own lost funds or forensic analysis with proper authorization. Wallet Parser: This module extracts the encrypted private


Scenario 2: Partial knowledge (mask attack)

You remember the password was Bitcoin2020 but maybe a different year. Use mask attack in hashcat:

hashcat -m 11300 -a 3 bitcoin_hash.txt Bitcoin?d?d?d?d

1. "No Bitcoin wallet hash found"

Cause: Your wallet.dat is not encrypted, or you are pointing to a very old version (pre-encryption era). Fix: Try opening the wallet in a text editor. If you see readable JSON or private keys, it is not encrypted. You don't need Bitcoin2john.

5. How to Use Bitcoin2john – Step by Step

Bitcoin2john vs. Hashcat: Which is better?

While John the Ripper is the namesake, many professionals prefer Hashcat for Bitcoin wallets because Hashcat supports GPU acceleration (graphics cards are thousands of times faster than CPUs for hashing).

Using Bitcoin2john with Hashcat: The hash format produced by Bitcoin2john is compatible with Hashcat mode 11300 (Bitcoin wallet).

  1. Run Bitcoin2john to get the hash.
  2. Save it to a file (e.g., btc.hash).
  3. Run Hashcat:
    hashcat -m 11300 -a 3 btc.hash ?l?l?l?l?l?l?l?l
    

Performance insight: A modern RTX 4090 GPU can test roughly 20,000–30,000 Bitcoin wallet hashes per second. This sounds fast, but due to the iteration count (key stretching), it is significantly slower than cracking an MD5 hash (billions per second). This is why a good passphrase is crucial.

Output: old_wallet.dat:$bitcoin$96$3f3f...aabb$256$1010...cdef$20000$abcd...1234

Why can’t you just open the wallet?

When you encrypt a Bitcoin Core wallet, the software does not save your password. It saves a hash—a mathematical representation of your password. When you type your password, Core hashes it and checks if it matches the stored hash.

If you forgot the password, you must guess millions of passwords, hash them, and compare them. This is "cracking." But John the Ripper cannot read a .dat file directly. It needs a text string. Bitcoin2john provides that text string.

2. How Bitcoin Wallet Encryption Works (Briefly)

To understand what Bitcoin2john extracts, you need to know the basics:

The hash extracted by Bitcoin2john is essentially the derived key verification value (often called the "verification hash"). It’s not the passphrase — it’s the result of hashing the passphrase, so it can be used for proof-of-work cracking.



Bitcoin2john
Unofficial, turbo-charged AMD graphics drivers for Mac users running BootCamp

Announcements

  • Welcome to the updated website look!
  • 2024 drivers are now available for download.
  • BETA drivers for testing are released first on the Discord server. Join up for early access to latest drivers!
  • Subscribe to the YouTube channel to be the first to see the latest video uploads.

Latest video from Mat HD Subscribe to the channel:


Play driver installation instructions video


Latest driver version

Adrenalin October 2024 edition (24.10.1)  
(last updated 23/03/25)
Driver Version: 23.20.11.04

AMD release notes BCD changelog Compatibility list

Disclaimer: By downloading and installing the modified drivers you accept that any damages or lost data is not my responsibility. Backup your data before proceeding!



Help us - donate

Your donation helps towards website running costs and annual renewal of the driver certificate. Thank you!

Donate via PayPal

PayPal
Donate via Cryptocurrencies

Cryptocurrencies (BitCoin, LiteCoin, Ethereum, DogeCoin & more)