Go to file
Wei Yang 29099f0c02 check wallet before sending
We could only send money from our own wallet.

If the parameter is not an address in our wallet, exit the program gracefully
and show an error message.
2017-10-18 11:54:37 +08:00
.gitignore Update .gitignore 2017-10-01 10:53:19 +07:00
README.md Update README 2017-10-06 17:32:52 +07:00
base58.go base58: fix Base58Decode on calculating the zeroBytes 2017-10-16 21:51:16 +08:00
base58_test.go base58_test: add test case for Base58 2017-10-16 21:51:16 +08:00
block.go Implement block height 2017-10-01 11:02:38 +07:00
blockchain.go Use View instead of Update in NewBlockchain() 2017-10-18 11:51:41 +08:00
blockchain_iterator.go Extract some structs into separate files 2017-09-10 10:54:58 +07:00
cli.go cli: add three cli command for exploring 2017-10-18 11:41:47 +08:00
cli_createblockchain.go Blockchain file name must depend on node ID 2017-10-01 10:42:34 +07:00
cli_createwallet.go Fix wallet file name 2017-10-01 10:53:26 +07:00
cli_explore.go cli: add three cli command for exploring 2017-10-18 11:41:47 +08:00
cli_getbalance.go Blockchain file name must depend on node ID 2017-10-01 10:42:34 +07:00
cli_listaddress.go Wallet file name must depend on node ID 2017-10-01 10:48:51 +07:00
cli_printchain.go cli: show timestamp of the block 2017-10-12 08:58:28 +08:00
cli_reindexutxo.go Blockchain file name must depend on node ID 2017-10-01 10:42:34 +07:00
cli_send.go check wallet before sending 2017-10-18 11:54:37 +08:00
cli_startnode.go Add -miner flag to 'startnode' command 2017-10-03 16:21:15 +07:00
main.go Implement 'createblockchain' command 2017-09-03 11:17:10 +07:00
merkle_tree.go merkle tree: fix the implementation and add a test case 2017-10-16 12:45:37 +08:00
merkle_tree_test.go merkle tree: fix the implementation and add a test case 2017-10-16 12:45:37 +08:00
proofofwork.go Lower the difficulty of PoW 2017-09-19 15:03:30 +07:00
server.go version: display the addree when a new node is connected 2017-10-18 11:47:23 +08:00
transaction.go When a new block is mined, let everyone know 2017-10-06 11:30:51 +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 Wallet file name must depend on node ID 2017-10-01 10:48:51 +07:00
wallets.go check wallet before sending 2017-10-18 11:54:37 +08: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
  7. Network