Skip to content

Instantly share code, notes, and snippets.

@pjha1994
Forked from joepie91/blockchain.md
Created January 9, 2018 20:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pjha1994/e688d456b3dbd302592fda4f755fa776 to your computer and use it in GitHub Desktop.
Save pjha1994/e688d456b3dbd302592fda4f755fa776 to your computer and use it in GitHub Desktop.
Is my blockchain a blockchain?

Your blockchain must have all of the following properties:

  • It's a merkle tree, or a construct with equivalent properties.
  • There is no single point of trust or authority; nodes are operated by different parties.
  • Multiple 'forks' of the blockchain may exist - that is, nodes may disagree on what the full sequence of blocks looks like.
  • In the case of such a fork, there must exist a deterministic consensus algorithm of some sort to decide what the "real" blockchain looks like (ie. which fork is "correct").
  • The consensus algorithm must be executable with only the information contained in the blockchain (or its forks), and no external input (eg. no decisionmaking from a centralized 'trust node').

If your blockchain is missing any of the above properties, it is not a blockchain, it is just a ledger.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment