You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Dominic M. Schlott 55f69c35a9 update toychain calling script 3 years ago
_data library update (0d8920d) on Tue Jun 22 11:01:00 PM CEST 2021 3 years ago
bin update toychain calling script 3 years ago
lib@0d8920d1f5 library update (0d8920d) on Tue Jun 22 11:01:00 PM CEST 2021 3 years ago
secrets add init script 3 years ago
t library update (0d8920d) on Tue Jun 22 11:01:00 PM CEST 2021 3 years ago
.gitattributes library update (0d8920d) on Tue Jun 22 11:01:00 PM CEST 2021 3 years ago
.gitignore added test for hashcash and starting signatures 3 years ago
.gitmodules changed submodule repository to reflect holo-git path: michelc/blockchain-lib.git 3 years ago
PerlWebSocketEchoServer.pl added test for hashcash and starting signatures 3 years ago
README.md added symetric key to unlock protected files 3 years ago
config.yml add init script 3 years ago
eckeygen.pl added test for hashcash and starting signatures 3 years ago
execution-notes.md added first files and design notes 3 years ago
genesis.yml add init script 3 years ago
local.key.asc added symetric key to unlock protected files 3 years ago
modules.deps added -w to perl testing.pl 3 years ago
notes.md library update (0d8920d) on Tue Jun 22 11:01:00 PM CEST 2021 3 years ago
project.mbox added symetric key to unlock protected files 3 years ago
rc.sh added a rc.sh file to setup the environment 3 years ago
testing.pl library update (0d8920d) on Tue Jun 22 11:01:00 PM CEST 2021 3 years ago
tx.yml added first files and design notes 3 years ago

README.md

A toy chain

The chain should have these properties:

  • Running on at least 2 pre-defined nodes (IP addresses given in a config file / no additional discovery necessary)-
  • PoW, with every node a miner-
  • The difficulty is fixed (i.e., block time is not), each block rewards 100 coins-
  • ECDSA cryptography; addresses may be pure public keys-
  • Protect against double spending
  • Transactions can have additional data payload, signed by the sender (and there needs to be a way to set it)
  • Blocks can have additional data payload (and there needs to be a way to set it)
  • Implement a simple REST-like web service API which implements the following services and returns JSON data:
    • Query the block count.
    • Query a single block and return all its transaction data.
    • Query a single transaction and return all its data.
    • Create a transaction from JSON data and accept it for mining

note: sensitive data are encrypted w/ git-crypt; please send your public key if you need access or ask for a shared DH secret

decrypt can be done with the command :

export GPG_ASKPASS=ssh-askpass
git-crypt unlock
#gpg --decrypt local.key.asc | git-crypt unlock -