Bitcoin ermöglicht es uns, Regeln festzulegen, die nicht von Menschen, sondern von der Mathematik des Netzwerks erzwungen werden. Eine dieser Regeln ist die Zeitsperre.
In unserem Familien-Setup können wir eine zusätzliche Bedingung einbauen. Das Geld ist nur verfügbar, wenn:
Bevor dieses Datum erreicht ist, wird das Bitcoin-Netzwerk jede Transaktion von dieser Adresse als ungültig ablehnen – völlig egal, wer unterschrieben hat (BIP 65: «until that block height or block time has been reached the transaction output remains unspendable»; massgebend ist der Median der Zeitstempel der letzten 11 Blöcke, der etwa eine Stunde hinter der Uhrzeit liegt, BIP 113).
Time-Locks machen das Setup extrem komplex. Wenn wir einen Fehler im "Bauplan" (Descriptor) machen und die Zeit-Bedingung falsch programmieren, könnte das Geld für immer gesperrt bleiben.
Regel: Time-Locks niemals ohne intensives Testen mit kleinsten Beträgen einsetzen!
Sparrow unterstützt das nicht. Das Feld "Absolute Locktime" beim Erstellen einer Transaktion setzt nur die Sperrzeit dieser einen Transaktion (nLockTime): Sie kann vorher nicht in einen Block, aber wer unterschreiben kann, darf dieselben Coins jederzeit mit einer anderen Transaktion ausgeben (BIP 65: «the nLockTime field can't prove that it is impossible to spend a transaction output until some time in the future»). Eine Adresse mit CLTV-Bedingung (CheckLockTimeVerify) kann Sparrow nicht erstellen – es kennt nur Single-Sig- und Multisig-Wallets (Sparrow-Quellcode). Dafür braucht es Software, die Miniscript-Descriptors mit after() unterstützt (BIP 379).