Ist jeder Sat gleich?

Nicht wirklich. Naiv wie ich bin, lese ich, dass Ordinals an einen bestimmten Sat angehangen werden. Also wäre es doch dumm, 1274 Sats zu verschicken, in dem nur einer das Ordinal trägt. Ergo, wenn ich das Ordinal verschicken möchte, verschicke ich genau den einen Sat mit dem Ordinal. Nichts anderes. So gehen die angehangenen Infos bzw. das „angehangene NFT“ nicht verloren.

Witziger Thread hier, ich versuche mal, auf ein paar Punkte einzugehen, da anscheinend nicht jeder hier genau weiß, wie Ordinals funktionieren.

Wenn ich von einer kanonischen Zählweise spreche, meine ich so unkontroverse Entscheidungen wie: Man zählt den ersten Input zuerst.

Jetzt kann natürlich ein @mapleloopsong daherkommen und sagen: Wer sagt denn, dass das so sein muss, ich will, dass der letzte Input zuerst gezählt wird!

Darauf kann ich dir nur die typische Bitcoin-Antwort geben: Kannst du machen, aber dann werden die anderen Kinder halt nicht mit dir spielen.

Das wäre in der Tat nicht wünschenswert, und so ist es auch nicht. Es werden keine UTXOs nummeriert, sondern Sats, und zwar chronologisch nach Entstehung. Die Sats, die gleichzeitig entstanden sind, sitzen natürlich erst mal im gleichen UTXO, und man kann darüber nur sagen: In dem UTXO sind die Sats mit den Nummern X bis Z.

Wenn der UTXO durch eine Transaktion auf z.B. zwei weitere UTXOs (A und B) aufgeteilt wird, kann man sagen: Im UTXO A sind jetzt die Sats mit den Nummern X bis Y, und in UTXO B sind die Sats mit den Nummern Y bis Z.

Diese Zuordnung geschieht so natürlich, wie man es sich nur vorstellen kann, deshalb hab ich sie vorher auch „kanonisch“ genannt: In einer Transaktion stehen Inputs und Outputs, und ich befülle die Outputs in genau der Reihenfolge, in der sie in der Transaktion stehen, mit den Sats aus den Inputs in genau der Reihenfolge, in der sie in der Transaktion stehen.

„Bitcoin-Ebene“ hat keine so klare Bedeutung, wie du es darstellst, es gibt nur eine Blockchain und Software, die den Daten in dieser Blockchain eine bestimmte Bedeutung zuschreibt.

Wenn die Software „Core“ heißt, produziert sie aus den Blockchaindaten das Fantasieprodukt „UTXO“, das einen gewissen „Wert“ haben kann. Wenn die Software „Ord“ heißt, produziert sie aus den Blockchaindaten das Fantasieprodukt „nummerierte Satoshis“, die „Inscriptions“ haben können.

Solange diese Software nicht von irgendwo außerhalb der Bitcoin-Blockchain Daten reinholt, ist es gewagt zu behaupten, dass sie nicht Teil von Bitcoin ist.

Was stört dich daran, dass der eine Satoshi mit Nummer XY, an dem die Inscription hängt, erst durch weitere Transaktionen von seinen Brüdern getrennt wird? Die Nummer ist doch von vornherein konkret gegeben, und du kannst zu jedem Zeitpunkt sagen, in welchem UTXO die Nummer gerade ist.

Keineswegs, Inscriptions werden sehr oft in UTXOs gehalten, die genug BTC beinhalten, dass noch ein paar weiterer Transfers möglich sind. Außerdem muss das dust limit berücksichtigt werden, damit Nodes die Transaktion nicht verwerfen.


Ich denke, eines der Hauptprobleme hier scheint zu sein, dass die Definition von „Satoshi“ nicht klar ist.

Ord definiert Satoshis als ein Nummerierungsschema, das sich aus den Blockchaindaten so ziemlich von selbst ergibt. Warum auch nicht, kann man machen. Und wenn man mit dieser Definition sagt „diese Inscription hat Satoshi-Nummer soundso“, hat das nun mal eine Bedeutung.

