A bitcoin address generator written in Rust.
Generates a Bitcoin wallet address from a random private 256bit key.
Made for learning purposes only.
Here are the steps used to generate the address:
βββββββββββββββββββββββ ββββββββββββββ
β β β β
β 256 bit Private Key βββββββββββββββββββββββΊβ Public Key β
β β Elliptic Curve β β
βββββββββββββββββββββββ Digital Signature ββββββββ¬ββββββ
Algorithm β
βSHA256/RIPEMD160
β
βββββββββββββββββββββββ Add network ββββββββΌββββββ
β Hashed Key β byte prefix β β
β with net prefix ββββββββββββββββββββββββ€ Hashed Key β
ββββββββββββ¬ββββββ¬βββββ β β
β β ββββββββββββββ
β β
SHA256 twiceβ β
β β
β β
β β βββββββββββββββ
β ββββββββββββββββββββββββββββββββββββββΊβ β
β Add first four bytes β Unencoded β
βββββββββββΌβββββββββββ of checksum to hashed key β Address β
β βββββββββββββββββββββββββββββββββΊβ β
β Checksum β ββββββββ¬βββββββ
β β β
ββββββββββββββββββββββ β
βBase58 Encoding
β
βββββββββββΌβββββββββββ
β β
β BITCOIN β
β WALLET β
β ADDRESS β
β β
ββββββββββββββββββββββ