Blockzeit korrekt errechnet?

Genau so sehe ich das auch! :beers:

Jetzt noch OpenSource stellen, dann ist es perfekt.

1 „GefĂ€llt mir“

Kommt :slight_smile: Ich rÀume auf, baue noch ein eigenes Backend mit API und dann geht das Repo publik.

4 „GefĂ€llt mir“

Eine ErgÀnzung:

Wenn in Podcasts o.À. die Blockzeit zitiert wird, dann wird die Blockhöhe von einer Node abgelesen. Das ist etwas vollkommen anderes, als Zeitstempel aus dem Block zu ziehen.

Beim Ablesen der Blockzeit zu einem Zeitpunkt findet eine Verbindung der realen (mangels eines besseren Begriffs) Welt zur Blockchain statt, die so aber nicht in die Blockchain geschrieben wird. Weil diese Information (Ablesezeitpunkt) gar nicht in der Blockchain steht, ist das Vorgehen auch nicht mehr rekonstruierbar. Um im Nachhinein die Blockhöhe zu einer realen Uhrzeit zu rekonstruieren, mĂŒsste man eine Datenbank pflegen, in der Blockhöhe zu Uhrzeiten des bekanntwerdens abgelegt werden.

Mir ist leider keine solche Datenbank bekannt, aber die Chance ist groß, dass es sie gibt.

Es findet eine Verbindung zu einer von zentraler Stelle behaupteten Uhrzeit statt (wie bei den ungenauen Miner Timestamps).

Einer solchen Datenbank könntest du als Bitcoiner genauso wenig vertrauen als der ungenauen aber dezentralen Mediantime.

Du kannst auch in die debug.log deiner Core-Node schauen und nachsehen, ob und wie die Zeitstempel der „Blockzeit“ deiner Node sind. Vorher natĂŒrlich prĂŒfen, ob die Uhrzeit der Node korrekt mitlĂ€uft, was aber durch die automatische Zeitsynchronisation eines normalen Debian-Linux-Derivats normalerweise gegeben sein sollte. Aber wie immer: don’t trust blindly, verify!

Diese Node z.B. hinkt ca. 2h der Blockzeit 758893 hinterher (Zeitstempel sind in UTC):

2022-10-16T08:28:52Z UpdateTip: new best=0000000000000000000398571fc2adb2f93d44f1e449b9a171a988f715a8a33a height=758893 version=0x2233c000 log2_work=93.787934 tx=772581884 date='2022-10-16T06:23:34Z' progress=0.999972 cache=49.9MiB(222276txo)

WĂ€hrend folgende besser synchronisierte Node fĂŒr die Blockzeit 758893 diesen Log-Eintrag ausgespuckt hat:

2022-10-16T06:23:57Z UpdateTip: new best=0000000000000000000398571fc2adb2f93d44f1e449b9a171a988f715a8a33a height=758893 version=0x2233c000 log2_work=93.787934 tx=772581884 date='2022-10-16T06:23:34Z' progress=1.000000 cache=3.3MiB(19856txo)

Eine Core Node, die zeitnah am Blockchain-Tip synchron ist, zeigt meist Log-Zeitstempel, die nicht allzu viele Sekunden vom Block-Zeitstempel abweichen, wobei der Block-Zeitstempel, wie schon geschrieben wurde, ein in gewissen Grenzen willkĂŒrlicher Zeitstempel ist, der nur bedingt als eine Art Zeitbasis geeignet ist.
Im besser synchronisierten Beispiel z.B. Log-Zeitstempel 2022-10-16T06:23:57Z ggĂŒ. Block-Zeitstempel 2022-10-16T06:23:34Z, 23 Sekunden Unterschied (Median Time lt. blockchain.com fĂŒr diesen Block: 16. Okt. 2022, 06:06:10 UTC).

NatĂŒrlich nicht. Aber die Information ist ja auch nicht wirklich sicherheitsrelevant.
Niemand will sich ein falsches Tattoo stechen lassen. So viel ist klar, aber ich wĂŒrde was die Genauigkeit der Blockzeit angeht eher einer Node vertrauen, die seit zehn Jahren lĂ€uft, als dem Zeitstempel aus dem Block.