Zu behaupten „es gibt keine bestimmten Sats“ ist das Gleiche wie zu behaupten „es gibt das Ord-Nummerierungsschema nicht“. Das kann man auch machen, dann gibt es diesen Teil von Bitcoin für denjenigen halt nicht.

Ich würde jedem, der so denkt, aber mal empfehlen, sich zu überlegen, was seine Definition von „Satoshi“ eigentlich ist – also was der Satz „in diesem UTXO sind x Satoshis“ überhaupt bedeutet (und bitte keine Zirkeldefinitionen mit BTC).

Spoiler: Alle sinnvollen Definitionen werden darauf hinauslaufen, einen Transaktionsbaum durch alle Abzweigungen hindurch bis zu den jeweiligen coin bases zurückzuverfolgen. Alles, was Ord macht, ist, bei dieser Rückverfolgung bei jeder Abzweigung einen konkreten Weg vorzugeben, und zwar auf eine Art und Weise, die so natürlich ist, dass niemand jemals erfolgreich ein konkurrierendes Sat-Nummerierungsschema etablieren wird (löscht meinen Account, wenn ich falsch liege).

4 „Gefällt mir“

Ich sags mal so:
Alle Ordinals Transaktionen sind Bitcoin Transaktionen.
Nicht alle Bitcoin Transaktionen sind Ordinals Transaktionen.

Und wenn jemand sagt der NFT wäre an einen „sat“ gebunden, dann geh ich davon aus dass er damit einen „sat“ meint, so wie wir ihn von Bitcoin kennen. Und das geht nicht, da man den nicht identifizieren kann, auf der „bitcoin ebene“.
Wenn Ordinals jetzt eine neue definition von „sat“ ausdenkt, die nichts mit einem satoshi zu tun hat. (also auf der blockchain garnicht als solche sichtbar sind nach bitcoin lesart, sondern über irgendwelche andern eigenschaften von einer bitcoin transaktion definiert sind) dann sollten die das anders nennen. Von mir aus „ords“.

Ich wollte eigentlich überhaupt nicht über Ordinals diskutieren, sondern dem TE antworten. :sweat_smile:

Aber danke für deine Erklärung! Dann kenne ich jetzt zumindest die grobe Grundidee.

Ich habe allerdings weiterhin ein Problem damit, den Ordinals Ansatz auf andere Eigenschaften von UTXOs zu übertragen (z.B. Betrag oder Produktionsform der Miningenergie). Und zwar weil man nur UTXOs identifizieren kann, nicht aber „einzelne Satoshis“, so dass die Eigenschaft durch Transaktionen verwässert.

Für die Ordinals wird eine natürliche und eindeutige Festlegung getroffen, wie Satoshi-Bereiche in einer Transaktion nummeriert werden, um eine Inscription zuzuordnen. Das ist zweckmäßig und funktioniert sicher einwandfrei, warum auch nicht.
Im Endeffekt werden aber keine Satohis nummeriert, sondern es wird eine Regel vorgegeben, nach welcher der UTXO eindeutig identifiziert wird, an dem die Inscription aktuell hängt.

So ist es.

Da würde ich widersprechen.

Für mich ist ein Satoshi nichts weiter als eine Einheit, in welcher der Nominalwert eines UTXOs angegeben wird. So wie wenn du z.B. Gewicht oder Volumen misst.

Betrachten wir beispielsweise Wasser mal als kontinuierliches Fluid ohne unterscheidbare Teilchen als Bestandteile. Du kippst bei einer Transaktion mehrere Behälter Wasser unterschiedlichen Volumens zusammen und füllst sie anschließend in neue Behälter anderer Größe um. Dann kannst du natürlich festlegen, dass sich eine enthaltene Inscription in demjenigen neuen Behälter befinden soll, in den der 500. Milliliter eingegossen wird.

