Verschlüsselte Nachricht mit nLockTime

Ich weiß, dass Sie das Annahmedatum einer Transaktion verzögern können, indem Sie nLockTime verwenden. Ich suche immer noch nach der einfachsten Möglichkeit, eine Transaktion mit nLockTime zu generieren, aber das ist ein anderes Thema.

Ich frage mich, ob es eine Möglichkeit gibt, diese Funktion zu verwenden, um eine Nachricht zu senden, die erst nach Ablauf der Zeit entschlüsselt wird.

Ich weiß, dass bei einem Transaktions-Broadcast mit nLockTime bereits alle Details sichtbar sind und der Betrag vom Empfänger einfach noch nicht ausgegeben werden kann. Gibt es eine Möglichkeit, die Notiz zu dieser Transaktion bis zu diesem Datum auch verschlüsselt zu machen? Kann ich Bitmessage verwenden, um dies irgendwie zu erreichen? Wie wäre es mit einer anderen Münze wie Dash oder zCash, von denen ich annehme, dass sie auch die Notiz der Transaktion für jeden außer dem Empfänger verschlüsseln [tun sie das tatsächlich, insbesondere Dash]?

Die Idee ist, eine Nachricht zu senden, die nur der Empfänger entschlüsseln kann und erst nach einem bestimmten Datum, ohne manuelles Eingreifen in der Zukunft oder irgendetwas anderes. Es wäre ideal, wenn sie diese Nachricht wie jede Transaktion nach Fälligkeit in ihrer Brieftasche erhalten, aber die Nachricht sollte weder für andere noch für den Empfänger im Voraus einsehbar sein, beispielsweise in einem Block-Explorer.

Danke

Ich glaube nicht, dass das möglich ist.

Antworten (2)

Nein. Es gibt keine Möglichkeit, etwas in einer Bitcoin-Transaktion zu verschlüsseln, da es keine Opcodes gibt, die eine Verschlüsselung oder Entschlüsselung unterstützen.

Das ist nicht relevant. Selbst wenn solche Opcodes vorhanden wären, würden sie Sie nicht (1) etwas entschlüsseln lassen, das andere nicht können, da alles in der Kette öffentlich ist, und (2) das Verhalten nach einiger Zeit ändern.

Ich glaube nicht, dass das nur mit nLockTime möglich ist. Es gibt jedoch "intelligente" Verträge, bei denen eine 2-von-2-Multisignatur verwendet wird, bei der jede Partei eine Versicherung hinterlegt, die mehr wert ist als das gemeinsame Geheimnis. Der wirtschaftliche Verlust ist größer als der Gewinn, wenn beide Parteien ihren Teil des Deals nicht einhalten.

Übrigens wäre dies mit der derzeit verwendeten Technologie ZCash tatsächlich möglich. Mit zk-SNARKS könnten Sie den Beweis generieren, dass ein Inhalt mit Schlüssel X verschlüsselt ist. In derselben zk-SNARK-Signatur könnten Sie beweisen, dass hash(X) = Y und ein wirtschaftliches Konstrukt erstellen, das nur eine Transaktion nach X zulässt wird aufgedeckt, Y erstellt und einer Partei erlaubt, ihr Geld zu bekommen.

Sehr interessant, danke. Wo finde ich solche Verträge? Sprechen Sie über Ethereum-basierte Verträge?
@Nikksno Diese Kontrakte sind auch auf Bitcoin mit OP_CLTV möglich. Im Grunde nach Block X zerstören Sie den Zugang zu allen Geldern für beide Parteien. Dies ist hauptsächlich ein ökonomisches Konstrukt, erforschen Sie das Nash-Gleichgewicht. Das beste Beispiel, das ich finden kann, ist wahrscheinlich voluntary.net/bitmarkets/whitepaper