--German--Ep. 16 [Block-Erstellung] Bitcoin Hashfunktionen.

@manonlescaut · 2017-12-30 12:48 · deutsch

16.1.jpeg

Vormerk
Gelange auf einfachste Weise zum Grundverständnis von Kryptowährungen durch Analogien. Die Bilder sind extra für die Stories von @RatzFratz gezeichnet worden. Jede Geschichte, baut auf den vorherigen Artikeln auf. Ich empfehle daher sich ein paar Minuten Zeit zu nehmen und nochmal die vorherigen Geschichten aufzufrischen. Je öfter man die Artikel durchliest, desto sicherer wird man mit dem Umgang und der Anwendung von Bitcoin-Technologie. Als Steemit-Nutzer rate ich jedem dazu, sich ein grundlegendes Verständnis über Kryptowährungen wie Bitcoin und Steem anzueignen, um bestmöglich und verantwortungsvoll mit seinem Profil(und somit mit seinem Geld) umgehen zu können. Falls in den Artikeln irgendwas unklar sein sollte, schreibt einfach einen Kommentar. Ich werde versuchen schnellstmöglich darauf einzugehen. Danke!


In der letzten Episode haben wir die Bestandteile eines Blocks kennengelernt.

14.1 .png

Nun möchte ich genauer auf einige der Bestandteile eingehen. Wir fangen an mit der Block-Nummer(=block-number) des Blocks:

Screen%20Shot%202017-12-28%20at%2015.18.38.png



In einer vorherigen Episode haben wir definiert:

“Ein Block wird über seine individuelle, einmalige Block-Nummer identifiziert...”



Doch wie wird diese individuelle Block-Nummer bestimmt?

Nun, die Block-Nummer eines Blocks ist eigentlich der Hashwert des gesamten Inhalts des "Block-Headers".

Was ist dieser Hashwert?

Ein Hashwert 'h' ist der Output von einer Hashfunktion 'H' in welche ein gewisser Input eingefügt worden ist. Eine Hashfunktion ist eine mathematische Funktion mit Inputs und Output. Man kann sich das vorstellen, wie die mathematischen Funktionen aus der Schulzeit mit Input "x" und Output "Y". In unserem Fall ist der Input der "Block-Header". Dieser wird in die Hashfunktion reingeworfen. Das Ergebnis, als der Output ist der Hashwert 'h'.

16.1.jpeg



Der Input kann jeglicher Form sein wie z.B. eine Nummer, Textdatei oder eben der Inhalt unseres Block-Headers. Je nachdem welche kryptographische Hashfunktion verwendet wird, nimmt jeder Output eine bestimmte Form an. Das Bitcoin-Netzwerk benutzt die "SHA-256"-Hashfunktion. Hier ist es wichtig zu wissen, dass der Output aus einer 'SHA-256"-Hashfunktion immer eine Zeichenfolge von 256 bits ist. In anderen Worten, eine 256-stellige Binärzahl (Nur 1 und 0). Ein anderes Format dieser 256-stelligen binären Zahl ist zum Beispiel eine 64-stellige Hexadezimalzahl(0-9, a-f). Jede Ziffer im Hexadezimalsystem(= 0-9, a-f) kann mit 4 bits dargestellt werden (z.B. "E"-->"1110", "F"->"1111").

Es gibt einige Besonderheiten, die man bezüglich Hashfunktionen wissen sollte:

  • Der gleiche Input spuckt immer den gleichen Output(=Hashwert) aus(=deterministisch).
  • Wenn man den Input auch nur ein bisschen verändert, bekommt man einen völlig anderen Output(=Hashwert), der zufällig ist.
  • Das heißt in anderen Worten, man kann keinen bestimmten Hashwert(=Output) hervorrufen, indem man einen bestimmten Input einsetzt.
  • Somit kann man durch die Inspektion des Hashwertes(=Outputs) auch nicht auf den hervorgegangen Input schließen.


  • Zusammenfassung:

  • Die individuelle Block-Nummer eines Blocks ist der Hashwert(=Output) vom Block-Header(=Input), eingeworfen in eine SHA-256 Hashfunktion.
  • #deutsch #blockchain #blog #cryptocurrency #bitcoin
    Payout: 0.000 HBD
    Votes: 15
    More interactions (upvote, reblog, reply) coming soon.