Wie lange dauert ein Block?

Brauchst du Zeitstempel, wann eine Umbrel-Node, die meist nur idle war, einen Block empfangen hat?
Hätte ich von Blockzeit 765116 an, leider nur ca. 4 1/2 Monate.

1 „Gefällt mir“

Wär vielleicht ganz lustig, nachdem ich aufgelöst habe, die theoretisch richtige Antwort mit echten Blockchaindaten zu vergleichen. Ich werde das hier aber noch eine Weile laufen lassen, damit mehr Leute die Chance haben abzustimmen.

Gesichert ab Blockzeit 765116, schreib mir 'ne PN, wenn’s aktuell werden sollte.

1 „Gefällt mir“

Warum machst du jeden Tag um 0Uhr eine Transaktion, wenn du einfach die Blockzeit um Mitternacht nachsehen willst?

Gebe mir morgen Abend eine Stunde und ich habe es mit mempool selbst ausgerechnet.

1 „Gefällt mir“

Nach der Verwirrung um deine Fragestellung ein weiterer m.E. wichtiger zu berücksichtigender Punkt:

Erwartest du eine Antwort aus der Theorie gleichbleibender Hashrate heraus, oder eine Antwort aus dem Umfeld stetig steigender Hashrate, wie wir es momentan haben?

Das könnte schon einen Unterschied machen.

1 „Gefällt mir“

Hab mir jetzt paar Mitternachtsblöcke angeschaut und meine Abstimmung nochmal korrigiert. Bin aber gespannt was bei der Jahresauswertung rauskommt!

1 „Gefällt mir“

Ich habe die Frage sehr konkret gestellt, weil ich auch eine Antwort aus der „echten Welt“ erwarte – das macht die Sache irgendwie interessanter. Steigt die Hashrate durchschnittlich, und das hat einen Einfluss auf die Antwort? Dann sollte die Antwort das auch entsprechend berücksichtigen. Hat Mitternacht UTC eine spezielle Bedeutung, die auf andere Zeiten nicht zutrifft und die Antwort beeinflusst? Ebenso.

Wenn das allerdings dazu führt, dass die exakte Antwort nicht in der Liste steht, ist natürlich einfach die nächstbeste gerundete Antwort zu nehmen, ich habe ja nicht umsonst überall ca. dazugeschrieben.

@SaftCPU und @skyrmion, selbstverständlich kann man meine sehr konkret gestellte Frage auch etwas abstrahieren, wenn man sich sicher ist, welche Details für die Antwort egal oder vielleicht auch nur Ablenkung sind :slight_smile:

2 „Gefällt mir“

Du hast recht, ich möchte daran auch nichts ändern bzw. abstrahieren. Deshalb habe ich meinen Beitrag wieder gelöscht. :+1:

1 „Gefällt mir“

Wär nicht unbedingt nötig gewesen, war eine gute Zusammenfassung der Fragestellung, und ich denke, du hast ja durchschaut, worauf ich hinaus will.

Aber ja, ist vermutlich besser so, damit hier niemand irgendwie beeinflusst wird, bevor ich auflöse (heute noch, sind ja schon viele Antworten da, und ich bin nicht sehr geduldig).

2 „Gefällt mir“

Mitternacht in Deutschland ist nicht Mitternacht in Australien, USA oder wo auch immer. Von daher müsste die Antwort um die 10 Minuten sein.

2 „Gefällt mir“

Die richtige Antwort lautet: ca. 20 Minuten

Ihr könnt euch meine Überraschung vorstellen, als die allererste Antwort, die hier gevotet wurde, wirklich 20 Minuten war. Kurze Schrecksekunde: Vielleicht wissen die Leute hier doch mehr als gedacht. Dann die Erlösung, @BTCommander hat sich nur verklickt :slight_smile:

Ich gehe hier auf alle Antwortmöglichkeiten ein, und am Schluss sollte dann klar sein, warum es ca. 20 Minuten sind:


ca. 1 Minute / ca. 60 Minuten:

