pybtc is a Python library for everything Bitcoin, from cryptography to transactions, blocks, and more. This repository provides tools and functionality for anyone interested in understanding or working with the Bitcoin protocol.
- Cryptography: Tools for working with Bitcoin’s cryptographic primitives, including elliptic curve cryptography (ECDSA).
- Transactions: Create, sign, and verify Bitcoin transactions.
- Blocks: Work with Bitcoin blocks, including parsing and validation.
- Wallets: Generate Bitcoin addresses (Base58 and Bech32) and handle private/public key pairs.
- Bitcoin Node Interaction: Tools to interact with Bitcoin nodes.
- Education: Learn how Bitcoin works through code examples and well-documented functions.
Ensure you have Python 3.7+ installed. You can check your Python version using:
python --version
Clone the repository:
git clone https://github.com/JoBe10/pybtc.git
Navigate to the project directory:
cd pybtc
Install the required dependencies:
pip install -r requirements.txt
Each directory within the parent directory (e.g. the "cryptography" directory) contains jupyter notebooks that explain everything and can be used to interactively explore the code.