Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 136C091A for ; Wed, 20 Jul 2016 04:35:44 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-wm0-f45.google.com (mail-wm0-f45.google.com [74.125.82.45]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 25691202 for ; Wed, 20 Jul 2016 04:35:43 +0000 (UTC) Received: by mail-wm0-f45.google.com with SMTP id q128so39899625wma.1 for ; Tue, 19 Jul 2016 21:35:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=z-cash.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=NP934VVbyHh8jhbaJ9sQ7mIGUhdBU7N9JJAlqf8VdQY=; b=qOC6Sd9VhYiaKi1QrzOTHt7YXQ7XUQT5+kemDrPog72MhsNfnX/UcHRW2e/2iSulVI HUO7UFa4LoApOmxO33WnN6T8VdtKSpZWWQo1TLJKnf1JivYf+Q6Qc5enQU9et5Cy5rY6 BL6s9ErQg6pirErGIVRS/W2WllIEIZDrUnEa2MmIOLIDRA6Hfm33Ua0/90GBRCsVjZ6K Of9JeCCirrDfMxHq4Qsj6/9n+bgRYNjz3zbte0M6VejVhHlMT7esin6TIAIQoiGsINcE ETnRMUyWWDvskPJYrmm9ldDvMhYDplZjhXaRnXKpnT6DzBoAkJIEejp3wY6vbgw18sDK JcZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=NP934VVbyHh8jhbaJ9sQ7mIGUhdBU7N9JJAlqf8VdQY=; b=MOgffbr7887e04oWrkuzzmuVCKU+ArigvlCoU7WJO3tDCBi6mEwIF3pv5+XVuJZYD1 658zWrmZduOxpuUnnf3Rr4jYQY/baUTV5bJOB0EEAX6zNtxWT+xC9eK55yCFnh8ScMOg T+zPvf9nQ/wfU4+pQ9CTbUdHuSiS+vqKBts6dld8y3LrurjsAGaVYm39vBa1EJGLONr9 ElTDSiUHXcIHKDWibVprHkedAMSKxncFmEsYHoiMTN+dOPhkmf/XqWPxB0F6zMl67icQ VrfGxE4SlWUkij1RZPJeZjOZE4/ZQcCFwYkX4amAtVEs3/kajewbc7DomS6LOTTjEtVM oeug== X-Gm-Message-State: ALyK8tKe9cMiLJlfad1kapdgJgdwC7MjdSmwSiljVVt4EotD4TNB8TE/DBQs59c4IxX4YTMQPlhLt6uuBQKd0g== X-Received: by 10.28.92.80 with SMTP id q77mr9216134wmb.66.1468989340395; Tue, 19 Jul 2016 21:35:40 -0700 (PDT) MIME-Version: 1.0 Received: by 10.28.63.8 with HTTP; Tue, 19 Jul 2016 21:35:39 -0700 (PDT) From: Sean Bowe Date: Tue, 19 Jul 2016 22:35:39 -0600 Message-ID: To: bitcoin-dev@lists.linuxfoundation.org Content-Type: multipart/alternative; boundary=001a1145b556d03b4d053809bbb0 X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,HTML_MESSAGE,RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org X-Mailman-Approved-At: Wed, 20 Jul 2016 04:38:13 +0000 Subject: [bitcoin-dev] BIP draft: HTLC transactions X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 20 Jul 2016 04:35:44 -0000 --001a1145b556d03b4d053809bbb0 Content-Type: text/plain; charset=UTF-8 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] OP_EQUAL OP_IF OP_ELSE [TIMEOUTOP] OP_DROP 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. Please review my draft BIP here: https://gist.github.com/ebfull/8306903041d46e4119a39442f72a3741 An implementation is being worked on here: https://github.com/bitcoin/bitcoin/pull/7601 Thanks! Sean Bowe Zcash --001a1145b556d03b4d053809bbb0 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
I'm requesting feedback for Hash Time-Locked Cont= ract (HTLC) transactions in Bitcoin.

HTLC transact= ions allow you to pay for the preimage of a hash. CSV/CLTV can be used to r= ecover your funds if the other party is not cooperative. These scripts take= the following general form:

=C2=A0 =C2=A0 [H= ASHOP] <digest> OP_EQUAL
=C2=A0 =C2=A0 OP_IF
=C2= =A0 =C2=A0 =C2=A0 =C2=A0 <seller pubkey>
=C2=A0 =C2=A0 OP_E= LSE
=C2=A0 =C2=A0 =C2=A0 =C2=A0 <num> [TIMEOUTOP] OP_DROP &= lt;buyer pubkey>
=C2=A0 =C2=A0 OP_ENDIF
=C2=A0 =C2= =A0 OP_CHECKSIG

These transactions are usefu= l 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:=C2=A0https://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 suppor= t these transactions in the wallet.


An implementation is being worke= d on here:=C2=A0ht= tps://github.com/bitcoin/bitcoin/pull/7601

Thanks!

Sean Bowe
Zcash
--001a1145b556d03b4d053809bbb0--