1
Bitcoin - das Geld auf der Festplatte
Oliver Vornberger
Institut für Informatik
Universität Osnabrück
2
Ich bin ein Euroz76;9#d5%j§ö8t
3
Caesar-Chiffre
Verschiebe jeden Buchstaben um k Einheiten
G
C A E S A R
E I EW V
z.B. k=4
4
Mary Stuart
26! Möglichkeiten =
→ 5 Milliarden Jahre
Thomas Phelippes: Häufigkeitsanalyse
403.291.461.126.605.635.584.000.000
5
Vigenère
ANGRIFFIMMORGENGRAUENPETER PETERPETER PETERP
PRZVZUJLQDDVZIEVVTYC
6
Protokoll
encode decodeKlartext x Klartext xChiffre y
Schlüssel e Schlüssel d
7
Einwegfunktion
Caan 456789Cabarena 423477Cadiz 996543Caesar 784513Carter 341123Castrop 458944Capellen 675432
8
Multiplikation versus Faktorisierung
79902175078147244686379339512677276366231220752229356019349893671876420931744377430687365812687754246830101282297574713772455933933867764022563251792393443769903948317050160321698561025532877647684683
89909531058836627717440422858641402456684976683721255300590190073945028024188735646917834001445460697949352415335921952260900528540697407053331179637761895800615635806322855777396006499513330486337609
7183967091857281647581304065755973526232171670874824234027764220263949612908867044764409948013198639812433071661572827626547829385245705289778323945746104767498330122039464149315665206737745079315029030505846196489917568869335544777353689814016451189380595050450835091699231543139661865507163114707749384671493207215643822775585016598035481820024189408851781761294219320404437751888461388903116142947
?
?
9
ASCII-Code
O s n a b r ü c k 79 115 110 97 98 114 252 99 107
10
Rivest Shamir Adleman
wähle 2 Primzahlen p,q
2357
1113171923293137...
berechne n := p·q
wähle Primzahl d
berechne e mit e·d 1 mod (p-1)·(q-1)49 1 mod 12
encode(x) := x e mod n
decode(y) := y d mod n
Ron Adi Leonard
[April 1977]
11
200 stellige Primzahlen
p=89909531058836627717440422858641402456684976683721255300590190073945028024188735646917834001445460697949352415335921952260900528540697407053331179637761895800615635806322855777396006499513330486337609
q=79902175078147244686379339512677276366231220752229356019349893671876420931744377430687365812687754246830101282297574713772455933933867764022563251792393443769903948317050160321698561025532877647684683
n=7183967091857281647581304065755973526232171670874824234027764220263949612908867044764409948013198639812433071661572827626547829385245705289778323945746104767498330122039464149315665206737745079315029030505846196489917568869335544777353689814016451189380595050450835091699231543139661865507163114707749384671493207215643822775585016598035481820024189408851781761294219320404437751888461388903116142947
d=6912880792983134201795097575592609129094117142951732155916113134708061619270609376090284210013866218445930101961895056516397352324585120228774900720850196541261833070428620931661349155515945612960396000308199646278344377562606989931674080238238945773520492076314252906439396129185619926176106618391594863515996066327659034986867136911356014076859406917008870341895680167331429079515342903719787052113
e=32060956321701259905596578736460047365111500078235979150808651783912548293819432597831619829917499109195252931659284324831218397277144058830127546998961582106443297700554088899665948071647548434168832003527652121631893839546797171960967191537076338226340888927287616084554407880875931958510259177246251661227907691999195827804405610391749679780186113
12
Primzahlen
würfel ungerades n (500 Bit)
teste n, n+2, n+4, ... auf Primzahleigenschaft
mittlerer Abstand ln(n) ln(2500) 350
x ist Zeuge für die Zusammengesetztheit von n
n zusammengesetzt mehr als ¾ n Zeugen
z=0;
repeat z++; würfel x
until (x ist Zeuge für n) or (z=50)
Fehler = ¼50 10-30
13
BobAlice
Verschlüsselung einer Nachricht
y :=
[e , n][e , n]
p , q
[d , n]
x
y d mod nx :=
e mod n
14
Umgekehrte Reihenfolge
xencode( )decode( ) = x
xdecode( )encode( ) = x
15
BobAlice
Digitale Signatur
y :=
encB decB
xdecB ( )
yencB ( )x :=
encB
16
BankAlice
Digitale Münze
y :=
encBank decBank
xdecBank ( )
yencBank ( )x :=
encBank
17
Münzkreislauf
HändlerAlice
Bank
18
Satoshi Nakamoto
19
Bitcoin Miner
Einwegfunktion fFinde x mit f(x) < kPassiert alle 10 MinutenBelohnung: 25 Bitcoins
20
Zahl der Bitcoins
10 million
21 Millionen
2009 2011 2013 2015 2017 2019 2021 2023 2025 2027 2029 2031 2033
212019181716151413121110
9876543210
21
Transaktion
Amount: 20
to: 1PZh4oblHE4KXBox4trCz1QusFD9SyRMWfrom: 1ACuQafxULnF3eNHYMNydKtZ9n3gJKZSA
sign: e12cd8a9940cd9bb67bb2c5273e6a02f5d
22
Buchhaltung
x zyf ( , , ) < k
24
blockchain.info
https://blockchain.info
26
Bitcoin Calculator
http://tpbitcalc.appspot.com/
27
MtGox, Januar 2011
28
MtGox, Januar bis April 2013
http://bitcoincharts.com/charts/mtgoxUSD#rg5ztgSzm1g10zm2g25zv