1 Minute hat natürlich niemand genommen, jeder versteht POW gut genug, um zu wissen, dass es nicht möglich ist, bestimmte Blöcke (in dem Fall Mitternachtsblöcke) einfach mal so 10x schneller zu minen als die anderen.

Dass umgekehrt Mitternachtsblöcke viel schwieriger sein sollten als die anderen und aus irgendeinem Grund eine Stunde brauchen, ist natürlich auch Unsinn, davon hätte man doch auch sicher mal was gehört, wenn es wahr wäre.


ca. 5 Minuten

Das hatten am Anfang einige gewählt, am Ende sind 8% übrig geblieben. Das mag dem Missverständnis geschuldet sein, dass manche Leute geglaubt haben, ich spreche nicht von der Gesamt-Blockzeit, sondern von der Wartezeit zwischen Absenden der Transaktion und dem nächsten Block.

Aaaaaber, und hier wird es interessant: Selbst wenn ich die Wartezeit gemeint hätte, wäre diese Antwort falsch. Die zu erwartende Wartezeit ist zu jedem Zeitpunkt gleich der durchschnittlichen Blockzeit, egal wie lange schon kein Block gefunden wurde.

Zur Veranschaulichung:

  • Der letzte Block wurde gerade geminet. Wie lange wird es wahrscheinlich bis zum nächsten Block dauern? Antwort: 10 Minuten.
  • Der letzte Block war vor 5 Minuten. Wie lange dauert es wahrscheinlich noch bis zum nächsten? Antwort: 10 Minuten.
  • Der letzte Block war vor 10 Minuten. Wie lange noch bis zum nächsten? Antwort: 10 Minuten.
  • Der letzte Block war vor einer Stunde. Wie lange noch? 10 Minuten.

Das Minen hat kein „Gedächtnis“, es ist egal, wie viele Hashes schon ausprobiert wurden, genauso wie beim Roulette egal ist, wie oft gerade in Folge rot gekommen ist. Auch nach 10 Mal rot ist die Wahrscheinlichkeit beim nächsten Mal immer noch 49%, und auch nach einer Stunde ohne Block ist die zu erwartende Zeit bis zum nächsten Block immer noch 10 Minuten.

Die Antwort ca. 5 Minuten ist also in jeder Hinsicht falsch.

@piet hat das Beispiel mit dem Bus gebracht, der alle 30 Minuten fährt, was bei zufälligem Ankommen eines Passagiers an der Haltestelle zu einer durchschnittlichen Wartezeit von 15 Minuten führen soll. Wenn der Bus einem strikten Fahrplan folgt, stimmt das auch. Wenn allerdings die Busfahrzeiten zufällig sind, aber durchschnittlich alle 30 Minuten ein Bus fährt, stimmt das nicht mehr – dann ist die durchschnittliche Wartezeit tatsächlich 30 Minuten! Man nennt das auch das Wartezeitparadoxon.

Dieses Paradoxon trifft auch auf Bitcoin zu: Blockzeit zufällig, aber durchschnittlich 10 Minuten? Dann ist auch die durchschnittliche Wartezeit 10 Minuten, egal wann.


ca. 9 Minuten / ca. 10 Minuten / ca. 11 Minuten

Die 9 Minuten waren ein kleines Ablenkungsmanöver von mir für die Cleveren unter euch, die wissen, dass die durchschnittlich steigende Hashrate dazu führt, dass die durchschnittliche Blockzeit etwas geringer als 10 Minuten ist, und hier den Sinn der Umfrage (sozusagen meinen „Trick“) verortet haben. 20% haben das gewählt.

Selbst wenn ich ganz allgemein nach der durchschnittlichen Blockzeit gefragt hätte, wäre der Effekt allerdings nicht groß genug dafür, dass ca. 9 Minuten stimmen würde. Läuft eher auf irgendwas zwischen 9,5 und 10 Minuten hinaus, also auch in dieser Hinsicht die falsche Antwort.

