fb9313250c208b3a3eb687df047c298aac2a51
1 Return-Path: <roconnor@blockstream.io> 2 Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org 3 [172.17.192.35]) 4 by mail.linuxfoundation.org (Postfix) with ESMTPS id B84DE259 5 for <bitcoin-dev@lists.linuxfoundation.org>; 6 Wed, 2 Nov 2016 17:30:35 +0000 (UTC) 7 X-Greylist: whitelisted by SQLgrey-1.7.6 8 Received: from mail-qk0-f182.google.com (mail-qk0-f182.google.com 9 [209.85.220.182]) 10 by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 9584B171 11 for <bitcoin-dev@lists.linuxfoundation.org>; 12 Wed, 2 Nov 2016 17:30:34 +0000 (UTC) 13 Received: by mail-qk0-f182.google.com with SMTP id o68so26704614qkf.3 14 for <bitcoin-dev@lists.linuxfoundation.org>; 15 Wed, 02 Nov 2016 10:30:34 -0700 (PDT) 16 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; 17 d=blockstream-io.20150623.gappssmtp.com; s=20150623; 18 h=mime-version:from:date:message-id:subject:to; 19 bh=rSIY8lPGhWH8DsGt5Vpe7OtTzMedluSUFrGfDl6StqM=; 20 b=IcpWGWMNEMaPLXitu9FeHh9XNzvZkK8Gw7PcR/Ik5PUkw4fyDNUMZhUCZFcL5bv3L+ 21 tZ6QZNJ7kkzgpq/FLIhxaD38sZnzci1Z1VEblC0KX/iTc/F844ruauHqZ+OsA2qsq+KW 22 p7xenQ9Al/Jjn/uRXTue7eQHyvGo1gm/x8zUb0OolpdPSVwTcxF7eASiTSjBnxnR6iQQ 23 EYAWin3FmVATOd2M5xkmJGWmAqZIVS4zePWEejx+yi8aAYl9xY0EBDkrq0wL8DujZOBO 24 pRZOf+lhqKb3diAKAF/236DTQG99xNA376ia6/5AlTXXJgr2RjM7MrQnD5EWBnSuq1HX 25 VyOw== 26 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; 27 d=1e100.net; s=20130820; 28 h=x-gm-message-state:mime-version:from:date:message-id:subject:to; 29 bh=rSIY8lPGhWH8DsGt5Vpe7OtTzMedluSUFrGfDl6StqM=; 30 b=NDSu0ixa25AoJXkMbjB8tFFw35egpXeTxEVGR41uJZG3y029pqFeVwfBfOgD3AEU/h 31 oaeSvM2Uk2gcasJTcnwNWB/zr/9KDVzBF6A1qe+u+2XWpI1c0IqOICe2wjndjbDcl5sC 32 qCufZJObwYZiW0FV4Zp3apJNYebZjeBGZeW63b2rBJ+Ov5gEnn4KntX+Qx94c/Wlut4U 33 cqFG2SEVKpMD6Pooz74y+OAh0uAgdTiNf8oAIkGEwoGzmnxkwO8Chzic8OY0L4F2ywN8 34 MOWN6fy6lXoEP5b7fWBxgQ+AOCqLbvoXz8DsctvP361vMCTTiDQoTW+l9lRRFvfXtXzX 35 FE/Q== 36 X-Gm-Message-State: ABUngvd4BQlGTgCer0Aqb6KcXzXcL1+OFTALlGMIJ+g1tw9UZQK6iYt64A4AHBlrGFi2KwCZM/iF8bdFkpfmuVfg 37 X-Received: by 10.55.221.29 with SMTP id n29mr4809540qki.114.1478107833531; 38 Wed, 02 Nov 2016 10:30:33 -0700 (PDT) 39 MIME-Version: 1.0 40 Received: by 10.12.164.195 with HTTP; Wed, 2 Nov 2016 10:30:12 -0700 (PDT) 41 From: "Russell O'Connor" <roconnor@blockstream.io> 42 Date: Wed, 2 Nov 2016 13:30:12 -0400 43 Message-ID: <CAMZUoKkG0AqwsTE=opTcsD=xqWsoVxqPVCzFbcSz8zJT1wiFPg@mail.gmail.com> 44 To: Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org> 45 Content-Type: multipart/alternative; boundary=001a1149d3a45bab54054054ccd9 46 X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, 47 DKIM_VALID, HTML_MESSAGE, RCVD_IN_DNSWL_NONE, 48 RCVD_IN_SORBS_SPAM autolearn=no version=3.3.1 49 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on 50 smtp1.linux-foundation.org 51 X-Mailman-Approved-At: Thu, 03 Nov 2016 01:32:21 +0000 52 Subject: [bitcoin-dev] Implementing Covenants with OP_CHECKSIGFROMSTACKVERIFY 53 X-BeenThere: bitcoin-dev@lists.linuxfoundation.org 54 X-Mailman-Version: 2.1.12 55 Precedence: list 56 List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org> 57 List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>, 58 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe> 59 List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/> 60 List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org> 61 List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help> 62 List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>, 63 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe> 64 X-List-Received-Date: Wed, 02 Nov 2016 17:30:35 -0000 65 66 --001a1149d3a45bab54054054ccd9 67 Content-Type: text/plain; charset=UTF-8 68 69 Hi all, 70 71 It is possible to implement covenants using two script extensions: OP_CAT 72 and OP_CHECKSIGFROMSTACKVERIFY. Both of these op codes are already 73 available in the Elements Alpha sidechain, so it is possible to construct 74 covenants in Elements Alpha today. I have detailed how the construction 75 works in a blog post at < 76 https://blockstream.com/2016/11/02/covenants-in-elements-alpha.html>. As 77 an example, I've constructed scripts for the Moeser-Eyal-Sirer vault. 78 79 I'm interested in collecting and implementing other useful covenants, so if 80 people have ideas, please post them. 81 82 If there are any questions, I'd be happy to answer. 83 84 -- 85 Russell O'Connor 86 87 --001a1149d3a45bab54054054ccd9 88 Content-Type: text/html; charset=UTF-8 89 Content-Transfer-Encoding: quoted-printable 90 91 <div dir=3D"ltr">Hi all,<br><br>It is possible to implement covenants using= 92 two script extensions: OP_CAT and OP_CHECKSIGFROMSTACKVERIFY.=C2=A0 Both o= 93 f these op codes are already available in the Elements Alpha sidechain, so = 94 it is possible to construct covenants in Elements Alpha today.=C2=A0 I have= 95 detailed how the construction works in a blog post at <<a href=3D"https= 96 ://blockstream.com/2016/11/02/covenants-in-elements-alpha.html">https://blo= 97 ckstream.com/2016/11/02/covenants-in-elements-alpha.html</a>>.=C2=A0 As = 98 an example, I've constructed scripts for the Moeser-Eyal-Sirer vault.<b= 99 r><br>I'm interested in collecting and implementing other useful covena= 100 nts, so if people have ideas, please post them.<br><br>If there are any que= 101 stions, I'd be happy to answer.=C2=A0 <br><br>-- <br>Russell O'Conn= 102 or<br></div> 103 104 --001a1149d3a45bab54054054ccd9-- 105