Go to file
Ivan Kuznetsov 1c5bc460f4 Implement 'version' command 2017-10-01 09:33:33 +07:00
.gitignore Save wallet to a file 2017-09-07 16:42:38 +07:00
README.md Update the README 2017-09-19 16:44:23 +07:00
base58.go Clean up base58.go 2017-09-10 11:42:11 +07:00
block.go Use Merkle root hash in proof-of-work 2017-09-18 13:01:43 +07:00
blockchain.go FindAllUTXO → FindUTXO 2017-09-17 12:44:43 +07:00
blockchain_iterator.go Extract some structs into separate files 2017-09-10 10:54:58 +07:00
cli.go Implement 'startnode' CLI command 2017-10-01 08:44:41 +07:00
cli_createblockchain.go Reindex the UTXO set after creating a new blockchain 2017-09-17 12:37:45 +07:00
cli_createwallet.go Extract CLI commands into separate files 2017-09-10 12:53:06 +07:00
cli_getbalance.go Use the UTXO set to get balance 2017-09-17 11:01:29 +07:00
cli_listaddress.go Extract CLI commands into separate files 2017-09-10 12:53:06 +07:00
cli_printchain.go Remove the 'address' argument from NewBlockchain, since it's not used anymore 2017-09-17 10:43:23 +07:00
cli_reindexutxo.go Rename UTXOSet.GetCount to UTXOSet.CountTransactions 2017-09-18 10:41:36 +07:00
cli_send.go Update the UTXO set after mining a new block 2017-09-17 12:21:24 +07:00
cli_startnode.go Implement 'startnode' CLI command 2017-10-01 08:44:41 +07:00
main.go Implement 'createblockchain' command 2017-09-03 11:17:10 +07:00
merkle_tree.go Implement Merkle tree 2017-09-18 12:45:58 +07:00
merkle_tree_test.go Implement Merkle tree 2017-09-18 12:45:58 +07:00
proofofwork.go Lower the difficulty of PoW 2017-09-19 15:03:30 +07:00
server.go Implement 'version' command 2017-10-01 09:33:33 +07:00
transaction.go Fill coinbase transaction data with random bytes 2017-09-19 15:47:03 +07:00
transaction_input.go Store input sig and key in different fields; rename TXInput.ScriptPubKey to PubKeyHash 2017-09-10 14:05:23 +07:00
transaction_output.go Implement DeserializeOutputs 2017-09-17 11:01:06 +07:00
utils.go Implement address generation and wallets 2017-09-07 14:18:12 +07:00
utxo_set.go Refactor something in UTXOSet 2017-09-18 11:01:24 +07:00
wallet.go Revert "Fix the 'checksum' function" 2017-09-19 14:53:53 +07:00
wallets.go Extract some structs into separate files 2017-09-10 10:54:58 +07:00

README.md

Blockchain in Go

A blockchain implementation in Go, as described in these articles:

  1. Basic Prototype
  2. Proof-of-Work
  3. Persistence and CLI
  4. Transactions 1
  5. Addresses
  6. Transactions 2