Die 11 Minuten hat niemand gewählt, warum auch.

63% waren für ca. 10 Minuten, und das wäre auch die richtige Antwort auf die Frage nach der durchschnittlichen Blockzeit gewesen. Das war aber nicht meine Frage, also falsch.


ca. 20 Minuten

Die richtige Antwort – 9% der Teilnehmer haben es gewusst.

Worin unterscheidet sich meine tatsächliche Frage von der Frage nach der durchschnittlichen Blockzeit?

Durchschnittliche Blockzeit:

Ich picke einen zufälligen Block raus und kann erwarten, dass er 10 Minuten gedauert hat. Alle Blöcke werden dabei gleich behandelt.

Meine Frage:

Ich picke nicht einen zufälligen Block raus. Stattdessen wähle ich einen fixen Zeitpunkt, in dem Fall Mitternacht UTC (das ist aber egal, jeder Zeitpunkt funktioniert, wie @skyrmion hier vorher schon mal erwähnt hatte).

Und jetzt kommt der Trick: Der Block, der diesen fixen Zeitpunkt abdeckt, ist jetzt nicht mehr irgendein zufälliger Block, sondern es ist total wahrscheinlich, dass es ein besonders langsamer Block ist. Warum ist das so? Ganz einfach: Langsame Blöcke dauern lang, haben also eine höhere Wahrscheinlichkeit, meinen fixen Zeitpunkt zu beinhalten, als schnelle Blöcke.

Beispiel zur Veranschaulichung:

Ich sende eine Transaktion irgendwann zwischen 0 Uhr und 1 Uhr. Es werden in dieser Zeitspanne 6 Blöcke gefunden.

  • Block 1: 00:01 Uhr (Blockzeit 1 Minute)
  • Block 2: 00:02 Uhr (Blockzeit 1 Minute)
  • Block 3: 00:03 Uhr (Blockzeit 1 Minute)
  • Block 4: 00:58 Uhr (Blockzeit 55 Minuten)
  • Block 5: 00:59 Uhr (Blockzeit 1 Minute)
  • Block 6: 01:00 Uhr (Blockzeit 1 Minute)

Klarerweise ist es viel wahrscheinlicher, dass meine Transaktion auf den langsamen Block 4 fällt als auf irgendeinen der anderen, einfach weil er einen größeren Zeitraum abdeckt.

So weit, so gut, die richtige Antwort ist also auf jeden Fall größer als 10 Minuten, aber wie kommt man jetzt auf 20 Minuten?

Mit genau der gleichen Überlegung wie oben, wo es um die falsche 5-Minuten-Antwort ging: Wir wissen ja bereits, dass zu jedem beliebigen Zeitpunkt der nächste Block durchschnittlich 10 Minuten entfernt ist. Die gleiche Überlegung geht aber mit dem gleichen Argument auch in die andere Richtung: Zu jedem beliebigen Zeitpunkt ist auch der vorige Block durchschnittlich 10 Minuten entfernt. (Klarerweise nur, wenn man nicht schaut, wie lang der letzte Block tatsächlich her ist. Wenn ich absichtlich immer nur Transaktionen sende, wenn der letzte Block 42 Minuten alt ist, dann ist der letzte Block natürlich auch durchschnittlich 42 Minuten entfernt, und nicht 10.)

Zusammen ergibt das: Zu jedem beliebigen Zeitpunkt befindet man sich durchschnittlich ca. 10 Minuten nach dem letzten und ca. 10 Minuten vor dem nächsten Block. Also: Jede Transaktion, die ich (mit ausreichender Fee und ohne besonderes Timing) absende, landet in einem Block, der durchschnittlich ca. 20 Minuten lang geminet wurde.


Vielleicht noch erwähnenswert: Der in meiner Frage gewählte fixe Zeitpunkt stellt nur sicher, dass kein besonderes Timing verwendet wird, ist aber eigentlich gar nicht notwendig. Schau dir einfach mal alle Transaktionen an, die du selbst in deinem Leben gemacht hast – du wirst feststellen, dass die durchschnittliche Blockzeit ca. 20 Minuten war (wieder vorausgesetzt eine ausreichende Fee).

