Nach meinem besten Wissen akzeptieren derzeit "Satoshi"-Client-Relays und die meisten Pools nur Standardtransaktionen (Übertragung oder Generierung) . Außerdem arbeitet die Community am M-of-N-Transaktionstyp . Das Hinzufügen von Nicht-Standard-Transaktionen zur Blockchain ist heutzutage ziemlich problematisch.
Während das derzeitige Aktivieren beliebiger Skripte in Transaktionen aufgrund möglicher Fehler im Code (oder im Skriptsystem selbst) katastrophal sein könnte, frage ich mich, ob es geplant ist, beliebige Transaktionen irgendwann in der Zukunft zuzulassen, oder wird der größte Teil des Netzwerks immer darauf beschränkt sein einige "gute" Transaktionsvorlagen?
Die aktuelle Entwicklungsrichtung (Januar 2013) sieht vor, die IsStandard()-Prüfungen noch weiter zu verschärfen. Beispielsweise möchten wir, dass alle Signaturen einer sehr strengen, kanonischen Verschlüsselung entsprechen, um potenziellen Angreifern das Leben schwer zu machen.
Zuzulassen, dass mehr Opcodes oder Opcode-Muster (oder alle Opcodes/Muster) als IsStandard() betrachtet werden, ist sicherlich möglich; Bevor ich das tue, würde ich gerne eine gründliche Analyse der Möglichkeit von Unfug mit dem aktuellen Satz von Opcodes und viel Prototyping im Testnetzwerk sehen (wo die IsStandard()-Prüfung bereits alle aktivierten Opcodes zulässt).
Ab 2014 wurde die isStandard()
Prüfung gelockert. Sie können nun verschiedenste Skripte in Transaktionen einbinden.
Lesen Sie hier mehr: Was ist mit „entspannten Standards“ für P2SH-Einlöseskripte in Bitcoin Core 0.10.0 gemeint?
Damit das Bitcoin-Protokoll seinen Zweck erfüllen kann, muss jeder Kunde Transaktionen in derselben Angelegenheit verarbeiten. Damit eine neue Art von Transaktion eingeführt und ausgegeben werden kann, muss sie entweder den aktuellen Regeln entsprechen (z. B. mit dem Skript ausgeführt werden können ) oder (idealerweise) von jedem Client akzeptiert werden. Wenn man eine neue Transaktionsart implementieren würde, ohne dass sich die Leute daran halten, würde die Transaktion im besten Fall unbrauchbar, im schlimmsten Fall - sie würde von den Clients nicht verarbeitet.
Um eine Option zum Erstellen "beliebiger Arten von Transaktionen" einzuführen, müsste man eine neue Version des Skripts oder etwas Ähnliches erstellen. Darüber hinaus müsste dieses Skript immer noch resistent gegen böswillige Angriffe sein (z. B. keine Schleifen oder ähnliche Methoden, die dazu führen, dass viele Clients viele Rechenressourcen verlieren, die die Gültigkeit der Transaktion überprüfen).
Alles in allem wäre es möglich, mit einigen Änderungen des Protokolls ein breites Spektrum an Transaktionen zu verallgemeinern, aber diese Änderungen müssten von allen akzeptiert werden. Es ist höchst unwahrscheinlich, dass man jemals in der Lage sein wird, aus einer Laune heraus eine neue Art von Transaktion zu erstellen.
OP_DUP OP_DROP
am Anfang des Skripts die Transaktion nicht ungültig, aber derzeit senden die meisten Clients sie nicht, und die meisten Pools fügen sie nicht zum abgebauten Block hinzu.
kirian
ein Land
IsStandard
" das Einchecken des "Standard" -Clients als vorübergehend oder dauerhaft angesehen wird.kirian