cryptocurrency cheatsheet.txt 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. cryptocurrency
  2. Virtual currency working on a principle of cryptography and using distributed
  3. ledger (typically blockchain).
  4. blockchain
  5. A data structure recording time-stamped transactions. It consists of linked
  6. blocks.
  7. Each block points to its previous block, except the very first one (so called
  8. genesis block), so blockchain is technically a tree, although it looks more
  9. like a list with a few small branches here and there.
  10. The longest chain of transactions is taken as the main branch. Transactions
  11. recorded in the main branch are taken as confirmed. Blocks outside the main
  12. branch are called orphan blocks
  13. Orphan blocks can be created due to lag -- if two valid blocks are
  14. simultaneously created, the network will only be able to accept one, in case
  15. of bitcoin the one with a better, i.e. higher number proof-of-work, will be
  16. accepted and the other one orphaned. Miners don't get reward for orphaned
  17. blocks (because they're not part of the main branch and so the reward isn't
  18. recorded).
  19. A block contains all of these:
  20. - Hash of the previous block, as a back-link to it. A hash (as opposed
  21. to an ID) has to be used so that if the previous block was altered, this
  22. block would no longer be pointing to it.
  23. - Proof of work. E.g. in Bitcoin this is a number X (called nonce) such
  24. that with this number in it the block's hash is lower than the network
  25. difficulty level (this is used to adjust mining difficulty).
  26. - Transactions. These are takes from transactions broadacst by the newtwork
  27. users, and are confirmed by this block (if this block is part of the main
  28. branch).
  29. mining
  30. Doing work (i.e. creating proofs of work) which is rewarded with
  31. cryptocurrency. Mining creates and appends new blocks to the blockchain.
  32. Mining protects the blockchain against altering. To alter a specific block X,
  33. the attacker would have to create a new chain of blocks from X which would
  34. surpass the current main blockchain branch in length (to be acepted as the
  35. main branch), which would require to add new proof of work to each new block
  36. (because altering X would due to linking via hashes alter all following
  37. blocks), which would require to do more work that has been done in the main
  38. branch since X.
  39. Bitcoin
  40. proof of work
  41. A number prooving some work has been done. E.g. given number X, a string S,
  42. such that hash(S) = X, is a proof that machine time has been invested (work
  43. has been done) to find this string.
  44. hashrate
  45. Power of a mining machine, i.e. how quickly it checks hashes, in hashes per
  46. second.
  47. double spending problem