Das heißt auch, dass jedes Mal, wenn du dir gedacht hast, dass gerade du immer ganz besonderes Pech hast und statt in normalen 10-Minuten Blöcken immer in viel langsameren Blöcken landest, du eigentlich nur Bitcoin nicht gut genug verstanden hast. Bei zufälligen Transaktionszeitpunkten und ausreichender Fee landet jeder mit seinen Transaktionen durchschnittlich in lahmen 20-Minuten Blöcken – das ist nicht Pech sondern Bitcoin.

(Und noch so nebenbei, natürlich spielt die steigende Hashrate hier mit rein, also sind es wohl eher so 19 als 20 Minuten. Das hätte ich aber nicht gut zur Auswahl stellen können, ohne damit etwas zu verraten.)

6 „Gefällt mir“

Und noch ein ganz lustiges Korollar daraus, das im ersten Moment total falsch klingt:

Je geringer man die Fee wählt, umso schneller ist der Block, in dem die Transaktion landet.

1 „Gefällt mir“

Nice!
Wieder was gelernt. Ich mag Statistik.

Top! Hab ich wohl doch weniger Pech im Leben als gedacht :joy:

2 „Gefällt mir“

Komisches Beispiel, weil wenn du um 00:00 die Transaktion sendest mit der Erwartung ihn im nächsten Block zu haben, dann ist er auch nach einer Minute drin.

Das Argument mit dem Bushaltestellenparadoxon verstehe ich (und hab es selber erst falsch gedacht), dass sich die Wartezeit nicht halbiert wenn der Bus auch zufällig fährt, aber da das ja auch auf Bitcoin zutrifft müsste doch nach dem selben Argument die Zeit auch wieder nur 10 Minuten sein (ich lasse die Hashratesteigerung mal komplett weg in meiner Argumentation). Du machst eine Transaktion und durchschnittlich 10 Minuten später ist sie im Block aufgenommen.

Hast du für die These von 20 Minuten eine Statistik?

Das beißt sich aber logisch mit jeder Block ist durchschnittlich 10 Minuten auseinander. Vielleicht falle ich auf dieses Paradoxon jetzt herein, aber wenn du dir aus einer Datenreihe, die durchschnittlich 10 Minuten pro Punkt auseinander ist einen zufälligen Punkt aussuchst, dann ist dieser durchschnittlich auch nur 5 Minuten von anderen Datenpunkten entfernt. Ich verstehe nicht warum, wenn man sich speziell einen Punkt aussuchen soll diese Zeit sich verdoppeln sollte? Deine Argumentation geht ja so, dass das Problem zeitsymmetrisch ist und du bei einem zufälligen Zeitpunkt nach vorne und hinten schauen kannst und von dort aus immer ca. 10 Minuten ein Block entfernt ist.

  1. Aber die Blockchain ist ja nicht zeitinvariant, auf der einen Seite stehen die noch unbekannten zu minenden Blöcke und auf der anderen Seite die schon feststehenden Blöcke.

  2. das Mining ist nicht komplett zufällig. Wenn die Nonce durchprobiert ist können die Transaktionen getauscht werden und wenn die auch alle durchpermutiert sind kann die Zeitangabe abgeändert werden und alles wieder von vorne durchprobiert werden. Ein Miner kann sich also die schon durchprobierten Zustände merken und muss diesen Suchraum nicht nocheinmal abarbeiten. So könnten sich auch Pools leichter die Arbeit teilen. Andererseits fällt dieses Argument auch wieder weg weil wenigstens durch die Zeit der Suchraum auch unendlich ist und somit nicht verringert werden kann. Somit stimmt es schon dass man statistisch immer 10 Minuten von einem Block entfernt ist.

  3. Du argumentierst, dass wenn ein Block länger braucht dann ist es wahrscheinlicher dass man auch selber in dieser Zeit die Transaktion in Auftrag gibt, aber durchschnittlich sollte man doch trotzdem auch in beliebigen Zeiten wieder mal nur eine Minute oder weniger warten müssen sodass wie im Busparadoxon wieder 10 Minuten Wartezeit herauskommen. Diese zeit verdoppelst du weil du annimmst, dass die gleiche zeit auch symmetrisch für die Vergangenheit gilt. Aber wenn du im Beispiel des warten auf einen Bus durchschnittlich 10 Minuten wartest, dann kannst du meiner Meinung nicht einfach die Durchschnittszeit verdoppeln weil es ja bedeuten würde, dass für egal welche Zeitpunkte du dir aussuchst, also beliebig alle Zeiten, der Bus für diese Zeit nur alle 20 Minuten fährt obwohl er im Durchschnitt alle 10 Minuten fährt. Ich denke der Logikfehler liegt darin, anzunehmen, dass das Problem zeitsymetrisch ist. Zu jedem Zeitpunkt bist du im Durchschnitt 10 Minuten vom Bus entfernt denn wenn du wirklich durchschnittlich 10 Minuten warten musst bedeutet das auch, dass du im Durchschnitt den Bus immer genau verpasst. Und damit ist durch die Vorhersage der Zukunft schon implizit eine Aussage über die Vergangenheit getroffen worden die du verwirfst wenn du in deiner Argumentation nach hinten schaust (und umgekehrt).

