Warum gibt es immer einige unbestätigte Transaktionen?

Soweit ich weiß, beginnt ein Miner mit der Erstellung eines neuen Blocks, sobald er einen gültigen Block von einem anderen Miner erhält. Dann beginnt es, den nächsten Block über dem gerade empfangenen Block zu konstruieren und zu hashen, indem es alle Transaktionen verwendet, die es in seinem Speicherpool hat.

Es gibt jedoch immer noch einige Transaktionen, die nicht einfach (oder überhaupt nicht) im BitCoin bestätigt werden können .

Kann mir jemand erklären warum das passieren kann? Liegt es an einem Transaktionsauswahlmechanismus, den die Miner verwenden? oder liegt es an der Unzuverlässigkeit der Konnektivität zwischen den Knoten? oder etwas anderes?

Antworten (3)

Der Lebenszyklus einer Transaktion ist wie folgt:

  1. Transaktionserstellung:
    Ein Sender erstellt eine Transaktion, er fügt eine Liste von Empfängern hinzu, bestimmt, welche vorherigen Transaktionsausgaben ausgegeben werden sollen, und signiert sie. Die Differenz zwischen Ausgangssumme und Eingangssumme bestimmt die Transaktionsgebühr.
  2. Relay:
    Der Absender übermittelt die Transaktion an das Bitcoin-Netzwerk. Er schickt es einfach an seine Kollegen, die es wiederum an ihre Kollegen weiterleiten. Schließlich wird die Transaktion von allen gesehen, wenn sie sich über das Netzwerk ausbreitet.
  3. Transaktionsauswahl:
    Aus allen Transaktionen, die einem Miner derzeit bekannt sind (der „Mempool“), wählt jeder Miner eine Teilmenge aus, die er in einen Block aufnehmen möchte. Sie entscheiden sich normalerweise dafür, so viele wie zulässig aufzunehmen (1 MB) und entscheiden sich dafür, den größten Umsatz für sich selbst zu erzielen (höchste Gebühr zuerst). Die Miner können jedoch jede gewünschte Auswahl treffen, sogar überhaupt keine Transaktionen (außer der erforderlichen Coinbase-Transaktion) einbeziehen.
  4. Blockerkennung:
    Ungefähr alle zehn Minuten gelingt es einem der Miner, einen Block zu erstellen. Dieser Block bestätigt die Transaktionen, die er zuvor ausgewählt hat, indem er sie in die Blockchain schreibt (sofern dieser Block am Ende Teil der Kette mit der meisten Arbeit ist). Dieser Block wird wiederum durch das Netzwerk weitergeleitet, um alle Knoten des neuen Zustands des Netzwerks zu aktualisieren. Die Zahlung gilt an dieser Stelle als erledigt (mit einem hohen Maß an Vertrauen, obwohl ein paar zusätzliche Bestätigungen nicht schaden).

Es gibt mehrere Möglichkeiten, wie eine Transaktion unterwegs nicht bestätigt werden kann:

  1. Die Transaktion ist ungültig, z. B. weil nicht verfügbares Geld ausgegeben wird, sie falsch formatiert ist, mit einer bestätigten Transaktion in Konflikt steht oder die Signatur falsch ist. Nodes leiten ungültige Transaktionen nicht weiter, und wenn sie sie bereits haben, löschen sie sie aus ihrem Mempool.
  2. Die Transaktion wird nicht weitergeleitet. Dies geschieht zB, wenn die Transaktionsgebühr unter der minRelayTxFeeder Peers des Senders liegt. Die Absender werden eine solche Transaktion nicht zu ihrem Mempool hinzufügen und sie nicht weiterleiten.
  3. Die Transaktion wird nicht für Blockvorlagen ausgewählt. Wenn eine Transaktion nicht zu den oberen 1 MB nach Transaktionsgebührensatz gehört, wird sie in der Regel erheblich verzögert, bis der Gebührensatz auf sich selbst sinkt, sie durch eine konkurrierende Transaktion ungültig gemacht wird oder ein Miner auf andere Weise dazu angeregt wird fügen Sie es in einen Block ein. Solche Transaktionen können irgendwann ablaufen ( Wie verlassen Transaktionen den Speicherpool? ), können aber auf unbestimmte Zeit gültig bleiben.

Also, 1) es gibt eine strenge Grenze in der Bereitstellung von Blockspace mit 1 MB pro ~zehn Minuten, und 2) Bitcoin-Transaktionen sind in vielerlei Hinsicht nützlich, es liegt nahe, dass es immer eine Art Mindestgebot für die Nutzung von Blockspace geben wird (z. B. Konsolidierung von nicht verbrauchten Ausgaben mit geringem Wert, Zeitstempel, Farbmünzenanwendungen, dezentralisierte Backups, Poesie…). Daraus folgt, dass es immer mehr Nachfrage nach Blockspace als Angebot geben wird und der Preis für Blockspace bei einem Gebührensatz, bei dem Nachfrage und Angebot übereinstimmen, eine Art Gleichgewicht finden wird. Daher wird es immer eine unbestätigte Transaktion geben.

