2. Distributed System,
Open Source, Digital
Signatures, Collision-
Resistant Hash
Functions, Broadcast
transactions, Merkle
trees,…
Very interesting…
I can send bitcoin via
email right?
Me My mother
5. Bitcoin
It’s like gold expect that it’s digital
No central authority controls the coins
Limited number of bitcoins (btc)
You can keep it or transfer it
You don’t have to reveal your identity
14. Solution 2
Origin Destination Amount
Homer Lisa 1 BTC
Homer Bart 2 BTC
Lisa Bart 1 BTC
… … …
The network checks
that an account is
funded before
allowing a new
transfer.
15. As every transaction is public,
the identity of user is revealed.
Nobody will want to use such a system!
21. Fix #4: Digital Signatures
Non-repudiation Unforgeability
(You can’t sign in Bart’s name)
22. Solution 4
Origin Destination Amount Signature
HHY67J81 JH89HF8M 1 BTC Djsh767
HHY67J81 LAU4V6UU 2 BTC 8988dd
JH89HF8M LAU4V6UU 1 BTC djDhd7n
… … …
Every bitcoin address
corresponds to the
public key.
Message
23. I can still do very bad things…
What about publishing a wrong history of transactions…
24. Things get a bit more complicated…
Name: Shafi Goldwasser
Profession: Computer scientist at MIT
Speciality: Cryptography
Other: Turing Award (march 2013)
Your mother
26. FIX #5: Cryptographic Hash Functions
Security properties
One-way
Given the output y it’s hard
to compute some input x
such that H(x) = y
Collision-Resistant
It’s hard to find two different
values x,x’ such that
H(x)=H(x’)
30. Solution 5
The first node that manages to
solve the computational puzzle
(nonce) wins the block.
The network extends the chain
from the newly computed block
The network always choose the
largest chain
Damned!
I need to control 51%
of the network….
31. Nice in theory but why would
people waste their CPU cycles?
32. The winner of a block is rewarded 25 BTC
by the network
(BTW, this is how bitcoins are created)
This process is called mining.