Mine Bitcoin Addresses ⛏️🅰️🅱️🅾️

Overview

Bitcoin Address Miner

License: MIT Crates.io

Mine Bitcoin Addresses ⛏️ 🅰️ 🅱️ 🅾️

Overview

The Bitcoin Address Miner is a utility written in Rust that generates random BIP-32, Base58 P2PKH Bitcoin addresses and searches for addresses that start with a user-specified sequence of characters.
It utilizes multiple asynchronous threads to mine addresses concurrently.

  • Base58 P2PKH refers to a specific encoding format used in Bitcoin addresses:
  1. Base58 : This is a binary-to-text encoding scheme that is similar to Base64 but avoids using
    easily confused characters (like 0, O, I, and l) to make strings more legible.
    Base58 is commonly used in Bitcoin addresses to represent data in a human-readable format.
  2. P2PKH : This stands for "Pay to Public Key Hash." It is a standard transaction script in Bitcoin that specifies how funds can be spent.
    In a P2PKH transaction, the recipient's address is derived from the hash of their public key.

So, when you combine Base58 encoding with a P2PKH address, you get a format that looks like a string of characters, such as 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa.
This is the well-known address associated with the first-ever Bitcoin transaction.

Scope

The Bitcoin Address Miner is designed for individuals interested in exploring Bitcoin address generation and conducting experiments related to address matching. Potential use cases include:

  • Educational Purposes: Learn about Bitcoin address generation, key pairs, and the structure of Bitcoin addresses.

  • Security Research: Test the robustness of address generation algorithms and study patterns in address creation.

  • Address Customization: Find Bitcoin addresses that start with specific characters for custom address creation.

Features

  • Generates random Bitcoin addresses.
  • Searches for addresses starting with a user-defined sequence of characters.
  • Utilizes multiple asynchronous threads for concurrent mining.
  • Prints matching addresses along with associated private and public keys.
  • Calculates and displays the elapsed time for each successful address mining.

Prerequisites

How to Use

  1. Clone the repository:
git clone https://github.com/r3drun3/bitcoin-address-miner
  1. Navigate to the project directory:
cd bitcoin-address-miner
  1. Build and run the program:
cargo build --release
cargo run
  1. Enter the starting letters for the address when prompted.
  2. The program will run multiple threads to mine addresses concurrently.
    Once a matching address is found, the program will display the address, private key, public key, and the elapsed time.

Example: download from crates and run binary:

cargo install bitcoin_address_miner &&  bitcoin_address_miner  

Updating crates.io index
  Downloaded bitcoin_address_miner v0.1.2
  Downloaded 1 crate (25.3 KB) in 1.13s
  Installing bitcoin_address_miner v0.1.2
    Updating crates.io index
   Compiling libc v0.2.150
   Compiling cfg-if v1.0.0
   Compiling proc-macro2 v1.0.69
   Compiling bitcoin-internals v0.2.0
   Compiling unicode-ident v1.0.12
   Compiling autocfg v1.1.0
   Compiling parking_lot_core v0.9.9
   Compiling ppv-lite86 v0.2.17
   Compiling smallvec v1.11.2
   Compiling scopeguard v1.2.0
   Compiling hex-conservative v0.1.1
   Compiling lock_api v0.4.11
   Compiling hex_lit v0.1.1
   Compiling bitcoin v0.31.0
   Compiling bitcoin_hashes v0.13.0
   Compiling pin-project-lite v0.2.13
   Compiling bytes v1.5.0
   Compiling quote v1.0.33
   Compiling cc v1.0.83
   Compiling bech32 v0.10.0-beta
   Compiling syn v2.0.39
   Compiling getrandom v0.2.11
   Compiling rand_core v0.6.4
   Compiling mio v0.8.9
   Compiling rand_chacha v0.3.1
   Compiling parking_lot v0.12.1
   Compiling rand v0.8.5
   Compiling num_cpus v1.16.0
   Compiling signal-hook-registry v1.4.1
   Compiling socket2 v0.5.5
   Compiling secp256k1-sys v0.9.0
   Compiling hex v0.4.3
   Compiling tokio-macros v2.2.0
   Compiling tokio v1.34.0
   Compiling secp256k1 v0.28.0
   Compiling bitcoin_address_miner v0.1.2
    Finished release [optimized] target(s) in 31.17s
  Installing /Users/rago/.cargo/bin/bitcoin_address_miner
   Installed package `bitcoin_address_miner v0.1.2` (executable `bitcoin_address_miner`)

[BITCOIN KEY/ADDRESS MINING] 
 Enter the starting letters for the address: 
JoKe

 Starting mining...this may take many minutes (or even days) to complete
Found matching address: 1JoKesTr2vDhVaayJGwifva8hA9JaRKtFJ
Private Key: AF5E88FCC60EA189ADADCC694082CCC76066E096ADE33812B5A9914DA6C6FC73
Public Key: 023de08a1c546e14b87b62f26dee68f13894403c66b3878288eabed772abdda63d
Elapsed Time: 15.50 minutes

License

