How gangi94/blockchainaddress works
This educational cryptography project turns example private keys or supplied public keys/scripts into Bitcoin and Ethereum address encodings. The demonstrated workflow in Main.py derives a secp256k1 public point, formats Bitcoin keys, and requests Bitcoin addresses; it also demonstrates Ethereum key/address conversion and vanity search. Supporting capabilities include Bitcoin P2PKH, P2SH, and SegWit formats, Ethereum EIP-55 checksums and contract addresses. Edges reflect shown calls; Ethereum’s library-internal use of external crypto packages is not expanded.
Main entry points: Main.py Example runner · BtcAddress.py Bitcoin address formats · KeyFormats.py Bitcoin key formats · Weierstrass.py secp256k1 arithmetic
Components 6
Examples
- Example runner
Main.py
Curve and keys
- secp256k1 arithmetic
Weierstrass.py - Bitcoin key formats
KeyFormats.py
Bitcoin addresses
- Bitcoin address formats
BtcAddress.py
Ethereum addresses
- Ethereum address tools
EthAddress.py
Other components
- Experimenter
Connections 8
- Experimenter → Example runner: runs examples
Main.py - Example runner → secp256k1 arithmetic: derives public point
Main.py - Example runner → Bitcoin key formats: formats keys
Main.py - Example runner → Bitcoin address formats: requests addresses
Main.py - Example runner → Ethereum address tools: derives Ethereum address
Main.py - Bitcoin key formats → secp256k1 arithmetic: reads point coordinates
KeyFormats.py - Bitcoin address formats → Bitcoin key formats: computes checksum
BtcAddress.py - Bitcoin address formats → secp256k1 arithmetic: searches public points
BtcAddress.py