Skip to content

chidimo/Voidcoin

Repository files navigation

VoidCoin

A blockchain implementation in python and django as the backend. It builds largely on the sources linked in the resources section. Theme is by Bootswatch

See it in action http://voidcoin.herokuapp.com/

Features

  1. Multiple wallets per user and saving in a Django database (not recommended in a production system)
  2. Signed transactions using private key
  3. Node registration
  4. User registration (optional). To keep things simple, registration only requires a user to provide an email (not necessarily valid, but format is important) and a unique screen name (for identification)
  5. Cannot transfer more coin than you have in your wallet
  6. Anybody can mine a block, but there must be at least 3 pending transactions before block can be mined.

Views

Home

This view shows a list of all blocks on the blockchain. A list of all signed and verified transactions that have not been added to a block are also shown

Wallet Index

This view shows a list of all wallets in the system. The wallets are stored in a Django database with the following fields

alias Identifier to help a registered user differentiate between their various wallets. Must be unique for user

owner The registered user who creates the wallet. Field is auto-filled for logged in user

public_key The wallet address or public key

private_key The wallet private key. Only the user who owns this wallet can see this key, in their dashboard

balance The amount of coin balance in the wallet

Transactions Index

List of every single transaction in the blockchain

Nodes index

List of all registered nodes

Account view

View user's account and all the wallets they own

Resources

  1. Learn Blockchains by Building One
  2. A Practical Introduction to Blockchain with Python
  3. Blockchain demo

To do

  1. Subtract coin from sender. Add coin to receiver
  2. Limit total coin to amount in COINBASE

About

A blockchain implementation in python and django

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published