Problem bei der Verwendung von op_checksequenceverify (op_csv) mit relativem Zeitflag

Ich habe Probleme bei der Verwendung von op_csv. Die Ausgabebedingungen entsprechen nicht meinen Erwartungen.

FINANZIERUNG

Redeem Script Hex: 03010040b27576a91451d2a5e04d25ceaa86e600a6ec34bd24431c675d88ac Redeem Script Asm: 03<010040> OP_CHECKSEQUENCEVERIFY OP_DROP OP_DUP OP_HASH160 14<51d2a5e04d25ceaa86e600a6ec34bd24431c675d> OP_EQUALVERIFY OP_CHECKSIG

P2SH-Base85-Adresse: 2NFRizqW8XpNQm7nxYvFpYTvYsy3BqgsEx2 (Bitcoin testnet3)

Basierend auf meinem erwähnten Einlösungsskript setze ich den Zeitparameter zusammen mit OP_CHECKSEQUENCEVERIFY auf 1. Jetzt ist meine Erwartung, sobald die Blockchain diesen TX bestätigt, angeblich wird der Miner meine Ausgaben TX nach 512 Sekunden akzeptieren.

Hier ist mein Finanzierungs-Tx https://testnet.smartbit.com.au/tx/318462c4f6fef6e3c4fc58e8803c1ca43f20d162ca41d5c74f9e89725d8b300d

AUSGABEN

02000000010d308b5d72899e4fc7d541ca62d1203fa41c3c80e858fcc4e3f6fef6c4628431000000008b483045022100f995ccfb8ce2bda36c4ec0f37f067ee6c87c58043155b3a583da201ffaaa4db50220794d23e402b3f0a9579ab9bb8fbb573eba8cffed27542c162b629aa0f914b10d01210292dbb331c39d84611fbaa8e225d781ec50c2ed21fbf311bfeb869042f4b3e1781f 03010040 b27576a91451d2a5e04d25ceaa86e600a6ec34bd24431c675d88ac0100400001d40c0600000000001976a91451d2a5e04d25ceaa86e600a6ec34bd24431c675d88ac00000000

Ich habe die Version dieses TX als 2 und die nsequence als 03010040 eingegeben. Jetzt warte ich darauf, dass die Blockchain meinen Finanzierungs-TX bestätigt. Nicht mehr lange, meine Finanzierungsmitteilung wurde mit dem Datum 2019-11-24T10:46:05Z bestätigt. Jetzt erwarte ich, dass 2019-11-24T10:46:05Z + 512 Sekunden = 2019-11-24 10:54:37 die Zeit ist, in der Miner meine Ausgaben-TX akzeptiert. Als Ergebnis kann ich, sobald meine Finanzierung TX bestätigt wurde, sofort ohne relative Zeitbeschränkung ausgeben. Weiß JEMAND was los ist?

Hier ist mein Ausgaben-Tx https://testnet.smartbit.com.au/tx/a68a821e06c1156d5fe80f3662c941142ed2ce1a57e597ce05bf167bce21fe2d

P/S: Ich teste weiter, indem ich den Zeitparameter im Einlösungsskript von 1 auf 4 und 5 ändere, dann entspricht das Ergebnis leicht meiner Erwartung.

Antworten (1)

Ich schaffe es, eine Antwort für mich zu finden.

Der OP_CSV-Datumskonsens basiert auf der mittleren vergangenen Zeit (mtp), nicht auf dem bestätigten Datum des Blocks.

Sobald die oben genannte Finanzierung bestätigt wurde, befindet sie sich in Block # 1609592 mit Block MTP ist 2019-11-24 09:05:26 (UTC 0). Gleichzeitig ist der MTP der Kette 2019-11-24 09:25:27 (UTC 0)

Jetzt kommen Sie zum Ausgeben von TX, da das bestätigte Datum von utxo, das ich verwendet habe, 2019-11-24 09:05:26 plus 512 Sekunden = 2019-11-24 09:13:58 ist. Daher kann ich sofort ausgeben, da der MTP der Kette mehr als 2019-11-24 09:13:58 beträgt.