Dann hängt aber die Inscription von da an trotzdem wieder an einem eindeutigen Behälter, nicht an einem bestimmten Milliliter, da das ja nur eine Einheit ist. Es macht keinen Sinn in einem Behälter mit 1 Liter Wasser einen bestimmten Teil des Wassers mit der Angabe „500. Milliliter“ zu identifizieren.

Da bin ich voll bei dir. Es geht aber eben wie du sagst um die Abzweigungen in neue Wasserbehälter, also UTXOs.

5 „Gefällt mir“

Danke für die Denkanstöße, @mowtan

Ich hatte bisher die Vorstellung, dass jede Inscription an einem bestimmten Sat hängt. Soll dieser Sat inkl. seiner Inscription jemand anderem ausgehändigt werden, muss dieser mit weiteren Sats für die Gebühr verschickt werden. So habe ich mir erklärt, warum Ordinals besondere Wallets brauchen, die unter anderem Coin Control ermöglichen.

Was sich mir bei Deiner Erklärung nicht erschließt, ist, warum BTC für weitere Transfers vorgehalten werden müssen. Kann nicht einfach ein weiterer Input aus der Wallet dazu genommen werden, um die Transaktionsgebühren zu bezahlen? (Ließe sich damit nicht auch das Dust Limit umgehen?)

Mir kam auch noch die Frage, ob Inscriptions wieder gelöscht werden können? Falls nicht, würde Bitcoin doch irgend wann sowohl als Geld wie auch für Ordinals unbrauchbar werden. Oder?

Inscriptions sind ja nur eine interpretation einer utxo durch die Ordinals Software.
Für Bitcoin ist da nix vorhanden ausser einer utxo.
genau darum ja auch dass du einen speziellen client brauchst, weil bitcoin die ordinals regeln ignoriert.

1 „Gefällt mir“

Das kann man so nicht sagen – jede Transaktion ändert, welche Satoshi-Nummern in welchen UTXOs liegen, und ist damit eine Ordinals-Transaktion.

Du redest hier oft von „NFTs“ – das ist ein Konzept, das weder Ord noch Core kennt. Wenn du Inscriptions meinst: Stimmt, nicht jede Transaktion erzeugt oder bewegt eine Inscription, aber in diesem Thread geht es ja nicht um Inscriptions, sondern um die Unterscheidbarkeit von Sats.

Eine Verwässerung findet nur für diejenigen statt, die nicht an Ord interessiert sind. Für alle, die so wie @Leon4747 UTXOs Eigenschaften zuschreiben wollen, die nicht verwässern, ist es möglich, solche Eigenschaften mit Ord zu tracken.

Man sagt doch immer so: Wenn du willst, dass Bitcoin irgendwas Neues macht, schreib Software und bring genug Leute dazu, sie zu verwenden. Ord ist so eine Software, und wenn genug Leute sie verwenden, um solche nicht-verwässernde Eigenschaften von UTXOs zu tracken, kann man nur schwer sagen, dass diese Eigenschaften nicht existieren.

Ich muss dem „um eine Inscription zuzuordnen“ widersprechen. Inscriptions sind ein Anwendung von Ordinals, aber nicht der Zweck. Eine andere Anwendung könnte etwa der Vorschlag des Threaderstellers sein.

Vergiss Inscriptions, es wird eine Regel vorgegeben, die alle Satoshi-Nummern identifiziert, die sich in einem UTXO befinden, egal, ob diese Nummern Inscriptions oder – wie @Leon4747 vorschlägt – einen gewissen Energieaufwand repräsentieren.

Wie wär’s mit einem evtl. treffenderen Beispiel als Wasser: RIPE bekommt von IANA eine große range von IP-Adressen zugewiesen, RIPE gibt eine kleinere an einen ISP weiter, der ISP gibt eine kleinere an einen Hoster weiter, der aber auch noch eine andere range von einem anderen ISP gekauft hat. Irgendwie hat der Hoster da jetzt z.B. auch die IP 45.157.176.190 dabei.

