+ All Categories
Home > Documents > Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson...

Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson...

Date post: 23-Dec-2015
Category:
Upload: dulcie-tate
View: 215 times
Download: 0 times
Share this document with a friend
24
Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories
Transcript
Page 1: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Ari Juels RSA Laboratories

Proofs of Work (POWs) and Bread Pudding Protocols

with Markus Jakobsson Bell Laboratories

Page 2: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Cryptography: About proofs of mathematical relations

w = ge

c

s = cx +egs=ycw?

Prover Verifier

Page 3: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Some proofs

Proof of Identity

= Cryptographic Authentication Protocol

Page 4: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Some proofs

Proof of Authorization (Signed Document)

= Digital signature

Page 5: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Proof of work?

We can make precise in cryptographic world

1 ounce sweat = 1 hour of work

Page 6: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Proof of work (POW)

Prover Verifier

Query

Response

Prover did at least

106 cycles of work

Page 7: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Example of a POW (Hash inversion)

Prover Verifier

t = h(s) [k bits]

Prover computed an

expected 2k-1 hashes

random secret s

s

Page 8: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

What are POWs good for? Spam deterrent (DN94), “Hash cash”

Defense against denial-of-service attacks (JB99)

Service Request

Page 9: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

What are POWs good for? Benchmarking

Server

Query

ResponseClient

Page 10: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Formal notion of POW

Page 11: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Breadpudding

Idea: Re-use the ``stale’’ computation in a POW to perform useful task

Achieve privacy in useful task Example: Hash inversion POW for distributed MicroMint

Page 12: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.
Page 13: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

MicroMint

Want a scheme that mimics economics of physical mint

Verifying validity of a coin is easy Base minting cost is high so... Forgery is expensive

Page 14: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

The minting process

. Throw balls into bins using “random” function h

. Any bin with two balls is a coin

Page 15: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Minting in MicroMint

Bin 1 Bin 2 Bin 3 Bin 4 Bin 5 Bin 6 Bin 7 Bin 8 Bin 9

Collision = Coin

h

Page 16: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Checking a coin

Bin 2

h

Valid coin?

Page 17: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Features

Many bins, so need to throw many balls to mint successfully

Minting requires very intensive computation

Page 18: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Minting requires special, e.g., $250,000 computer

“Deep Crack”

Page 19: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Another characteristic: Most balls are invalid

Bin 1 Bin 2 Bin 3 Bin 4 Bin 5 Bin 6 Bin 7 Bin 8 Bin 9

h

In fact, >99% of work goes to missed balls!

Page 20: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Idea: Make three stage process

. Create “valid” balls, i.e., balls that won’t miss (>99% of work)

. Throw balls into bins using “random” function h (<1% of work)

. Any bin with two balls is a coin

Page 21: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Have many other (untrusted) people do Step 1

Page 22: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Now...

99%+ of work is done for minter No participant will get enough balls

to do minting himself/herself (or else participants know “validity” h but not

“throwing” h) Minting is cheap for minter!

Page 23: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Minter can use ordinary server

Page 24: Ari Juels RSA Laboratories Proofs of Work (POWs) and Bread Pudding Protocols with Markus Jakobsson Bell Laboratories.

Questions?

+?


Recommended