225 / 691TARGET

Mining Target

Numerischer Grenzwert für den Arbeitsnachweis

Mining Target ist der Grenzwert zum Vergleich eines Header-Hashes. Unterscheide die Zahl, ihre kompakte nBits-Kodierung und das für den jeweiligen Block tatsächlich vorgeschriebene Ziel.

Mining Target ist ein nichtnegativer numerischer Grenzwert für den Header-Hash bei der Prüfung des Arbeitsnachweises. Ein gültiges Netzwerkziel muss positiv und regelkonform sein; der Hash darf es nicht überschreiten. Ein niedrigeres Ziel erschwert die Suche.

Bitcoin Core v29.0 verwirft bei der Arbeitsprüfung einen Hash, der größer als das abgeleitete Ziel ist. Es gilt hash ≤ target, nicht nur strikt kleiner. Verglichen wird der numerische Hash des gesamten Headers, nicht die Nonce allein. [Bitcoin Core v29.0 — Proof-of-work checks]

Numerisch unterschiedliche Hashes können gleich viele führende Nullen haben. Auch die restlichen Ziffern und ihr Wert gegenüber dem Ziel zählen. Nullen veranschaulichen Seltenheit, ersetzen aber nicht den vollständigen Vergleich hash ≤ target. [Bitcoin Core v29.0 — Proof-of-work checks]

Das Feld nBits umfasst 32 Bits, während das Ziel im 256-Bit-Raum interpretiert wird. Die Kodierung enthält Exponent und Koeffizient mit Vorzeichenbit. Beispielsweise wird 0x04123456 zu 0x12345600 dekodiert; das zeigt die Kodierung, nicht das aktuell vorgeschriebene Netzwerkziel. [Bitcoin Core v29.0 — Compact arithmetic]

Im 80-Byte-Header wird nBits als vier Little-Endian-Bytes serialisiert. Die Zahl 0x1d00ffff entspricht daher ff ff 00 1d. Verwechsle beim Datenlesen die Byte-Reihenfolge nicht mit der Ziffernreihenfolge einer dargestellten Zahl. [Bitcoin Developer Reference — Block headers and nBits]

DeriveTarget in Bitcoin Core v29.0 verwirft negative Ziele, null, Überläufe und Werte oberhalb des netzspezifischen powLimit. Die Zahl in nBits beliebig zu erhöhen genügt daher nicht. Erfolgreiches Entpacken der Darstellung beweist keine Zielgültigkeit. [Bitcoin Core v29.0 — Proof-of-work checks]

Die kontextuelle Prüfung vergleicht nBits mit GetNextWorkRequired für Vorgängerblock und Netzwerkregeln. Eine Abweichung ergibt bad-diffbits. Auch ein Hash unter einem selbst gewählten leichteren Ziel rechtfertigt keinen falschen nBits-Wert im Header. [Bitcoin Core v29.0 — Contextual and block validation]

Bei einem gleichverteilten 256-Bit-Hashmodell und zulässigem Ziel T beträgt die Wahrscheinlichkeit je Versuch p = (T + 1) / 2^256: Werte von null bis einschließlich T sind zulässig. Das ist aus der Vergleichsregel abgeleitet; das Ziel allein bestimmt weder Hashrate noch den genauen Zeitpunkt des nächsten Blocks. [Bitcoin Core v29.0 — Proof-of-work checks]

Bitcoin Core prüft neben dem Header auch Transaktionswurzel, Coinbase, Blockgrenzen und Transaktionsgültigkeit. Das richtige Ziel einzuhalten ist notwendig, ersetzt diese Prüfungen aber nicht. Ein niedriger Hash repariert keinen ungültigen Blockinhalt. [Bitcoin Core v29.0 — Contextual and block validation]

Für ein möglichst vollständiges Bild lies diesen Eintrag zusammen mit Share Difficulty, Proof of Work, Nonce, Block-Header. Auf diesen Eintrag verweisen außerdem Nonce, Mining Share, Share Difficulty.

DOC · 001Bitcoin Core v29.0 — Proof-of-work checksPrimärquelleDOC · 002Bitcoin Developer Reference — Block headers and nBitsDokumentationDOC · 003Bitcoin Core v29.0 — Compact arithmeticPrimärquelleDOC · 004Bitcoin Core v29.0 — Contextual and block validationPrimärquelle
Quellenbasiert · Keine Anlageberatung