Jetzt sagst du doch auch nicht: Solange diese IP keinem Server zugewiesen wurde, gibt es sie gar nicht, sondern es gibt nur Regeln, die sagen, in welcher range sie sich befindet und wem die range gehört. Oder vielleicht sagst du das und hättest damit sogar irgendwie recht, aber es ist nur schwer zu argumentieren, dass andere Leute, die behaupten, dieser Hoster „besitzt die IP 45.157.176.190“, nicht auch recht haben.

Und wenn der Hoster sagt, die IP 45.157.176.190 hat ihn x Euro gekostet, wohingegen die IP 40.89.244.232 nur y Euro gekostet hat, weil sie in der range vom anderen ISP war, der günstiger anbietet, wirst du wohl auch nicht sagen: Weil man IPs nicht unterscheiden kann, ist die Preiseigenschaft jetzt verwässert, und man kann nur noch von einem Durchschnittspreis sprechen.

Ich behaupte nichts anderes, aber praktisch ist das das Gleiche wie eine Nummerierung, solange die Pfade eindeutig rückverfolgbar sind. Sobald ein Satoshi einzeln auftritt, hat er eine eindeutige Nummer, und du kannst auch jederzeit einen Satoshi mit einer bestimmten Nummer aus einer Range herauslösen. Eine Nummerierung für nicht-physische Sachen ist immer eine Abstraktion.

Müssen ja nicht, das ist nur, wie es die Referenzimplementierung anfangs gemacht hat.

Und jede Node entscheidet selbst, welche Transaktionen sie weiterleiten will, es gibt kein Konsens-Dustlimit. Wenn du es schaffst, deine Transaktion mit 1 BTC Input und 1 Sat Output zu einem Miner zu bringen, wird er sie minen.

Nein, du kannst natürlich nichts aus der Blockchain löschen, aber du kannst sicherstellen, dass niemand die Inscription besitzen kann, indem du den entsprechenden Sat verbrennst. Und keine Ahnung, was du damit meinst, dass Bitcoin dann unbrauchbar wird.

1 „Gefällt mir“

Ja, natürlich könnte man das machen. Man muss aber nicht alles tun was man kann. Hört sich vielleicht blöd an, aber genau darauf will ich hinaus. :smiley:

Was würde denn passieren wenn man sich darauf einigt, die Mining-Energie sowie alle möglichen anderen Eigenschaften per Ordinals den UTXOs („Satohis“) zuzuordnen, so dass diese weiterhin nachverfolgbar bleiben und nicht verwässern?

Mit dieser künstlichen Festlegung hätte man auf allen Marktplätzen und selbst beim Bezahlen mit Bitcoin das Problem, dass die Kaufkraft einzelner Coins plötzlich nicht mehr proportional zu ihrem Nominalwert wäre. Börsen wie heute wären damit praktisch obsolet. Viel mehr würden die Marktplätze NFT Plattformen entsprechen, da Bitcoin eben nicht mehr fungibel wäre.

Zum Glück ist diese Zuordnung von Eigenschaften zu UTXOs wenigstens nicht Bitcoin-inhärent, sondern künstlich aufgesetzt. Trotzdem kann man sich natürlich nicht dagegen wehren, dass außerhalb des Bitcoin-Protokolls so etwas passiert; siehe Inscriptions. D.h. selbst wenn mich das alles null interessiert muss ich damit leben, dass ein UTXO mit Inscription nachher mehr wert ist.

Meiner Meinung nach wäre es sogar der Anfang von Bitcoins Ende als Geld, wenn man sich in der breiten Masse der User auf UTXO-Zuordnungen wie Energie, kriminelle Historie etc. per Ordinals einigen würde. Geld muss fungibel sein. Vielleicht behalten die Monero-Anhänger mit ihrem Hautpvorwurf ggü. Bitcoin ja am Ende doch recht.

