Woher kennt das Netzwerk die Zeit?

Eine kompliziert gestellte Frage:

Woher kennt die Blockchain/ die Miner die Zeit, sodass die difficulty so angepasst wird, dass es im Durchschnitt alle 10min zum nächsten Block sind?

Ich spiele hier konkret auf die 10min als Zeitziel ab und nicht auf das „Warum“ es zu einer Anpassung kommt.

Also hier muss es doch konkret eine in der menschlichen Unwelt liegende Stelle geben, von der die „Zeitstopuhr“ sozusagen abgefragt wird (eine Art zentrale Website o.ä., die die 10min misst). Denn woher soll ein digitales Netzwerk wissen, wie unsere Zeitrechnung/ Verweildauer in Sekunden, Stunden und Minuten erfasst wird. Denn schließlich ist Zeit etwas Subjektives, was vom Menschen aus geht.

Ich hoffe ich habe mich halbwegs verständlich ausgedrückt.

Ganz einfach, sie verwenden eine Uhr.

Als Basis dient vermutlich die Uhrzeit der entsprechenden Computer. Diese wiederum kann von Hand vorgegeben werden, oder man richtet die Verbindung zu einem NTP-Server ein, zu dem sich regelmäßig automatisch synchronisiert wird.

Zeit ist nur insofern subjektiv, als dass wir uns alle in unterschiedlichen Gravitationspotentialen befinden und unterschiedlich schnell bewegen. Die sich ergebenden Zeitdifferenzen sind allerdings so klein, dass sie für Bitcoin absolut keine Bedeutung haben.

Außerdem kann man sich trotz aller relativistischer Effekte auf eine Zeit bzw. Uhr einigen. Siehe z.B. hier: Internationale Atomzeit – Wikipedia

Es gibt viele NTP-Server, die von wissenschaftlichen Einrichtungen betrieben werden und welche die möglichst exakte Internationale Atomzeit bzw. UTC Zeit liefern.

Ich finde schon. Wahrscheinlich warst du nur irritiert, weil immer davon gesprochen wird, dass Bitcoin eine eigene Zeit hat und keine Orakel benötigt.

Zum Thema:
Wie weiss Bitcoin, ohne Orakel, wann 10 min um sind?
Nein, die Blockzeit ist keine dezentrale Uhr

2 „Gefällt mir“

Danke @skyrmion , vor allem die älterern Links haben mir in meiner tieferliegenden Frage, ob Bitcoin durch diese Realweltdaten angreifbar sei, sehr weitergeholfen.

Kurzum dazu aber noch: bestimmt die Mehrheit der Miner wie „spät“ die aktuelle Realweltzeit ist, oder immer nur der zuletzt erfolgreiche Miner?

Ich spiele darauf ab, ob durch diese Zeitabfrage theoretisch die Blockzeit in die nahezu Unendlichkeit gezogen werden könnte, wenn die Abfrage der Realweltinformation „Zeit“ durch die Miner manipuliert/ absichtlich falsch in die Blockchain integriert wird und so der Mining-Prozess zum Erliegen käme.

Anscheinend geht es hier im großen und ganzen um das Thema Oracle Problem.

1 „Gefällt mir“

Ich bin mir nicht sicher, ob ich diese Frage richtig verstehe…

Den Timestamp eine Blocks legt ausschließlich der erfolgreiche Miner fest. Allerdings gibt es Einschränkungen, unter denen der Timestamp nicht vom Rest des Netzwerks akzeptiert wird. Der Block ist also dann ungültig,

@sutterseba hat das in diesem Beitrag ja sehr schön erklärt:
Wie weiss Bitcoin, ohne Orakel, wann 10 min um sind? - #2 von sutterseba

Wenn sich alle Miner einig wären, gibt es wie gesagt immer noch die Nodes, also das eigentliche Netzwerk, die den Timestamp kontrollieren. Sollte der Timestamp eines Blocks zu weit in der Zukunft liegen, wird der Block vom restlichen Netzwerk als nicht valide betrachtet. Siehe @sutterseba’s Beitrag.

Im Endeffekt schon. Auch wenn das Orakel in diesem Fall kein vollständig automatisierter Mechanismus ist.

Das Interessanteste und Wichtigste an solchen Überlegungen ist eigentlich immer, ob sich aus den Fakten und Randbedingungen Angriffsszenarien ergeben. Zum Beispiel wäre eine zentrale Uhr ein Angriffspunkt. Oder auch wenn alle Nodes nur eine Hand voll unterschiedlicher NTP-Server nutzen würden.

Auch das haben wir im verlinkten Thread ja diskutiert; allerdings nicht wirklich zu Ende.

Edit: Falsche Aussage zur Manipulation oben korrigiert.

3 „Gefällt mir“