Transcript
Page 1: WTF is Blockchain???

WTF is Blockchain???Retro Friday Talk

Guy Kloss

[email protected] Architect

Qrious Limited

7 October 2016

Page 2: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

What’s Money?

Token, representing valueBy social contract

Without acceptance, people won’t care.Law doesn’t matter!

Guy Kloss | WTF is Blockchain??? 2/33

Page 3: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Outline

1 Nuts’n’Bolts Explanation

2 Beyond Money

3 Issues

Guy Kloss | WTF is Blockchain??? 3/33

Page 4: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Outline

1 Nuts’n’Bolts Explanation

2 Beyond Money

3 Issues

Guy Kloss | WTF is Blockchain??? 4/33

Page 5: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Building a Digital Currency: Infocoin

The protocol: “Infocoin”The money: “infocoin”

Guy Kloss | WTF is Blockchain??? 5/33

Page 6: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

First Step: A Signed Letter of Intent

The problem: Double spending(using the same money multiple times)Procedure

Statement of transactionSign that statement (with a crypto signature)

→ No-one else could have created that statementAnnouncement of that statement “to the entire world”

Guy Kloss | WTF is Blockchain??? 6/33

Page 7: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Using Serial Numbers: Unique Coins

ProblemWhat if a statement is sent multiple times?More money, or a “stutter”?

SolutionIntroduce identifiers (serial numbers) for infocoinsNeeds a trusted source of serial numbers (e. g. a bank)“Bank” keeps track of all infocoins& verifies all transactions are legit

ProcedureBob checks back with bank(A) The serial number belongs to Alice(B) The infocoin hasn’t been spent, yet

Guy Kloss | WTF is Blockchain??? 7/33

Page 8: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Making a “Collective” Bank

We don’t want anyone to be in control of the currency→ Let’s eliminate the bank

ProcedureEveryone keeps a complete record oftransactions/ownershipsA shared public ledger

→ The Blockchain(not quite, yet, but we’ll call it that way already)

Bob checks the transaction from Aliceagainst (his copy of) the blockchainIf it checks out:Bob sends the transaction to the entire networkEveryone updates their copy of the blockchain

Guy Kloss | WTF is Blockchain??? 8/33

Page 9: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Making a “Collective” Bank

The Problem:What if Alice sends the same infocoin to Bob andCharlie within a brief period time?

→ Double spending problemBroadcast a transaction to the entire network

Only accept on collective OK(when “enough” people have confirmed it’s OK)What’s “enough”?We don’t know who’s all on the Infocoin network!

Guy Kloss | WTF is Blockchain??? 9/33

Page 10: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

The Cheating Problem

Scenario:Alice wants to take over the Infocoin networkShe creates a large number of “bots” (identities)Alice’s sock puppet identities swamp the network,announcing the transaction is OKOne or both (Bob and Charlie)are fooled into accepting the transaction

Guy Kloss | WTF is Blockchain??? 10/33

Page 11: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Proof-of-Work

Idea: Proof-of-workMake it hard to validate transactions(computationally costly)Reward validated transactions

Why does that help?Costly effort:Not feasible to influence with many identitiesReward is to incentivise others to still do it

→ Impractical to cheat

Guy Kloss | WTF is Blockchain??? 11/33

Page 12: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Proof-of-Work Details

Impractical to apply proof-of-work to every transactionQueue unapproved transactionsValidate transactions against own copy of blockchainSolve a hard computational puzzle – the proof-of-workThe puzzle is related to the queued transactionsThe network accepts a validation only with the solution

Guy Kloss | WTF is Blockchain??? 12/33

Page 13: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Block by Block

Guy Kloss | WTF is Blockchain??? 13/33

Page 14: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

The Puzzle

Bitcoin uses a hash function – SHA-256(also other functions will do)Queue has a label lA random number x (a nonce) is appendedThis is hashed h(l |x)If the hash starts with n zeros, the puzzle is solvedIf not, choose a new nonce x , rinse and repeat

Guy Kloss | WTF is Blockchain??? 14/33

Page 15: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

The Puzzle

h("Hello, world!0")

1312af178c253f84028d480a6adc1e25e81caa44c749ec81976192e2ec934c64

h("Hello, world!1")

e9afc424b79e4f6ab42d99c81156d3a17228d6e1eef4139be78e948a9332a7d8

x = 2, 3, . . .; At x = 4250 we get:h("Hello, world!4250")

0000c3af42fc31103f1fdc0151fa747ff87349a4714df7cc52ea464e12dcd4e9

Number of leading zeros is adjusted regularlyCaters for increase in compute performanceNormalises new block frequency(Bitcoin: average 10 min per block)