Ich denke deine Argumentation hängt also sehr stark davon ab, welches Wissen der Statistiker als äußerer Betrachter über die Blockchain hat. Hat er praktisch kein Wissen, dann kommt er vielleicht auf 20 Mintuen durchschnittlich, aber umso mehr wissen, zB. auch wie die zukünftige Blockverteilung sein wird dann reduziert sich die Statistik auf 10 Minuten wie im Busparadoxon. Oder hab ich irgendwo einen Logikfehler?

1 „Gefällt mir“

Mal zusammengefasst: Für jeden beliebigen Punkt P behauptest du dass dieser Punkt P durchschnittlich 20 Minuten von dem nächsten Punt R_i einer beliebigen Punktreihe R entfernt ist die durchschnittlich aber alle 10 Minuten einen Punkt hat.
Schon rein Mathematisch kann es damit durchschnittlich nicht größere Abstände als 10 Minuten geben und es muss irgendwo ein Logikfehler sein, oder sehe ich das falsch?

Ich habs mir jetzt folgendermaßen vorgestellt:
Die Blöcke sind Anhänger eines Zuges und die Chain ist die Schiene :grinning_cat_with_smiling_eyes: du liegst an einem Punkt über den Gleißen und wirfst zufällig Äpfel nach unten in die Anhänger. Die Anhänger sind unterschiedlich lang analog zur Dauer des jeweiligen Blocks in der Blockchain..
Dein Apfel wird mit höherer Wahrscheinlichkeit in die Anhänger fallen, die länger sind.

Dieses Beispiel ist natürlich ein Extrembeispiel, um das Paradoxon zu sehen:
In 5 Wagons mit einem Meter Länge fallen im Schnitt von 60 Äpfeln 5 Stück.. in den 55 Meter langen fallen 55 Stück! innerhalb des längeren Wagon liegen die Äpfel im Schnitt 22,5m vor der vorderen/hinteren Wagonwand (analog zur Wartezeit)
Nun, der Schnitt von 22,5m wird noch etwas von den anderen 5 Äpfeln runtergezogen, diese fallen aber nicht so sehr ins Gewicht..

Dennoch erscheinen mir 20min viel :smiling_face_with_sunglasses:

1 „Gefällt mir“

Schönes Bild mit dem Zug :slight_smile:

Aber Du gehst davon aus, dass du regelmäßig einen Apfel in die unterschiedlich langen Wagons fallen lässt. Aber genauso zufällig wie die Länge des Zuges ist auch deine Wurfpause zwischen dem Fallen lassen der Äpfel sodass das im Durchschnitt genau die unterschiedlichen Zuglängen ausgleicht. Genau das ist ja das angesprochene Busparadoxon.

