Blockchain für Entwickler: Grundlagen, Programmierung, Anwendung
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Buch |
Sprache: | German |
Veröffentlicht: |
Bonn
Rheinwerk
2019
|
Ausgabe: | 1. Auflage |
Schriftenreihe: | Rheinwerk Computing
Das Praxisbuch |
Schlagworte: | |
Online-Zugang: | Inhaltstext Inhaltsverzeichnis |
Beschreibung: | Auf dem Cover: Kryptowährungen, Smart Contracts und DApps ; Ethereum-Apps mit Solidity programmieren ; Datenstruktur, Kryptografie, Konsensmodelle, Netzwerk, Verifikationen und Optimierung |
Beschreibung: | 565 Seiten Illustrationen 24 cm x 16.8 cm |
ISBN: | 9783836263900 |
Internformat
MARC
LEADER | 00000nam a22000008c 4500 | ||
---|---|---|---|
001 | BV045482576 | ||
003 | DE-604 | ||
005 | 20210608 | ||
007 | t | ||
008 | 190221s2019 a||| |||| 00||| ger d | ||
016 | 7 | |a 1169994253 |2 DE-101 | |
020 | |a 9783836263900 |c hardback : EUR 39.90 (DE), EUR 41.10 (AT), CHF 49.90 (freier Preis) |9 978-3-8362-6390-0 | ||
035 | |a (OCoLC)1089714885 | ||
035 | |a (DE-599)BVBBV045482576 | ||
040 | |a DE-604 |b ger |e rda | ||
041 | 0 | |a ger | |
049 | |a DE-91G |a DE-473 |a DE-860 |a DE-29T |a DE-384 |a DE-863 |a DE-Aug4 |a DE-573 |a DE-20 |a DE-862 |a DE-859 |a DE-19 |a DE-525 |a DE-M347 |a DE-1102 |a DE-703 |a DE-634 |a DE-2070s |a DE-1049 |a DE-1051 |a DE-739 |a DE-523 |a DE-1050 |a DE-898 |a DE-92 | ||
082 | 0 | |a 004 | |
082 | 0 | |a 005.745 |2 23/ger | |
082 | 0 | |a 332.404 |2 23/ger | |
084 | |a QK 200 |0 (DE-625)141634: |2 rvk | ||
084 | |a QK 305 |0 (DE-625)141642: |2 rvk | ||
084 | |a ST 520 |0 (DE-625)143678: |2 rvk | ||
084 | |a 004 |2 sdnb | ||
084 | |a DAT 456f |2 stub | ||
084 | |a WIR 230f |2 stub | ||
084 | |a WIR 150f |2 stub | ||
084 | |a 330 |2 sdnb | ||
100 | 1 | |a Fertig, Tobias |e Verfasser |0 (DE-588)1179741048 |4 aut | |
245 | 1 | 0 | |a Blockchain für Entwickler |b Grundlagen, Programmierung, Anwendung |c Tobias Fertig, Andreas Schütz |
250 | |a 1. Auflage | ||
264 | 1 | |a Bonn |b Rheinwerk |c 2019 | |
300 | |a 565 Seiten |b Illustrationen |c 24 cm x 16.8 cm | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a Rheinwerk Computing | |
490 | 0 | |a Das Praxisbuch | |
500 | |a Auf dem Cover: Kryptowährungen, Smart Contracts und DApps ; Ethereum-Apps mit Solidity programmieren ; Datenstruktur, Kryptografie, Konsensmodelle, Netzwerk, Verifikationen und Optimierung | ||
650 | 0 | 7 | |a Ethereum |0 (DE-588)1156572525 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Blockchain |0 (DE-588)1124028595 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Programmierung |0 (DE-588)4076370-5 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Virtuelle Währung |0 (DE-588)1081489480 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Blockchain |0 (DE-588)1124028595 |D s |
689 | 0 | 1 | |a Virtuelle Währung |0 (DE-588)1081489480 |D s |
689 | 0 | 2 | |a Ethereum |0 (DE-588)1156572525 |D s |
689 | 0 | 3 | |a Programmierung |0 (DE-588)4076370-5 |D s |
689 | 0 | |5 DE-604 | |
700 | 1 | |a Schütz, Andreas |e Verfasser |0 (DE-588)1179741064 |4 aut | |
776 | 0 | 8 | |i Erscheint auch als |n Online-Ausgabe, PDF, ePub, MOBI, Online |z 978-3-8362-6391-7 |
776 | 0 | 8 | |i Erscheint auch als |n Online-Ausgabe; Bundle Buch + E-Book, E-Book Formate (PDF, ePub, Mobi, Online) |z 978-3-8362-6393-1 |
856 | 4 | 2 | |m X:MVB |q text/html |u http://deposit.dnb.de/cgi-bin/dokserv?id=04730a3b579f4080842961bf2d3ae794&prov=M&dok%5Fvar=1&dok%5Fext=htm |3 Inhaltstext |
856 | 4 | 2 | |m Digitalisierung UB Augsburg - ADAM Catalogue Enrichment |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=030867605&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-030867605 |
Datensatz im Suchindex
DE-BY-862_location | 2000 |
---|---|
DE-BY-863_location | 1000 1340 |
DE-BY-FWS_call_number | 1000/ST 520 F411 1340/ST 520 F411 2000/ST 520 F411 |
DE-BY-FWS_katkey | 718713 |
DE-BY-FWS_media_number | 083101418983 083101419633 083000521510 |
_version_ | 1813668395251400704 |
adam_text | Inhalt
Materialien zum Buch
16
1 Vorwort
17
1.1 Vorwort der Autoren ..................................... 17
1.2 Geleitwort............................................... 19
2 Einführung 21
2.1 Was ist die Blockchain?................................................ 21
2.1.1 Herausforderungen des Internets................................ 21
2.1.2 Die Blockchain................................................. 24
2.1.3 Die Blockchain als Problemloser................................ 28
2.2 Geschichte der Blockchain ............................................. 29
2.2.1 Pioniere der Blockchain........................................ 29
2.2.2 Bitcoin ....................................................... 30
2.2.3 Altcoins....................................................... 35
2.2.4 Blockchain 2.0 ................................................ 36
2.2.5 Gegenwart und Zukunft.......................................... 41
2.3 Anwendung der Blockchain-Technologie .................................. 43
2.3.1 Entscheidungskriterien für die Blockchain...................... 43
2.3.2 Blockchain-Varianten .......................................... 45
2.3.3 Branchen mit Blockchain-Potenzial.............................. 48
2.3.4 Realbeispiele für Blockchain-Anwendungen....................... 54
2.4 Zusammenfassung........................................................ 65
3 Die Basics: So funktioniert eine Blockchain 67
3.1 Kryptografische Grundlagen................................................ 67
3.1.1 Einführung in die Kryptografie................................ 68
3.1.2 Elliptic Curve Cryptography (ECC) ............................... 72
3.1.3 Kryptografische Hashfunktionen .................................. 75
5
Inhalt
3.2 Die Blockchain......................................................... 80
3.2.1 Transaktionen.................................................. 81
3.2.2 Vom Block zur Blockchain ...................................... 86
3.2.3 Das Blockchain-System.......................................... 90
3.2.4 Weiterentwicklungen der Blockchain............................ 105
3.3 Die Blockchain 2.0.................................................... 112
3.3.1 Einführung und Grundlagen..................................... 113
3.3.2 Accounts und State Trie....................................... 117
3.3.3 Transaktionen und Transaction Trie............................ 120
3.3.4 Receipts und Receipts Trie ................................. 123
3.3.5 Vom Block zur Blockchain 2.0.................................. 125
3.3.6 Das Blockchain-System 2.0..................................... 129
3.3.7 Weiterentwicklung der Ethereum-Plattform...................... 137
3.4 Alternative Konsensmodelle............................................ 144
3.4.1 Proof-of-Stake (PoS).......................................... 145
3.4.2 Delegated Byzantine Fault Tolerance (dBFT).................... 147
3.4.3 Proof-of-Activity............................................. 148
3.4.4 Proof-of-lmportance........................................... 149
3.4.5 Proof-of-Authority............................................ 149
3.4.6 Proof-of-Reputation........................................... 150
3.4.7 Proof-of-Capacity/Proof-of-Space.............................. 151
3.4.8 Proof-of-Elapsed-Time ........................................ 152
3.4.9 Proof-of-Burn................................................. 152
3.5 Sicherheit der Blockchain............................................ 153
3.5.1 Blockchain und Informationssicherheit......................... 153
3.5.2 Angriffsszenarien............................................. 156
3.6 Zusammenfassung....................................................... 164
4 Eine eigene Blockchain erstellen -
Grundfunktionen i67
4.1 Transaktionen - die kleinste Einheit................................ 169
4.2 Blockheader -der Inhalt der Block-ID................................ 171
4.3 Die Blöcke verketten................................................ 173
4.4 Die Blockchain auf die Festplatte speichern......................... 175
6
4.5 Der Genesis Block - die Entstehung einer Blockchain........... 177
4.6 Ausstehende Transaktionen .................................... 178
4.7 Die Difficulty einer Blockchain............................... 180
4.8 Zeit zu schürfen - der Miner Thread........................... 182
4.9 Zusammenfassung und Ausblick.................................. 186
5 Die Blockchain an eine Web-API anbinden i89
5.1 Die Service-Endpunkte der Web-API.................................. 190
5.1.1 Die Service-Klasse für Blöcke implementieren............. 192
5.1.2 Die Service-Klasse für Transaktionen implementieren........ 194
5.2 Deployment der Web-API............................................. 196
5.2.1 Erstellen einer Ressourcenkonfiguration.................... 196
5.2.2 Einrichten eines embedded Tomcat........................... 198
5.2.3 Die ausgelieferten JSON-Repräsentationen überprüfen........ 199
5.3 Transaktionen per Webinterface versenden........................... 200
5.4 Einen eigenen Block-Explorer implementieren........................ 204
5.4.1 Transaktionen erkunden .................................... 204
5.4.2 Blöcke erkunden............................................ 206
5.4.3 Startseite und Suchfunktion implementieren................. 209
5.5 Zusammenfassung und Ausblick....................................... 211
6 Ein Peer-to-Peer-Netzwerk aufbauen 215
6.1 Das Peer-to-Peer-Framework konfigurieren .......................... 216
6.2 Transaktionen im Netzwerk verteilen................................ 219
6.3 Blöcke im Netzwerk verteilen ...................................... 222
6.4 Mehrere Chains parallel verarbeiten................................ 224
6.4.1 Chains aufbewahren und bei Bedarf wechseln................. 224
6.4.2 Ausstehende Transaktionen beim Chain-Wechsel aktualisieren. 227
6.5 Neue Knoten im Netzwerk aufnehmen.................................. 228
6.6 Zusammenfassung und Ausblick....................................... 231
7
7 Accounts und Guthaben einführen 233
...
7.1 Die Miner belohnen ................................................ 234
7.1.1 Den Minern einen Account zuweisen........................... 234
7.1.2 Accounts persistent speichern .............................. 235
7.1.3 Den Blöcken einen Miner zuweisen............................ 237
7.2 Die Accounts verwalten ............................................ 238
7.2.1 Accounts speichern ......................................... 238
7.2.2 Accounts initialisieren und aktualisieren .................. 240
7.2.3 Account-Informationen über die Web-API bereitstellen........ 241
7.3 Die Accounts integrieren........................................... 242
7.4 Die Accounts im Block-Explorer einbinden .......................... 243
7.4.1 Accounts mit dem Block-Explorer einsehen ................... 243
7.4.2 Accounts im Webclient generieren............................ 246
7.4.3 Accounts im Block-Explorer verlinken und suchen ............ 248
7.5 Zusammenfassung und Ausblick....................................... 249
8 Verifikation und Optimierungen umsetzen 251
8.1 Transaktionen signieren........................................... 251
8.1.1 Digitale Signaturen im Webclient einführen .............. 252
8.1.2 Digitale Signaturen im Backend unterstützen ............. 253
8.2 Die Rahmenbedingungen erzwingen................................... 255
8.2.1 Transaktionen verifizieren............................... 255
8.2.2 Blöcke verifizieren........................................ 256
8.3 Guthaben sperren und entsperren................................... 257
8.4 Mit dem Merkle-Baum die Performance optimieren ................... 260
8.4.1 Die Struktur des Merkle-Baums erstellen.................. 260
8.4.2 Den Merkle-Baum über die Web-API nutzen.................. 262
8.5 Den Public Key verkürzen zum Sparen von Speicher ................. 263
8.6 Startguthaben über den Genesis Block ermöglichen.................. 264
8.7 Weitere Optimierungen bedenken.................................... 265
8.8 Zusammenfassung und Ausblick...................................... 267
8
9 Smart Contract Development 269
9.1 Einführung........................................................ 270
9.2 Einfache Smart Contracts bei Bitcoin.............................. 272
9.2.1 Bitcoin Script............................................ 272
9.2.2 Smart Contracts mit Bitcoin Script ....................... 275
9.23 Höhere Programmiersprachen für Bitcoin ................... 279
9.3 Anspruchsvolle Smart Contracts ................................... 280
93.1 Bitcoin-Erweiterungen..................................... 280
93.2 Smart Contracts mit Ethereum.............................. 282
9.4 Zusammenfassung................................................... 283
10 Solidity-Die Grundlagen verstehen 285
10.1 Was ist Solidity?........................................................ 285
10.1.1 Die offizielle Entwicklungsumgebung Remix........................ 286
10.1.2 Aufbau eines Sourcefiles......................................... 287
10.13 Den ersten Smart Contract erstellen.............................. 288
10.1.4 Den ersten Smart Contract lokal deployen......................... 288
10.2 Elemente und Speicherbereiche eines Contracts............................ 291
10.2.1 Die Speicherbereiche verstehen................................... 291
10.2.2 Sichtbarkeiten von Solidity korrekt nutzen....................... 293
10.2.3 Modifier verwenden und selbst definieren......................... 294
10.2.4 Zustandsvariablen deklarieren und initialisieren................. 296
10.2.5 Contracts erzeugen und zerstören................................. 297
10.2.6 Funktionen implementieren ....................................... 298
10.2.7 Events definieren und zum Loggen verwenden....................... 299
10.3 Verfügbare Datentypen.................................................... 300
103.1 Primitive Datentypen verwenden................................... 301
103.2 Adressen definieren ............................................. 302
1033 Arrays anlegen und nutzen ....................................... 304
10.3.4 Mehrdimensionale Arrays und ihre Einschränkungen
berücksichtigen ................................................ 306
10.3.5 Structs und Enums definieren..................................... 308
10.3.6 Mappings und ihre Besonderheiten verstehen ...................... 310
103.7 Storage Pointer als Funktionsparameter definieren................ 310
103.8 Funktionen als Variablen verwenden .............................. 310
9
; Inhalt .
10.4 Zusätzliche Features von Solidity................................... 312
10.4.1 LValues verstehen........................................... 312
10.4.2 Variablen löschen und Storage freigeben .................. 312
10.4.3 Elementare Datentypen ineinander umwandeln.................. 313
10.4.4 Typherleitung nutzen........................................ 313
10.5 Vererbungshierarchien von Smart Contracts erstellen ................ 314
10.5.1 Wie funktioniert die Vererbung von Contracts?............. 314
10.5.2 Abstrakte Contracts verwenden............................... 316
10.5.3 Interfaces in Solidity definieren......................... 316
10.6 Libraries erstellen und verwenden................................... 317
10.6.1 Eine eigene Library implementieren........................ 317
10.6.2 Libraries in Contracts verwenden.......................... 319
10.6.3 Datentypen mit Libraries erweitern ....................... 320
10.7 Zusammenfassung und Ausblick........................................ 321
11 Solidity-Details und Herausforderungen 325
11.1 Wichtige Details zu Funktionen ..................................... 326
11.1.1 Polymorphismus richtig anwenden............................... 326
11.1.2 Funktionen überladen.......................................... 327
11.1.3 Ether empfangen mit der Fallback-Funktion..................... 328
11.2 Gas verstehen und optimieren ....................................... 330
113 Den richtigen Exception-Mechanismus wählen ........................... 333
11.4 Solidity mit Assembly erweitern....................................... 335
11.4.1 Inline Assembly in Solidity anwenden........................ 335
11.4.2 Inline Assembly mit dem funktionalen Stil schreiben........... 337
11.4.3 Inline Assembly über Instruktionen schreiben ................. 338
11.4.4 Standalone Assembly als Alternative zu Solidity verwenden... 340
11.4.5 Joyfully Universal Language for (Inline) Assembly ........... 340
11.5 Leicht verständliche Contracts entwickeln .......................... 341
11.6 Updatefähige Contracts entwickeln .................................. 343
11.6.1 Separation Pattern anwenden .................................. 344
11.6.2 Proxy Pattern anwenden...................................... 349
11.7 Warum kein Zufallsgenerator sicher ist............................. 354
11.7.1 Blockvariablen verwenden...................................... 354
11.7.2 Fortlaufende Nummern verwenden ............................... 355
10
Inhalt
13.1.4 Race Conditions ¡m Hinterkopf behalten..................... 387
13.1.5 Rückgabewerte von Low-Level-Funktionen überprüfen.......... 387
13.1.6 Manipulationen durch Miner berücksichtigen................ 388
13.2 Ether In Contracts schmuggeln....................................... 388
13.3 Arithmetische Overflows und Underflows.............................. 391
13.4 Mit DelegateCalls den Zustand manipulieren.......................... 393
13.5 Reentrancy-Angriffe durchführen..................................... 396
13.6 Denial-of-Service-Angriffe durchführen.............................. 399
13.7 Gas-Siphoning-Angriffe beachten..................................... 401
13.8 Zusammenfassung und Ausblick........................................ 404
14 Smart Contracts deployen und managen 407
14.1 MetaMask einrichten und Accounts verwenden.......................... 408
14.2 Contracts mit Remix und MetaMask deployen........................... 409
14.3 Contracts mit dem Truffle Framework deployen........................ 411
14.3.1 Contracts auf Ganache deployen.............................. 412
14.3.2 Infura für das Deployen auf Live-Blockchains verwenden...... 415
14.3.3 Die Mnemonics verschlüsselt im Projekt verwenden.......... 417
14.3.4 Tipps für die Nutzung von Truffle......................... 418
14.4 Code auf Etherscan veröffentlichen................................. 418
14.5 Einen eigenen Knoten aufsetzen und verwenden........................ 420
14.6 Contracts manuell kompilieren, linken und deployen.................. 422
14.7 Contracts nach dem Deployment managen.............................. 424
14.7.1 Contracts über Remix managen ............................... 425
14.7.2 Contracts über die Truffle-Konsole managen.................. 425
14.8 Zusammenfassung und Ausblick........................................ 426
15 Standards, Libraries und Design Patterns 429
15.1 ERC-173 Contract Ownership Standard................................. 429
15.2 ERC-165 Standard Interface Detection................................ 432
15.3 ERC-20 Token Standard............................................... 436
12
Inhalt
15.4 ERC-721 Non-Fungible Token Standard............................... 440
15.5 Die Libraries von OpenZeppelin nutzen............................. 445
15.6 Design Patterns verwenden......................................... 446
15.6.1 Die Struktur des PubSub Patterns verstehen ................ 446
15.6.2 Das PubSub Pattern implementieren ......................... 447
15.7 Zusammenfassung und Ausblick...................................... 450
16 Decentralized Applications entwickeln 453
16.1 Was ist eine Decentralized Application?........................... 453
16.2 Der Entwicklungsprozess einer DApp................................ 455
16.5 Das Backend Ihrer ersten DApp entwickeln......................... 457
16.4 Das Frontend Ihrer ersten DApp entwickeln ........................ 460
16.5 Ihre erste DApp auf Swarm deployen................................ 463
16.5.1 Einen Swarm-Knoten betreiben............................... 463
16.5.2 Die DApp vorbereiten und deployen.......................... 464
16.5.3 Alternativen zum eigenen Knoten............................ 466
16.6 ENS-Domains für die eigene DApp einrichten........................ 467
16.6.1 Eine ENS-Domain über Onlinetools erwerben.................. 467
16.6.2 Eine ENS-Domain über einen eigenen Geth-Knoten erwerben.. 468
16.6.3 Domains mit dem ENS Manager verwalten ..................... 469
16.7 Zusammenfassung und Ausblick...................................... 471
17 Ihre erste DApp mit Drizzle zur DAO erweitern 475
17.1 Was ist Drizzle?................................................ 476
17.1.1 Die Architektur von Drizzle................................ 476
17.1.2 Die Synchronisation der Blockchain-Daten................... 477
17.1.3 Weitere Funktionen von Drizzle............................. 477
17.2 Was ist eine DAO, und was wird benötigt?.......................... 478
17.3 Die DApp, um einen Governance Contract erweitern.................. 479
17.4 Das Frontend mit Drizzle und React umsetzen....................... 480
17.4.1 Das Frontend-Projekt aufsetzen............................. 481
17.4.2 Drizzle korrekt konfigurieren ........................... 482
17.4.3 Drizzle in das Frontend über React einbinden .............. 483
13
Inhalt
17.4.4 Den Einstiegspunkt Ihrer DApp vorbereiten.................. 484
17.4.5 Das Frontend für den Governance Contract Implementieren.... 486
17.4.6 Das Frontend für die Abstimmung Implementieren............... 490
17.5 Die Drizzle-DApp zentral oder dezentral deployen................... 492
17.5.1 Die DApp mit einem lokalen Server testen .................... 493
17.5.2 Die Drizzle-DApp dezentral deployen ......................... 494
17.6 Zusammenfassung und Ausblick....................................... 494
18 Dezentrale Autonome Initiale Coin Offerings
umsetzen 497
18.1 Was ist ein DAICO?................................................ 497
18.1.1 Welche Komponenten benötigt ein DAICO?..................... 499
18.1.2 Theoretische Analyse der Sicherheitsprobleme............... 499
18.13 Der zeitliche Ablauf eines DAICO........................... 500
18.2 Die Contracts eines DAICO implementieren........................ 501
18.2.1 Den Crowdsale und das Token mit OpenZeppelin umsetzen.... 501
18.2.2 Den bisherigen Contract für Abstimmungen anpassen.......... 503
18.2.3 Den Governance Contract eines DAICO als Escrow einsetzen. 504
18.2.4 Eine Migration für das gesamte DAICO konfigurieren......... 509
18.3 Die passende DApp zu Ihrem DAICO entwerfen...................... 510
18.3.1 Mehr Routen für den Einstiegspunkt definieren.............. 510
18.3.2 Das Frontend der DAO zum Escrow umgestalten ............... 511
18.3.3 Den Token Contract per DApp verwalten...................... 514
18.3.4 Am Crowdsale über Ihre DApp teilnehmen .................... 516
18.4 Zusammenfassung und Ausblick.................................... 517
19 Supply Chains mit Smart Contracts ergänzen 519
19.1 Ideen, Visionen und Problemlösungen .................................. 520
19.2 Assets mit dem ERC-721 Token Standard tracken......................... 521
19.2.1 Proof-of-Concept: der mobile Nadelmarkierer................... 521
19.2.2 Ein Asset-Token mit OpenZeppelin implementieren .............. 522
19.3 web3j: die Web3 Java Ethereum DApp API................................ 522
19.3.1 Contract Wrapper für Java generieren ......................... 523
19.3.2 Eine Web3-Instanz initialisieren und konfigurieren............ 523
14
Inhalt
1933 Transaktionen und Calis auslösen .......................... 524
193.4 Gas mit dem GasProvider regulieren ...................... 525
193.5 Events filtern und überwachen........................... 526
19.4 Ein Command Line Interface für Asset Tracker bauen............. 527
19.4.1 Das Maven-Projekt vorbereiten .................... 527
19.4.2 Die Implementierung eines Apache Commons CU.............. 528
19.43 Den Asset Contract deployen und laden..................... 529
19.4.4 Neue Assets per CU erzeugen.............................. 530
19.4.5 Die Metadaten automatisiert aufSwarm dezentral deployen . 531
19.5 Zusammenfassung und Ausblick................................... 532
20 Ausblick: Zukunftstechnologien 535
20.1 Vyper - Smart Contracts für jedermann?................................. 535
20.1.1 Die Ziele von Vyper............................................ 536
20.1.2 Einschränkungen von Vyper...................................... 536
20.13 Die Syntax von Vyper........................................... 537
20.2 NEO - der chinesische Klon von Ethereum................................ 539
20.2.1 Die Idee hinter NEO............................................ 539
20.2.2 Smart Contracts in NEO......................................... 540
20.3 EOS - der stärkste Wettbewerber zu Ethereum?........................... 541
20.3.1 Die Vision von EOS............................................. 541
203.2 Die Architektur von EOS........................................ 542
20.3.3 Smart Contracts in EOS......................................... 543
20.4 Ripple-die Zukunft der Banken? ........................................ 544
20.4.1 Die Idee von Ripple............................................ 544
20.4.2 Der Ledger und das Netzwerk.................................... 546
20.4.3 Smart Contracts in Ripple mit Codius........................... 546
20.5 IOTA - das dezentrale Internet der Dinge............................... 548
20.5.1 Das Projekt ................................................... 548
20.5.2 Adressen und Transaktionen .................................... 549
20.5.3 DerTangle ..................................................... 551
20.5.4 Die Knoten und das Netzwerk.................................... 553
20.5.5 Die Zukunft wird smart: Smart Contracts in IOTA................ 553
20.6 Zusammenfassung........................................................ 554
Literaturverzeichnis....................................................... 557
Index...................................................................... 559
15
|
any_adam_object | 1 |
author | Fertig, Tobias Schütz, Andreas |
author_GND | (DE-588)1179741048 (DE-588)1179741064 |
author_facet | Fertig, Tobias Schütz, Andreas |
author_role | aut aut |
author_sort | Fertig, Tobias |
author_variant | t f tf a s as |
building | Verbundindex |
bvnumber | BV045482576 |
classification_rvk | QK 200 QK 305 ST 520 |
classification_tum | DAT 456f WIR 230f WIR 150f |
ctrlnum | (OCoLC)1089714885 (DE-599)BVBBV045482576 |
dewey-full | 004 005.745 332.404 |
dewey-hundreds | 000 - Computer science, information, general works 300 - Social sciences |
dewey-ones | 004 - Computer science 005 - Computer programming, programs, data, security 332 - Financial economics |
dewey-raw | 004 005.745 332.404 |
dewey-search | 004 005.745 332.404 |
dewey-sort | 14 |
dewey-tens | 000 - Computer science, information, general works 330 - Economics |
discipline | Informatik Wirtschaftswissenschaften |
edition | 1. Auflage |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>02978nam a22006138c 4500</leader><controlfield tag="001">BV045482576</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20210608 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">190221s2019 a||| |||| 00||| ger d</controlfield><datafield tag="016" ind1="7" ind2=" "><subfield code="a">1169994253</subfield><subfield code="2">DE-101</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9783836263900</subfield><subfield code="c">hardback : EUR 39.90 (DE), EUR 41.10 (AT), CHF 49.90 (freier Preis)</subfield><subfield code="9">978-3-8362-6390-0</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)1089714885</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV045482576</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rda</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">ger</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-91G</subfield><subfield code="a">DE-473</subfield><subfield code="a">DE-860</subfield><subfield code="a">DE-29T</subfield><subfield code="a">DE-384</subfield><subfield code="a">DE-863</subfield><subfield code="a">DE-Aug4</subfield><subfield code="a">DE-573</subfield><subfield code="a">DE-20</subfield><subfield code="a">DE-862</subfield><subfield code="a">DE-859</subfield><subfield code="a">DE-19</subfield><subfield code="a">DE-525</subfield><subfield code="a">DE-M347</subfield><subfield code="a">DE-1102</subfield><subfield code="a">DE-703</subfield><subfield code="a">DE-634</subfield><subfield code="a">DE-2070s</subfield><subfield code="a">DE-1049</subfield><subfield code="a">DE-1051</subfield><subfield code="a">DE-739</subfield><subfield code="a">DE-523</subfield><subfield code="a">DE-1050</subfield><subfield code="a">DE-898</subfield><subfield code="a">DE-92</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">004</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.745</subfield><subfield code="2">23/ger</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">332.404</subfield><subfield code="2">23/ger</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">QK 200</subfield><subfield code="0">(DE-625)141634:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">QK 305</subfield><subfield code="0">(DE-625)141642:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 520</subfield><subfield code="0">(DE-625)143678:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">004</subfield><subfield code="2">sdnb</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 456f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">WIR 230f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">WIR 150f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">330</subfield><subfield code="2">sdnb</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Fertig, Tobias</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)1179741048</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Blockchain für Entwickler</subfield><subfield code="b">Grundlagen, Programmierung, Anwendung</subfield><subfield code="c">Tobias Fertig, Andreas Schütz</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">1. Auflage</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Bonn</subfield><subfield code="b">Rheinwerk</subfield><subfield code="c">2019</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">565 Seiten</subfield><subfield code="b">Illustrationen</subfield><subfield code="c">24 cm x 16.8 cm</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="0" ind2=" "><subfield code="a">Rheinwerk Computing</subfield></datafield><datafield tag="490" ind1="0" ind2=" "><subfield code="a">Das Praxisbuch</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">Auf dem Cover: Kryptowährungen, Smart Contracts und DApps ; Ethereum-Apps mit Solidity programmieren ; Datenstruktur, Kryptografie, Konsensmodelle, Netzwerk, Verifikationen und Optimierung</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Ethereum</subfield><subfield code="0">(DE-588)1156572525</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Blockchain</subfield><subfield code="0">(DE-588)1124028595</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Programmierung</subfield><subfield code="0">(DE-588)4076370-5</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Virtuelle Währung</subfield><subfield code="0">(DE-588)1081489480</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Blockchain</subfield><subfield code="0">(DE-588)1124028595</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">Virtuelle Währung</subfield><subfield code="0">(DE-588)1081489480</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="2"><subfield code="a">Ethereum</subfield><subfield code="0">(DE-588)1156572525</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="3"><subfield code="a">Programmierung</subfield><subfield code="0">(DE-588)4076370-5</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Schütz, Andreas</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)1179741064</subfield><subfield code="4">aut</subfield></datafield><datafield tag="776" ind1="0" ind2="8"><subfield code="i">Erscheint auch als</subfield><subfield code="n">Online-Ausgabe, PDF, ePub, MOBI, Online</subfield><subfield code="z">978-3-8362-6391-7</subfield></datafield><datafield tag="776" ind1="0" ind2="8"><subfield code="i">Erscheint auch als</subfield><subfield code="n">Online-Ausgabe; Bundle Buch + E-Book, E-Book Formate (PDF, ePub, Mobi, Online)</subfield><subfield code="z">978-3-8362-6393-1</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">X:MVB</subfield><subfield code="q">text/html</subfield><subfield code="u">http://deposit.dnb.de/cgi-bin/dokserv?id=04730a3b579f4080842961bf2d3ae794&prov=M&dok%5Fvar=1&dok%5Fext=htm</subfield><subfield code="3">Inhaltstext</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Augsburg - ADAM Catalogue Enrichment</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=030867605&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-030867605</subfield></datafield></record></collection> |
id | DE-604.BV045482576 |
illustrated | Illustrated |
indexdate | 2024-10-23T04:02:46Z |
institution | BVB |
isbn | 9783836263900 |
language | German |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-030867605 |
oclc_num | 1089714885 |
open_access_boolean | |
owner | DE-91G DE-BY-TUM DE-473 DE-BY-UBG DE-860 DE-29T DE-384 DE-863 DE-BY-FWS DE-Aug4 DE-573 DE-20 DE-862 DE-BY-FWS DE-859 DE-19 DE-BY-UBM DE-525 DE-M347 DE-1102 DE-703 DE-634 DE-2070s DE-1049 DE-1051 DE-739 DE-523 DE-1050 DE-898 DE-BY-UBR DE-92 |
owner_facet | DE-91G DE-BY-TUM DE-473 DE-BY-UBG DE-860 DE-29T DE-384 DE-863 DE-BY-FWS DE-Aug4 DE-573 DE-20 DE-862 DE-BY-FWS DE-859 DE-19 DE-BY-UBM DE-525 DE-M347 DE-1102 DE-703 DE-634 DE-2070s DE-1049 DE-1051 DE-739 DE-523 DE-1050 DE-898 DE-BY-UBR DE-92 |
physical | 565 Seiten Illustrationen 24 cm x 16.8 cm |
publishDate | 2019 |
publishDateSearch | 2019 |
publishDateSort | 2019 |
publisher | Rheinwerk |
record_format | marc |
series2 | Rheinwerk Computing Das Praxisbuch |
spellingShingle | Fertig, Tobias Schütz, Andreas Blockchain für Entwickler Grundlagen, Programmierung, Anwendung Ethereum (DE-588)1156572525 gnd Blockchain (DE-588)1124028595 gnd Programmierung (DE-588)4076370-5 gnd Virtuelle Währung (DE-588)1081489480 gnd |
subject_GND | (DE-588)1156572525 (DE-588)1124028595 (DE-588)4076370-5 (DE-588)1081489480 |
title | Blockchain für Entwickler Grundlagen, Programmierung, Anwendung |
title_auth | Blockchain für Entwickler Grundlagen, Programmierung, Anwendung |
title_exact_search | Blockchain für Entwickler Grundlagen, Programmierung, Anwendung |
title_full | Blockchain für Entwickler Grundlagen, Programmierung, Anwendung Tobias Fertig, Andreas Schütz |
title_fullStr | Blockchain für Entwickler Grundlagen, Programmierung, Anwendung Tobias Fertig, Andreas Schütz |
title_full_unstemmed | Blockchain für Entwickler Grundlagen, Programmierung, Anwendung Tobias Fertig, Andreas Schütz |
title_short | Blockchain für Entwickler |
title_sort | blockchain fur entwickler grundlagen programmierung anwendung |
title_sub | Grundlagen, Programmierung, Anwendung |
topic | Ethereum (DE-588)1156572525 gnd Blockchain (DE-588)1124028595 gnd Programmierung (DE-588)4076370-5 gnd Virtuelle Währung (DE-588)1081489480 gnd |
topic_facet | Ethereum Blockchain Programmierung Virtuelle Währung |
url | http://deposit.dnb.de/cgi-bin/dokserv?id=04730a3b579f4080842961bf2d3ae794&prov=M&dok%5Fvar=1&dok%5Fext=htm http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=030867605&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT fertigtobias blockchainfurentwicklergrundlagenprogrammierunganwendung AT schutzandreas blockchainfurentwicklergrundlagenprogrammierunganwendung |
Beschreibung
Würzburg Zentralbibliothek Lesesaal
Signatur: |
1000 ST 520 F411 |
---|---|
Exemplar 1 | ausleihbar Verfügbar Bestellen |
Würzburg Teilbibliothek SHL, Raum I.2.11
Signatur: |
1340 ST 520 F411 |
---|---|
Exemplar 1 | nicht ausleihbar Verfügbar |
Schweinfurt Zentralbibliothek Lesesaal
Signatur: |
2000 ST 520 F411 |
---|---|
Exemplar 1 | ausleihbar Checked out – Rückgabe bis: 18.12.2024 Vormerken |