Guy Kloss | WTF is Blockchain??? 15/33

Page 16: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Rewarding the Sweat & Tears

Competition with “the world”Successful block wins a reward(in bitcoin, ether, infocoin, . . . )

→ This is miningActs as an incentive for the hard workKeeps the network honestAdjustments to rewards system

Halving eventsSuperceding with transaction fees for miners

→ Capping of total number of coins ever

Guy Kloss | WTF is Blockchain??? 16/33

Page 17: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Rewarding the Sweat & Tears

Guy Kloss | WTF is Blockchain??? 17/33

Page 18: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Another Block in the Chain

We’d like to retain order of transactionsOtherwise:Uncertainty on who owns which infocoin at a timeA linear chain: Next block refers to the previous

→ A new block is added to the chain

Guy Kloss | WTF is Blockchain??? 18/33

Page 19: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Another Block in the Chain

Guy Kloss | WTF is Blockchain??? 19/33

Page 20: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Concurrency Causes Forks

Occasionally a fork happensIf two miners succeed in solving the puzzle(nearly simultaneously)

Guy Kloss | WTF is Blockchain??? 20/33

Page 21: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

What now?

This is what we’re trying to avoidKeep track of both pathsMiners only work on the longest forkOne will eventually get longer“B” gets the next block first, work on “A” will ceaseOutstanding transactions on “B” will be integrated

→ Agreed upon ordering in time will be achieved

Guy Kloss | WTF is Blockchain??? 21/33

Page 22: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Dishonesty on Forking

Back to the double spending problem:Forks can be a chance to double spendWill be detected once both blocks are availableVariant on double spending if Alice = Bob(multiple identities)

Forking intentionally after Charlie accepts the coinCommunity will continue on longest/earliest branchNot feasible to “catch up” with the legit branch

Guy Kloss | WTF is Blockchain??? 22/33

Page 23: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Outline

1 Nuts’n’Bolts Explanation

2 Beyond Money

3 Issues

Guy Kloss | WTF is Blockchain??? 23/33

Page 24: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Content of Records

For money, a block contain payment records.

What if it contained . . .Multiple columns?“Documents” (e. g. JSON)?Code?

Guy Kloss | WTF is Blockchain??? 24/33

Page 25: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Private Chains

Within organisationsWithin user groups

Guy Kloss | WTF is Blockchain??? 25/33

Page 26: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

“Non-Chains”

Just the hash trees (Merkle trees)Not using cryptographic signaturesOne-sided assurance only (from the CA side)

→ No assurance from the client/userOnly proving the positive (document exists)

→ Not the negative (document does not exist)

Guy Kloss | WTF is Blockchain??? 26/33

Page 27: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Side Chains?

What is the biggest, most usedand most secure blockchain in operation?

→ BitcoinSo we should be using that one, right?Can’t do. Not useful for non-payment purposes.

→ Pegging a “side chain” to another (e. g. Bitcoin)Also possible for private chains

→ Federation approach

Guy Kloss | WTF is Blockchain??? 27/33

Page 28: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Visions

New take on identity managementOwnership

Land registriesAssets

Transparency for KiwiSaver & weapons/tobacco/. . .NZX trading for (smaller) companiesProof of ownership

Instant trading any timeSimplified Support Contracts

Guy Kloss | WTF is Blockchain??? 28/33

Page 29: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Outline

1 Nuts’n’Bolts Explanation

2 Beyond Money

3 Issues

Guy Kloss | WTF is Blockchain??? 29/33

Page 30: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Proof of Work

Waste of energy?US$ 1 million in electricity for every day10–100 times Google’s global compute capacity

Scalability?Alternatives

Proof of StakeHybridsCentralised

→ May defeat the purpose

Guy Kloss | WTF is Blockchain??? 30/33

Page 31: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Which Chain?

Which chain to adopt for use?The scene is still much in flowNot all problems are solved, yet

Guy Kloss | WTF is Blockchain??? 31/33

Page 32: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Resources

Videos & talks:David Birch“A new way to stop identity theft”http://www.ted.com/talks/david_birch_identity_without_a_name

Don Tapscott“How the blockchain is changing money and business”http://www.ted.com/talks/don_tapscott_how_the_blockchain_is_changing_money_and_business

Introduction:Michael Nielsen“How the Bitcoin protocol actually works”http://www.michaelnielsen.org/ddi/how-the-bitcoin-protocol-actually-works/

Guy Kloss | WTF is Blockchain??? 32/33

Page 33: WTF is Blockchain???

Nuts’n’Bolts Explanation Beyond Money Issues

Questions?

Be Safe!Guy [email protected]

Guy Kloss | WTF is Blockchain??? 33/33


Top Related