Centrally Banked Cryptocurrencies George Danezis (University College - - PowerPoint PPT Presentation

centrally banked cryptocurrencies
SMART_READER_LITE
LIVE PREVIEW

Centrally Banked Cryptocurrencies George Danezis (University College - - PowerPoint PPT Presentation

Centrally Banked Cryptocurrencies George Danezis (University College London) Sarah Meiklejohn (University College London) whos interested in blockchain? 2 whos interested in blockchain? 2 whos interested in


slide-1
SLIDE 1

Centrally Banked Cryptocurrencies

George Danezis (University College London) Sarah Meiklejohn (University College London)

slide-2
SLIDE 2

2

who’s interested in ‘blockchain’?

slide-3
SLIDE 3

2

who’s interested in ‘blockchain’?

slide-4
SLIDE 4

2

who’s interested in ‘blockchain’?

slide-5
SLIDE 5

2

who’s interested in ‘blockchain’?

slide-6
SLIDE 6

2

who’s interested in ‘blockchain’?

slide-7
SLIDE 7

2

who’s interested in ‘blockchain’?

slide-8
SLIDE 8

2

who’s interested in ‘blockchain’?

slide-9
SLIDE 9

3

fully decentralized cryptocurrencies

slide-10
SLIDE 10

3

fully decentralized cryptocurrencies

slide-11
SLIDE 11

3

fully decentralized cryptocurrencies

tx tx(addrA→addrB)

slide-12
SLIDE 12

3

fully decentralized cryptocurrencies

tx

(generate transaction ledger)

“mining”

(generate monetary supply)

tx(addrA→addrB)

slide-13
SLIDE 13

3

fully decentralized cryptocurrencies

append-only tx

(generate transaction ledger)

“mining”

(generate monetary supply)

tx(addrA→addrB)

slide-14
SLIDE 14

3

fully decentralized cryptocurrencies

transparent append-only tx

(generate transaction ledger)

“mining”

(generate monetary supply)

tx(addrA→addrB)

slide-15
SLIDE 15

3

fully decentralized cryptocurrencies

transparent pseudonyms append-only tx

(generate transaction ledger)

“mining”

(generate monetary supply)

tx(addrA→addrB)

slide-16
SLIDE 16

4

issues with Bitcoin

hashing rates are out of control incentive structure is messed up attacks on mining no control over monetary policy

slide-17
SLIDE 17

4

issues with Bitcoin

hashing rates are out of control incentive structure is messed up attacks on mining no control over monetary policy not suitable for most applications!

slide-18
SLIDE 18

RSCoin

5

slide-19
SLIDE 19

RSCoin

5

monetary supply

decentral central central

slide-20
SLIDE 20

RSCoin

5

monetary supply ledger

central distribute decentral decentral central central

slide-21
SLIDE 21

RSCoin

5

monetary supply ledger

central distribute decentral decentral central central

transparent?

y y (or n) n

slide-22
SLIDE 22

RSCoin

5

monetary supply ledger

central distribute decentral decentral central central

transparent?

y y (or n) n

pseudonyms?

y y (or n) n

slide-23
SLIDE 23

RSCoin

5

monetary supply ledger

central distribute decentral decentral central central

transparent?

y y (or n) n

pseudonyms?

y y (or n) n

computation

high! low low

slide-24
SLIDE 24

6

slide-25
SLIDE 25

6

bank

(generate monetary supply)

slide-26
SLIDE 26

6

mintette mintette mintette mintette bank

(generate monetary supply) (generate transaction ledger)

slide-27
SLIDE 27

6

mintette mintette mintette mintette bank user

(generate monetary supply) (generate transaction ledger)

slide-28
SLIDE 28

6

mintette mintette mintette mintette bank user

(generate monetary supply) (generate transaction ledger)

slide-29
SLIDE 29

6

mintette mintette mintette mintette bank user

(generate monetary supply) (generate transaction ledger)

slide-30
SLIDE 30

7

mintette mintette mintette mintette bank user

slide-31
SLIDE 31

7

mintette mintette mintette mintette bank user consensus?

slide-32
SLIDE 32

7

mintette mintette mintette mintette bank user what gets sent? consensus?

slide-33
SLIDE 33

7

mintette mintette mintette mintette bank user what gets sent? consensus? how do mintettes collect txs?

slide-34
SLIDE 34

7

mintette mintette mintette mintette bank user what gets sent? consensus? how do mintettes collect txs? consensus?

slide-35
SLIDE 35

8

user

1 2 tx:

consensus

slide-36
SLIDE 36

8

user

1 2 tx:

consensus

each address is owned by a set of mintettes

slide-37
SLIDE 37

8

user

1 2 tx:

consensus

each address is owned by a set of mintettes

a d d r e s s e s

mintette mintette mintette mintette mintette mintette mintette mintette mintette mintette mintette mintette mintette mintette mintette mintette mintette mintette

slide-38
SLIDE 38

9

mintette1 mintette1 user

1 2 tx:

mintette1

1

consensus

slide-39
SLIDE 39

9

mintette1 mintette1 user

1 2 tx:

mintette1

1

mintettes check for double spending… …using lists of unspent transaction outputs (utxo)

consensus

slide-40
SLIDE 40

10

mintette1 mintette1 user

1 2 tx:

mintette1

1

signed ‘yes’ vote (and head h)

consensus

slide-41
SLIDE 41

11

mintette1 mintette1 user

1 2 tx:

mintette1

mintette2 mintette2 mintette2

1 tx

✓ ✓ “bundle of evidence” contains ‘yes’ votes from majority of mintettes in shard

consensus

slide-42
SLIDE 42

11

mintette1 mintette1 user

1 2 tx:

mintette1

mintette2 mintette2 mintette2

1 tx

✓ ✓ mintettes check validity of bundle by checking for signatures from authorized mintettes…

consensus

slide-43
SLIDE 43

12

mintette1 mintette1 user

1 2 tx:

mintette1

mintette2 mintette2 mintette2

1 tx

✓ ✓

tx tx

…and if satisfied they add transaction to be committed and send back receipt

consensus

slide-44
SLIDE 44

13

consensus features

slide-45
SLIDE 45

13

consensus features

simple (adaption of Two-Phase Commit)

slide-46
SLIDE 46

13

consensus features

scalable! simple (adaption of Two-Phase Commit)

slide-47
SLIDE 47

13

consensus features

scalable!

T = set of txs generated per second Q = # mintettes per shard M = # mintettes

simple (adaption of Two-Phase Commit)

slide-48
SLIDE 48

13

consensus features

scalable!

T = set of txs generated per second Q = # mintettes per shard M = # mintettes

simple (adaption of Two-Phase Commit)

∑tx∈T 2(mtx+1)Q M

  • comm. per mintette per sec =
slide-49
SLIDE 49

13

consensus features

scalable!

T = set of txs generated per second Q = # mintettes per shard M = # mintettes

simple (adaption of Two-Phase Commit)

∑tx∈T 2(mtx+1)Q

scales infinitely as more mintettes are added!

M

  • comm. per mintette per sec =
slide-50
SLIDE 50

14

slide-51
SLIDE 51

14

each new mintette adds ≈ 75 tx/sec

slide-52
SLIDE 52

14

each new mintette adds ≈ 75 tx/sec compared to Bitcoin’s 7

slide-53
SLIDE 53

what gets sent?

15

mintette mintette mintette mintette bank user what gets sent? how do mintettes collect txs? (2PC) consensus? consensus?

slide-54
SLIDE 54

what gets sent?

15

mintette mintette mintette mintette bank user what gets sent? how do mintettes collect txs? (2PC) how do mintettes collect txs? (contacted based on shard) consensus?

slide-55
SLIDE 55

what gets sent?

15

mintette mintette mintette mintette bank user what gets sent? how do mintettes collect txs? (2PC) (contacted based on shard) what gets sent? consensus?

slide-56
SLIDE 56

16

security properties

no double spending (only “good” transactions get included)

slide-57
SLIDE 57

16

security properties

no double spending (only “good” transactions get included) (if honest majority)

slide-58
SLIDE 58

17

security properties

no double spending (only “good” transactions get included) non-repudiation (mintettes are held to their promises)

slide-59
SLIDE 59

17

security properties

no double spending (only “good” transactions get included) non-repudiation (mintettes are held to their promises) (because mintettes provide receipt upon committing transaction)

slide-60
SLIDE 60

18

security properties

no double spending (only “good” transactions get included) non-repudiation (mintettes are held to their promises) auditability (mintettes can’t cheat without detection)

slide-61
SLIDE 61

19

mintette logs

borrow ideas from Certificate Transparency to log actions

slide-62
SLIDE 62

19

mintette logs

borrow ideas from Certificate Transparency to log actions mintettes create log entry every time they:

  • act as mintette in first phase (Query)
  • act as mintette in second phase (Commit)
  • publish head of hash chain (CloseEpoch)

rolling hash chain of log acts as commitment to actions

slide-63
SLIDE 63

19

mintette logs

borrow ideas from Certificate Transparency to log actions mintettes create log entry every time they:

  • act as mintette in first phase (Query)
  • act as mintette in second phase (Commit)
  • publish head of hash chain (CloseEpoch)

rolling hash chain of log acts as commitment to actions mintettes cross-hash chains to provide evidence of activity

slide-64
SLIDE 64

19

mintette logs

borrow ideas from Certificate Transparency to log actions mintettes create log entry every time they:

  • act as mintette in first phase (Query)
  • act as mintette in second phase (Commit)
  • publish head of hash chain (CloseEpoch)

rolling hash chain of log acts as commitment to actions send logs to bank at end of every period mintettes cross-hash chains to provide evidence of activity

slide-65
SLIDE 65

20

security properties

no double spending (only “good” transactions get included) non-repudiation (mintettes are held to their promises) auditability (mintettes can’t cheat without detection)

slide-66
SLIDE 66

20

security properties

no double spending (only “good” transactions get included) non-repudiation (mintettes are held to their promises) auditability (mintettes can’t cheat without detection)

slide-67
SLIDE 67

21

mintette mintette mintette mintette bank user what gets sent? how do mintettes collect txs? (2PC) (contacted based on shard) what gets sent? (cross-hashed chains) consensus?

slide-68
SLIDE 68

21

mintette mintette mintette mintette bank user what gets sent? how do mintettes collect txs? (2PC) (contacted based on shard) (cross-hashed chains)

  • collate transactions

consensus?

slide-69
SLIDE 69

21

mintette mintette mintette mintette bank user what gets sent? how do mintettes collect txs? (2PC) (contacted based on shard) (cross-hashed chains)

  • collate transactions
  • allocate fees
  • audit mintettes

consensus?

slide-70
SLIDE 70

21

mintette mintette mintette mintette bank user what gets sent? how do mintettes collect txs? (2PC) (contacted based on shard) (cross-hashed chains)

  • collate transactions
  • allocate fees
  • audit mintettes

(-add coin generation)

  • authorize mintettes

consensus?

slide-71
SLIDE 71

RSCoin

22

monetary supply ledger

central distribute decentral decentral central central

transparent?

y y (or n) n

pseudonyms?

y y (or n) n

computation

high! low low

slide-72
SLIDE 72

RSCoin

22

monetary supply ledger

central distribute decentral decentral central central

transparent?

y y (or n) n

pseudonyms?

y y (or n) n

computation

high! low low Thanks! Any questions?