Also bildlich gesprochen, wenn du mit dem Werfen des Apfels genau den gleichen zufallsgenerator hast wie die Länge des Zuges, dann hast du auch exakt nur ein Apfel in jedem Wagen egal wie lang der wagen ist. Und unabhängig des verwendeten Zufallsgenerators, die Durchschnittswerte sind ja vorgegeben.

1 „Gefällt mir“

Das Beispiel bildet nicht direkt die Fragestellung ab, sondern veranschaulicht nur die Idee. Ich sende in dem Beispiel nicht um 00:00, wie in der Frage, sondern irgendwann zwischen 0 Uhr und 1 Uhr. Zufällig. Klar, das kann auch zufällig um 00:00 sein, dann lande ich in einem schnellen Block. Viel wahrscheinlicher ist es aber irgendwann zwischen 00:03 und 00:58, dann lande ich in einem langsamen Block.

Ich glaube, da machst du deinen Fehler: Du suchst dir einen Punkt zufällig aus der Datenreihe – das ist falsch. Das ist so, wie wenn du zufällig einen Block aussuchst und schaust, wie lang er war. Klar war er durchschnittlich 10 Minuten lang. In meiner Fragestellung nimmst du aber nicht einen Punkt aus der Datenreihe, sondern einen beliebigen Punkt auf der Zeitlinie und schaust dir die Abstände zu Punkten aus der Datenreihe an. Das ist etwas anderes, daher auch kein Widerspruch.

Das lässt sich auch leicht an dem zitierten Beispiel veranschaulichen: Die durchschnittliche Blockzeit ist dort offensichtlich 10 Minuten, aber von den 60 Minuten, die die Stunde hat, liegen 5 in 1-Minute-Blöcken, und 55 im 55-Minuten-Block, also liegt jede Minute durchschnittlich in einem 50,5-Minuten-Block. Das ist kein Widerspruch.

Haha, ich vertraue der Mathematik. Aber Spaß beiseite, ich ermutige jede und jeden hier, das für die eigenen Transaktionen mal nachzuschlagen. @Cricktor hat auch seine Blockdaten angeboten, da können wir mal reinschauen. Ich habe aber keinen Zweifel daran, dass es so ca. stimmt.

1 „Gefällt mir“

Ich kann ehrlich gesagt der Begründung, warum 20min die Antwort sein soll, nicht folgen und muss nochmal mit freierem Kopf drüber nachdenken.

Mit einem durchschnittlichen Zeitintervall von 10min von einem Block zum nächsten, +/- Varianz wie man sie bei Bitcoin beobachten kann, sehe ich nicht, wieso du auf 20min kommen möchtest.

Deine Transaktion kommt zu einem fixen Zeitpunkt, nämlich Mitternacht, die Fee ist stets hoch genug, daß die Transaktion auf jeden Fall im nächsten Block landen wird. Das war in etwa deine Vorgabe.

Es gibt einen Block vor Mitternacht und deine Transaktion wird im nächsten Block nach Mitternacht in die Blockchain geschrieben. Statistik ist nicht immer intuitiv, aber ich sehe trotzdem nicht, wo das 20min-Intervall herkommen soll.

P.S.
Im Grunde genommen ist es auch egal, ob man nur Mitternacht oder schlicht jede volle Stunde betrachtet.

2 „Gefällt mir“

Einfach gesagt: Manche Blöcke sind kürzer als 10 Minuten, manche sind länger, und zwar genau so, dass der Durchschnitt 10 Minuten sind. Mitternacht ist aber viel öfter in so einem längeren Block als in einem kürzeren. Warum? Weil längere Blöcke länger sind und damit höhere Chancen haben, Mitternacht mit dabei zu haben. Und das gilt natürlich nicht nur für Mitternacht, sondern für jeden Zeitpunkt.