Das Beispiel ist in meinen Augen keinesfalls treffender als Wasser. Alle möglichen IP Adressen sind (eben durch die Adresse) eindeutig unterscheid- und referenzierbar.

Mir ging es doch eben genau darum, dass man die Teilvolumina eines idealisierten kontinuierlichen Fluids eben nicht mehr unterscheiden kann. Genauso wie man Teilwerte eines UTXOs nicht weiter unterscheiden kann; es ist doch einfach nur eine Zahl. :sweat_smile:

3 „Gefällt mir“

Ich denke, ich sehe hier das meiste so wie du: Man kann Sat-Eigenschaften tracken, aber man muss nicht. Wenn man es will, steht mit Ord ein etablierter Standard zur Verfügung, das zu tun. Breitere Anwendungsfälle als rare sats und inscriptions sind kritisch zu betrachten, weil die Fungibilität darunter leiden kann.

Man kann aber auch niemanden davon abhalten, Ord-basiertes Tracking von Sat-Eigenschaften für Akzeptanz-Zwecke zu verwenden, und es ist vielleicht nützlich, sich zu überlegen, wie das ausschauen könnte und was die Folgen sein könnten:

Es würde nicht so funktionieren (wie auch ohne Ord möglich), dass UTXOs, die unerwünschte Sats enthalten, gar nicht angenommen werden. Das wäre schwierig, wenn diese weit genug verbreitet sind.

Es würde auch nicht so funktionieren (wie auch ohne Ord möglich), dass sich die Sats in einem UTXO vermischen und deren Eigenschaften verwässert werden, so wie du das hier im Wesentlichen beschreibst, und dann z.B. solche UTXOs nicht angenommen werden, die mehr als 10% unerwünschte Eigenschaften enthalten. Das wäre nicht effektiv, wenn diese genug verwässert werden.

Echtes Ord-Tracking würde so funktionieren, dass jeder grundsätzlich alle UTXOs akzeptiert, aber daraus jeweils nur die erwünschten Sats. Das heißt, dass Transaktionen von UTXOs mit unerwünschten Sats teurer werden, weil ich für jede unerwünschte Sat-Range zwei weitere Outputs brauche. Außerdem heißt das, dass das Gegenteil von Verwässerung passiert, nämlich werden bei allen Transaktionen an einen Empfänger, der so ein Akzeptanzschema anwendet, die erwünschten von den unerwünschten Sats getrennt.

Wenn solche Akzeptanzstandards reguliert werden, würden regulierte Exchanges bei einem Deposit z.B. nur noch die guten Sats gutschreiben und die schlechten aussortieren. Es wäre dann im Interesse aller Anwender, selber auch Walletsoftware zu verwenden, die das Akzeptanzschema umsetzt, damit man den echten Wert der eigenen Sats kennt.

Haha, das hab ich mir gedacht, dass du das IP-Beispiel nicht direkt gut finden wirst, aber sieh es mal so:

Wenn man sich einen UTXO anschaut, sieht man ihm nicht an, dass er einzelne unterscheidbare Sats bzw. Sat-Ranges beinhaltet, damit hast du recht. Das ist aber nur deshalb so, weil ein UTXO eine ganz bestimmte Abstraktion der Blockchaindaten ist, die Node-Implementierungen vornehmen, um ihrer Aufgabe effizienter nachkommen zu können.

Auf die Gefahr hin, wie ein Satoshi-Visionist zu klingen: Im Whitepaper ist (wie hier schon mal erwähnt) ein „Coin“ noch eine Kette kryptografischer Signaturen, und statt diese Ketten auf die stark verlustbehaftete Abstraktion „UTXOs“ zu reduzieren, kann man natürlich auch weniger verlustbehaftete Abstraktionen betrachten, etwa Ords Sat-Index.

Wenn du also jetzt sagst: Wasser ist ein besseres Beispiel als IP-Adressen, weil ein UTXO eher ein Behälter voll ununterscheidbarar Wassermoleküle ist als eine Sammlung klar unterscheidbarer IP-Ranges.