Gibt minRelayTxFeees auch eine Obergrenze für die Gebühren?
Ich glaube, dass einige Wallets eine Transaktion mit zu hoher Gebühr nicht weiterleiten, um Benutzer vor Fehlern zu schützen (z. B. ist es vorgekommen, dass Benutzer Transaktionsgebühren und Betrag verwechselt und 300 BTC Transaktionsgebühren bezahlt haben), aber abgesehen davon gibt es keine nicht wirklich eins.

In Mining-Blöcken ausgewählte Transaktionen sind nicht wie eine Warteschlange, in der Sie Ihre Zeit warten und schließlich nach vorne kommen.

Gebühren sind nicht obligatorisch, sollten aber in jeder Transaktion enthalten sein, wenn Sie keine oder niedrige Gebühren gesendet haben, können Sie trotzdem ausgewählt werden (obwohl es höchst unwahrscheinlich ist), aber der Miner wäre dumm, da er einfach die höhere angebotene Gebühr nehmen könnte von jemand anderem. Denken Sie daran, wenn Sie eine Transaktion buchen, bieten Sie eine Gebühr an.

Wenn Sie eine Bäckerei besitzen und 1000 Brote pro Tag backen, aber 1500 Kunden haben, würden Sie sie an jemanden verkaufen, der 0,10 $ bietet, wenn andere Leute 1,00 $ und mehr anbieten.

Wenn dies der Fall ist, bedeutet dies, dass das System nicht garantiert, dass meine Transaktion bestätigt wird. Darüber hinaus schafft eine solche Gebührenpolitik einen freien Markt, auf dem die Gebühren immer steigen. Was ist in diesem Fall der Anreiz für Leute, BitCoin zu verwenden (es sei denn, er macht keine illegalen/versteckten Sachen)? Was ist die Logik hinter einer solchen Transaktionsgebührenpolitik?
"Was ist die Logik hinter einer solchen Transaktionsgebührenpolitik?" Miner müssen irgendwie bezahlt werden; Sie kaufen und betreiben teure Spezialcomputer und verbrauchen viel Strom, der viel Geld kostet. Wie würden Sie vorschlagen, dass Miner bezahlt werden, wenn nicht durch Gebühren?
@ÖnderGürcan Sie gehen davon aus, dass die Blöcke immer voll sind. An Tagen, an denen nur 500 Leute Ihren Laden betreten, können Sie für 0,10 USD an den Typ verkaufen, der es haben möchte, obwohl Sie dazu nicht verpflichtet sind. Sobald das Bitcoin-Skalierungsproblem gelöst ist, sollten die Gebühren sinken. Aber es ist unwahrscheinlich, dass sich das kurzfristig zum Besseren ändert, keine Lösung bietet kurzfristige Lösungen.
Ich verstehe. Aber gibt es Statistiken, die zeigen, wie viel es für einen Miner kostet, einen Block zu erstellen? Wir alle wissen, dass es at least25 BTC für die Blockgenerierung bekommt (das sind jetzt etwa 60000 Dollar). Ich bin nicht dagegen, dass Miner Geld verdienen sollten, aber verdienen sie ein angemessenes Geld oder verdienen sie zu viel? 1 zu 10 oder 1 zu 1 Million?
Nach der letzten Halbierung erhalten Miner 12,5 BTC pro Block. Das Erstellen von Blöcken ist ein ziemliches Schlagerthema, führt jedoch normalerweise zu mehreren tausend Dollar an Gebühren. Ich persönlich finde das übertrieben, aber sie können anderer Meinung sein. Bergleute können auch leere Blöcke abbauen (keine Transaktionen), und es könnte tatsächlich eine gute Idee sein (wenn auch aus Benutzersicht etwas böse), da Knoten dies schneller als einen 1-MB-Block weiterleiten können.

Wenn Sie nicht genug Gebühr zahlen, können Sie lange warten, bis die Transaktion abgeschlossen ist.

Ich habe gestern eine 1000€ Transaktion gemacht und die Gebühr für 100€ gegeben - es war in 3-4 Stunden erledigt und akzeptiert.

.. es gibt eine Warteschlange - wenn Ihre Gebühr 0,10 Cent beträgt und von anderen Jungs 1-2-3 Euro oder mehr.

sie werden zuerst vor dir platziert!..

Wenn Sie also Pech haben, werden alle Transaktionen vor Ihnen platziert.

Ich denke schon, weil ich seit 1 Monat Anythink für 200 Euro gekauft habe und es 2 Monate unbestätigte Transaktion war....

Ich hoffe ich kann dir helfen--

Machen Sie diesen Trick wie ich - geben Sie jedes Mal 3x mehr Gebühr als normal. und alles ist ok :)