Return-Path: <bram@chia.net> Received: from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by lists.linuxfoundation.org (Postfix) with ESMTP id D7338C002C for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 11 Apr 2022 00:30:45 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id BE343415FD for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 11 Apr 2022 00:30:45 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -2.099 X-Spam-Level: X-Spam-Status: No, score=-2.099 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Authentication-Results: smtp4.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=chia.net Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 469uzyAvQvF5 for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 11 Apr 2022 00:30:43 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com [IPv6:2a00:1450:4864:20::22c]) by smtp4.osuosl.org (Postfix) with ESMTPS id 50806415FC for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 11 Apr 2022 00:30:43 +0000 (UTC) Received: by mail-lj1-x22c.google.com with SMTP id 15so3382418ljw.8 for <bitcoin-dev@lists.linuxfoundation.org>; Sun, 10 Apr 2022 17:30:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chia.net; s=google; h=mime-version:from:date:message-id:subject:to; bh=iToDVkLgIiDfYzOShOOkQkvD4prJ7F3L/V1QH790V9o=; b=ElrUkzp1q5EX46hpj9igw495+FNYmw2WN46WIkeEBwDCEZ/6EDNy7xKh79KqblTCW4 YPvnyR47IEL1LUeQ4qKDNTX5rLJip+BwQbbIgkpYk3McjIaQpmkP5yTLpEbL0CUzzBCb 0e54f0rpxJd3M0lrOuS2pXiDJOMpSpciW4KsLcJ2gkLlxzPCJbTLOTYw8nwCj5eKSHJH eV/Czl6VBLNRi9sIrMEyemcj+4zWw1VMF6sIWtOtA2ZQpFcNyEAIVC6advCraDIhQMNy g6TKx0h6dGi9Bwz4cOZ1Jc0el5tDksm17gBjy6gDv5uM89ZlTKS7RFUd5a0ePD4HOdry pKbg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=iToDVkLgIiDfYzOShOOkQkvD4prJ7F3L/V1QH790V9o=; b=ufZZhDge7ub8Yoyehz5Y/+23fGVdYElBoh2DRXD5h2d4C5J+i8Mz8RF514CJg4nIjk bPASuLqLOjoMQwWc8v5O2ly+qBrQbdImeCKCwNIGMKLSBvrM6g+hlh0C8pUujv1VWf+N V5NYJ70m3ySHNxRagmgLsqlu8W7NlslKa7krammK3VRxdMCEKuwWhHNtkhGgiq1kTupo UAh3bRcrbS1pXtt+PtHOjYWL7T4+39m1v+KGNMY3yHy475N9rbvi5Zj15nmD45d/fwuQ DSC1VeGNJrbiRRWDoIanLgfJ0au6SbEC60KyOuJEglKT3Pq+eOZ+6oWAhWlal0DmxYuR 1CqQ== X-Gm-Message-State: AOAM531R77O+1WaSZKgJH2kgRa5sauuS17qD0oKANB1auBSaYcmPK85B WDMUsGqpv8tUHXjmWyNOFF9AA4TpoilpAzGto/92a66iq4afSg== X-Google-Smtp-Source: ABdhPJyoeAyGhRomrXhY367IWXvhCoslkV6aVDyW2HhS79nfiLBdyPGJKACd/ILzdZ5pJ1YVyITnP3hG24Qt5QGow64= X-Received: by 2002:a2e:86c4:0:b0:24b:54a2:cde with SMTP id n4-20020a2e86c4000000b0024b54a20cdemr7307007ljj.190.1649637040852; Sun, 10 Apr 2022 17:30:40 -0700 (PDT) MIME-Version: 1.0 From: Bram Cohen <bram@chia.net> Date: Sun, 10 Apr 2022 17:30:29 -0700 Message-ID: <CAHUJnBCwkVA1etjBDLDCcfCJvVfKePzNCO0NYt=qMT8HL4PxJw@mail.gmail.com> To: Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org> Content-Type: multipart/alternative; boundary="000000000000d421e405dc560dbf" X-Mailman-Approved-At: Mon, 11 Apr 2022 01:09:38 +0000 Subject: Re: [bitcoin-dev] Taro: A Taproot Asset Representation Overlay X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org> List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>, <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe> List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/> List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org> List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help> List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>, <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe> X-List-Received-Date: Mon, 11 Apr 2022 00:30:46 -0000 --000000000000d421e405dc560dbf Content-Type: text/plain; charset="UTF-8" From: Olaoluwa Osuntokun <laolu32@gmail.com> > > > Furthermore, the Taro script is not enforced by Bitcoin, meaning those > who > > control the Bitcoin script can always choose to ignore the Taro script > and > > destroy the Taro assets as a result. > > This is correct, as a result in most contexts, an incentive exists for the > holder of an asset to observe the Taro validation rules as otherwise, their > assets are burnt in the process from the PoV of asset verifiers. In the > single > party case things are pretty straight forward, but more care needs to be > taken > in cases where one attempts to express partial application and permits > anyone > to spend a UTXO in question. > > By strongly binding all assets to Bitcoin UTXOs, we resolve issues related > to > double spending or duplicate assets, but needs to mind the fact that assets > can > be burnt if a user doesn't supply a valid witness. There're likely ways to > get > around this by lessening the binding to Bitcoin UTXO's, but then the system > would need to be able to collect, retain and order all the set of possible > spends, essentially requiring a parallel network. The core of the system as > it > stands today is pretty simple (which was an explicit design goal to avoid > getting forever distracted by the large design space), with a minimal > implementation being relatively compact given all the Bitcoin > context/design > re-use. > The TARO set of tradeoffs is fairly coherent but is subject to certain limitations (modulo my understanding of it being off): The witnesses for transactions need to be put into Bitcoin transactions even though the Bitcoin layer doesn't understand them There needs to be a constraint on Taro transactions which is understood by the Bitcoin layer (which often/usually happens naturally because there's a user signature but sometimes doesn't. It's a limitation) Multiple Taro coins can't consolidate their value into a single output because they only support a single linear history Taro issuance is limited to a single event rather than potentially multiple events over time subject to special per-asset rules. This seems like a fairly logical approach (although my understanding of the limitations/tradeoffs could be wrong, especially with regards to consolidation). There's nothing wrong with a system having well documented limitations, but I am puzzled by the announcement saying Taro assets are 'analogous with' colored coins. Taro assets are straightforwardly and unambiguously colored coins and that isn't something to be ashamed of. --000000000000d421e405dc560dbf Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div dir=3D"ltr">From: Olaoluwa Osuntokun <<a href=3D"m= ailto:laolu32@gmail.com" target=3D"_blank">laolu32@gmail.com</a>><br></d= iv><div class=3D"gmail_quote"><div><div class=3D"gmail-adm" style=3D"margin= :5px 0px"><div id=3D"gmail-q_10" class=3D"gmail-ajR gmail-h4" aria-label=3D= "Hide expanded content" aria-expanded=3D"true" style=3D"background-color:rg= b(232,234,237);border:none;clear:both;line-height:6px;outline:none;width:24= px;color:rgb(80,0,80);font-size:11px;border-radius:5.5px"><div class=3D"gma= il-ajT" style=3D"background:url("https://www.gstatic.com/images/icons/= material/system_gm/2x/more_horiz_black_20dp.png") 50% 50%/20px no-repe= at;height:11px;opacity:0.71;width:24px"></div></div></div><div class=3D"gma= il-im" style=3D"color:rgb(80,0,80)"><blockquote class=3D"gmail_quote" style= =3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding= -left:1ex"><br>> Furthermore, the Taro script is not enforced by Bitcoin= , meaning those who<br>> control the Bitcoin script can always choose to= ignore the Taro script and<br>> destroy the Taro assets as a result.<br= ><br>This is correct, as a result in most contexts, an incentive exists for= the<br>holder of an asset to observe the Taro validation rules as otherwis= e, their<br>assets are burnt in the process from the PoV of asset verifiers= . In the<br>single<br>party case things are pretty straight forward, but mo= re care needs to be<br>taken<br>in cases where one attempts to express part= ial application and permits<br>anyone<br>to spend a UTXO in question.<br><b= r>By strongly binding all assets to Bitcoin UTXOs, we resolve issues relate= d<br>to<br>double spending or duplicate assets, but needs to mind the fact = that assets<br>can<br>be burnt if a user doesn't supply a valid witness= . There're likely ways to<br>get<br>around this by lessening the bindin= g to Bitcoin UTXO's, but then the system<br>would need to be able to co= llect, retain and order all the set of possible<br>spends, essentially requ= iring a parallel network. The core of the system as<br>it<br>stands today i= s pretty simple (which was an explicit design goal to avoid<br>getting fore= ver distracted by the large design space), with a minimal<br>implementation= being relatively compact given all the Bitcoin context/design<br>re-use.<b= r></blockquote><div><br></div></div></div><div>The TARO set of tradeoffs is= fairly coherent but is subject to certain limitations (modulo my understan= ding of it being off):</div><div><br></div><div>The witnesses for transacti= ons need to be put into Bitcoin transactions even though the Bitcoin layer = doesn't understand them</div><div><br></div><div>There needs to be a co= nstraint on Taro transactions which is understood by the Bitcoin layer (whi= ch often/usually happens naturally because there's a user signature but= sometimes doesn't. It's a limitation)</div><div><br></div><div>Mul= tiple Taro coins can't consolidate their value into a single output bec= ause they only support a single linear history</div><div><br></div><div>Tar= o issuance is limited to a single event rather than potentially multiple ev= ents over time subject to special per-asset rules.</div><div><br></div><div= >This seems like a fairly logical approach (although my understanding of th= e limitations/tradeoffs could be wrong, especially with regards to consolid= ation). There's nothing wrong with a system having well documented limi= tations, but I am puzzled by the announcement saying Taro assets are 'a= nalogous with' colored coins. Taro assets are straightforwardly and una= mbiguously colored coins and that isn't something to be ashamed of.</di= v></div></div> --000000000000d421e405dc560dbf--