I'm requesting feedback for Hash Time-Locked Contract (HTLC) transactions in Bitcoin.
HTLC transactions allow you to pay for the preimage of a hash. CSV/CLTV can be used to recover your funds if the other party is not cooperative. These scripts take the following general form:
[HASHOP] <digest> OP_EQUAL
OP_IF
<seller pubkey>
OP_ELSE
<num> [TIMEOUTOP] OP_DROP <buyer pubkey>
OP_ENDIF
OP_CHECKSIG
These transactions are useful for both the Lightning network and in zero-knowledge contingent payments. This very script (using CLTV and SHA256) was used as part of our "pay-to-sudoku" ZKCP demo earlier this year:
https://github.com/zcash/pay-to-sudoku
Members of the community have expressed the desire for a BIP to submitted in coordination with changes to Bitcoin Core that support these transactions in the wallet.
Thanks!
Sean Bowe
Zcash