Skip to main content

Second edition of Project Babbage, create a blockchain from scratch.

Project description

Babbagecoin

An understandable proof of work blockchain.

Visit our web page for a nice general overview of the project !

Quickly run a node !

pip install --user babbagecoin
python -m babbagecoin master
# then in another terminal:
python -m babbagecoin miner

For development

Requirements

Install docker and docker-compose, python3 (>=3.9) and poetry.

Run poetry install then poetry shell

Launch

Run the node (master + miner):

make

Stop the node properly:

make stop --> to stop all containers if you didn't stopped them properly (if you did two Ctrl+C in a row)

Or you can run separately the master or miner:

make (master | miner)

There are also VSCode actions for debugging each one of them (even the tests, run in terminal with make test)

Interact with the blockchain

!! Important

Configure your blockchain by creating a .env file on the same model as what's in .env.example.

The wallet will generate a private key for you, save it to private.key.<CURRENT_USER>, and reuse it afterward. A public key is derived from this private key. The hash of the public key is your address, for example e93417c7 (the first 8 characters). The wallet is managing only one private key at the time.

Transactions

Use the bbc.sh script (chmod +x it first):

./bbc.sh tx MARTIAL 10 0.3 --> sending 10BBC with 0.5BBC fees to MARTIAL

make tx is a shortcut for the above command

Balance

./bbc.sh balance to get your wallet balance

make balance is a shortcut for the above command

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

babbagecoin-0.5.0.tar.gz (47.1 kB view details)

Uploaded Source

Built Distribution

babbagecoin-0.5.0-py3-none-any.whl (50.9 kB view details)

Uploaded Python 3

File details

Details for the file babbagecoin-0.5.0.tar.gz.

File metadata

  • Download URL: babbagecoin-0.5.0.tar.gz
  • Upload date:
  • Size: 47.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0 CPython/3.10.4 Linux/5.15.0-47-generic

File hashes

Hashes for babbagecoin-0.5.0.tar.gz
Algorithm Hash digest
SHA256 886d2dc9513cccc6563c97f485382443c1bd24e384566061e976f0e052ed09f6
MD5 a3ae8fd87ddd8e364137b68f130fe304
BLAKE2b-256 3b804e0634588e160018f950fadf1cd7def65fe7f4c6efbe0410ace3c232ced4

See more details on using hashes here.

File details

Details for the file babbagecoin-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: babbagecoin-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 50.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0 CPython/3.10.4 Linux/5.15.0-47-generic

File hashes

Hashes for babbagecoin-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c15baecd92067bbb3837b1ba5f833e1b956bf2cb3f6a359583a4c187bb956b55
MD5 02d354f466232dd3e052766cb2998175
BLAKE2b-256 54ed5ab302e104dd6ee15e055ba647020bb895b78084aec4468775d65056e94e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page