This utility is open-source and released under the MIT License

You might also like...
Iterate over bitcoin blocks

Blocks iterator Iterates over Bitcoin blocks, decoding data inside Bitcoin Core's blocks directory. Features: Blocks are returned in height order, it

EXPERIMENTAL: Bitcoin Core Prometheus exporter based on User-Space, Statically Defined Tracing and eBPF.

bitcoind-observer An experimental Prometheus metric exporter for Bitcoin Core based on Userspace, Statically Defined Tracing and eBPF. This demo is ba

Rust command line program for Bitcoin brainwallet

brainwallet Rust command line program for Bitcoin brainwallet as implemented at https://www.bitaddress.org. To run it, first install Rust, e.g. from h

Rustcoin - A LightWeight SDK For Bitcoin, Ethernum

Rustcoin - A LightWeight SDK For Bitcoin, Ethernum

The Stage 2 building block to reach the dream of DSNs with Bitcoin DeFi

rust-nostr Intro A complete suite of nostr Bitcoin libraries that can be used to develop Decentralized Social Networks (DSN) with integrated Bitcoin f

A preview of the integration between Bitcoin and the Internet Computer.

Bitcoin Integration Developer Preview Overview The integration between the Internet Computer and Bitcoin will enable developers to build canisters tha

Library with support for de/serialization, parsing and executing on data-structures and network messages related to Bitcoin
Library with support for de/serialization, parsing and executing on data-structures and network messages related to Bitcoin

Rust Bitcoin Library with support for de/serialization, parsing and executing on data-structures and network messages related to Bitcoin. Heads up for

interBTC  A trust-minimized bridge from Bitcoin to Polkadot.
interBTC A trust-minimized bridge from Bitcoin to Polkadot.

interBTC A trust-minimized bridge from Bitcoin to Polkadot. Explore the specification » Report Bug · Request Feature This repository is hosted on GitH

A demo of the Internet Computer's Bitcoin API

Bitcoin Integration Demo A demo of the bitcoin endpoints on the Internet Computer. This demo is already deployed to the IC, so you can already try it

Owner
simone ragonesi
Sr. Cloud Native Security Engineer ☁️ ☸ 🚀
simone ragonesi
Bitcoin Push Notification Service (BPNS) allows you to receive notifications of Bitcoin transactions of your non-custodial wallets on a provider of your choice, all while respecting your privacy

Bitcoin Push Notification Service (BPNS) Description Bitcoin Push Notification Service (BPNS) allows you to receive notifications of Bitcoin transacti

BPNS 1 May 2, 2022
Minimal Bitcoin wallet intended for teaching rust-bitcoin

Insanely minimal Bitcoin wallet intended for demonstration of Rust Bitcoin ecosystem Absolutely DO NOT use with mainnet funds!!! No privacy - address

Martin Habovštiak 4 May 5, 2023
Modern, lightweight & standard-compliant bitcoin wallet runtime & cli without rust-bitcoin dependencies

Bitcoin protocol command-line wallet & tools Modern, minimalistic & standard-compliant cold wallet from LNP/BP Standards Association. Contributing Con

BP: Bitcoin protocol 3 Jul 31, 2023
miners is a fast Rust library for the Maximal Information-based Nonparametric Exploration (MIC and MINE family)

miners miners is a fast Rust library for the Maximal Information-based Nonparametric Exploration (MIC and MINE family). miners using rayon and vectori

CuteSocks 7 Nov 2, 2023
Vanitygen-bip39 - Generate vanity / gas efficient Ethereum addresses for your hdwallet (bip39 12 or 24 words)

vanitygen-bip39 Generate Ethereum gas efficient addresses with leading zeros https://medium.com/coinmonks/on-efficient-ethereum-addresses-3fef0596e263

iam4x 9 Jul 2, 2022
Tool for computing vanity Gnosis Safe addresses

0xdeadbeef Tool used for computing vanity Gnosis Safe addresses. This tool is currently hard-coded to only support the v1.3.0 Safe deployment: GnosisS

Nicholas Rodrigues Lordello 44 Dec 22, 2022
Generate IPv4 12th order Hilbert heatmaps from a file of IPv4 addresses.

Rustified IPv4 Heatmap This is a pure Rust version of the C ipv4-heatmap utility originally published by The Measurement Factory and updated forever-a

boB Rudis 8 Sep 28, 2022
stealth addresses library implementing ERC-5564 over secp256k1 in rust

eth-stealth-addresses rust library implementing ERC-5564 stealth addresses using canonical ECC over the secp256k1 curve. let's make privacy on evm cha

κασσάνδρα.eth 30 Oct 9, 2023
A Rust library for working with Bitcoin SV

Rust-SV A library to build Bitcoin SV applications in Rust. Documentation Features P2P protocol messages (construction and serialization) Address enco

Brenton Gunning 51 Oct 13, 2022
The Parity Bitcoin client

The Parity Bitcoin client. Gitter Installing from source Installing the snap Running tests Going online Importing bitcoind database Command line inter

Parity Technologies 714 Dec 21, 2022