… dann muss ich dir insofern recht geben, dass das wirklich ein besserer Vergleich für UTXOs ist, aber ich rede nicht über UTXOs, sondern über Bitcoin.

Mit einem anderen Anwendungsfall vor Augen als der reinen Konsensregelüberprüfung von Transaktionen sind andere Abstraktionen nützlicher, in denen man eben nicht die meiste Information der Coins (also der Ketten) wegwirft. Dann sind die Objekte, die man aus den Blockchaindaten abstrahiert, nicht UTXOs, sondern etwa Sat-Ranges, die viel mehr Eigenschaften mit IP-Ranges teilen als mit „Teilvolumina eines idealisierten kontinuierlichen Fluids“.

Du sagst praktisch: Eine Nummerierung von Sats ist zwangsläufig „künstlich aufgesetzt“ auf Bitcoin, weil UTXOs nur einen Nominalwert ohne weitere Unterscheidungsmöglichkeit haben.

Ich sage: UTXOs sind nur eine bestimmte Abstraktion von Bitcoin für einen bestimmten Anwendungsfall. Es gibt andere Abstraktionen, in denen Bitcoins intrinsisches Nummerierungsschema besser zum Vorschein kommt.

2 „Gefällt mir“

Das kann natürlich gut sein. Bei wachsender Anzahl getrackter Eigenschaften würde das vermutlich im Chaos enden, da jedem Satoshi irgendwann mehrere Eigenschaften zugeordnet wären.

Ein total krankes Filter-Chaos. Beim Aussieben würden die UTXOs förmlich zerrissen. Ich will darüber gar nicht weiter nachdenken. :face_with_spiral_eyes:

Fair enough.

Auch wenn man diese Gedanken berücksichtigt, liegt die „Wahrheit“ wahrscheinlich immer noch irgendwo dazwischen.

Wir könnten uns auf den Begriff Sat-Ranges einigen, den ich so ähnlich glaube ich auch schon weiter oben verwendet habe. Und ja, diese kann man bis zur kleinsten Einheit herunterbrechen.

Trotzdem sind schon in der Coinbase Transaktion die Satoshis innerhalb der UTXOs nicht ohne beliebige zusätzliche Vereinbarung unterscheidbar. Deshalb gefällt mir das IP Beispiel immer noch nicht.

Dir gefällt das IP-Beispiel, da es das Herunterbrechen in kleinere Einheiten veranschaulicht und nicht nur den informationsverlustbehafteten Endzustand betrachtet. Einer kleinen Range sieht man immer noch genau an, wo sie herkommt.
Allerdings war und ist eine einzelne Adresse zu jeder Zeit identifizierbar und unterscheidbar, was eben nicht zur Blockchain-Realität passt.

Wenn du bei meinem Wasser-Beispiel die Transaktionen (Umfüllen) sauber dokumentierst, entspricht das aber doch genau der Realität. Auch dort könntest du das Ordinals Schema anwenden, obwohl das Fluid nicht weiter unterscheidbar ist.

Aber ich glaube wir (zumindest ich) haben alles gesagt. Du verstehst meinen Punkt und ich deinen. :slightly_smiling_face:

Wenn du mir sagen würdest, du wärst Satoshi, ich würde es dir glauben. :smile:

3 „Gefällt mir“

Ganz ehrlich Leute, ich feier die Diskussion und den hier herrschenden respektvollen Austausch von Ideen und Gedanken gerade richtig, vielen Dank!

3 „Gefällt mir“

Wenn du mit „hier“ diesen Thread meinst: danke! Wenn du das ganze Forum meinst, solltest du dich mal lieber nicht in die zahlreichen politischeren Threads verirren.

Wundert mich eigentlich, dass es hier doch relativ technisch geblieben ist, obwohl du das Wort „Energieverbrauch“ im Anfangspost hattest.

2 „Gefällt mir“