<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <updated></updated>
  <generator>https://nostr.ae</generator>

  <title>Nostr notes by </title>
  <author>
    <name></name>
  </author>
  <link rel="self" type="application/atom+xml" href="https://nostr.ae/npub1zhs9mccrku47nupaxm60szt8924en7aewpfh7x4a98qh45lju2pq7x3hc5.rss" />
  <link href="https://nostr.ae/npub1zhs9mccrku47nupaxm60szt8924en7aewpfh7x4a98qh45lju2pq7x3hc5" />
  <id>https://nostr.ae/npub1zhs9mccrku47nupaxm60szt8924en7aewpfh7x4a98qh45lju2pq7x3hc5</id>
  <icon></icon>
  <logo></logo>




  <entry>
    <id>https://nostr.ae/nevent1qqsrwa98qqkj8g37jnqg5ntz85j2t2srmj9payc8l2vcu6ddvt45hyczyq27qh0rqwmjh60s85m0f7qfvu42hx0mh9c9xlc6h55uz7kn7t3gy7dx66d</id>
    
      <title type="html">📅 Original date posted:2023-02-02 🗒️ Summary of this ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsrwa98qqkj8g37jnqg5ntz85j2t2srmj9payc8l2vcu6ddvt45hyczyq27qh0rqwmjh60s85m0f7qfvu42hx0mh9c9xlc6h55uz7kn7t3gy7dx66d" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2xjep8u7jvzt4v4n5wu7fvl2gwqagw2jsv5hr79u0dmyapq7yv8s0y8n0q&#39;&gt;nevent1q…8n0q&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2023-02-02&lt;br/&gt;🗒️ Summary of this message: The RBG Protocol Project and Taro use &amp;#34;single use seals&amp;#34; for tracking assets anchored to Bitcoin, with the actual application data off-chain, making it cheaper and more scalable. The proposed BIP for non-fungible tokens doesn&amp;#39;t document any method for associating data or a right with an ordinal, but inscriptions can be moved entirely off-chain.&lt;br/&gt;📝 Original message:Hi AJ and List,&lt;br/&gt;&lt;br/&gt;This reminds me of a series of blog posts Peter Todd wrote a few years&lt;br/&gt;ago about using &amp;#34;single use seals&amp;#34; for tracking (fungible) assets&lt;br/&gt;anchored to Bitcoin[0]. I believe that the RBG Protocol Project and Taro&lt;br/&gt;are both using the same underlying principle.&lt;br/&gt;&lt;br/&gt;Having the actual application data offchain, but with a commitment to a&lt;br/&gt;UTXO and then using Bitcoin only as a proof-of-publication system to&lt;br/&gt;prevent double-spends seems like a really good idea. As you point out,&lt;br/&gt;in addition to being cheaper and more scalable, it means that not&lt;br/&gt;everyone on the network has to know that there&amp;#39;s an asset involved. It&lt;br/&gt;just looks like plain old bitcoin transfers.&lt;br/&gt;&lt;br/&gt;A lot of people have written about or are (I think) working on&lt;br/&gt;implementations of this idea. I really like your suggestion of using&lt;br/&gt;nostr. Clients can keep the asset metadata chains locally in their&lt;br/&gt;client and (re)broadcast them to application-specific nostr relays, or&lt;br/&gt;to general public relays depending on application needs. Maybe there&amp;#39;s a&lt;br/&gt;marketplace application that has its own relays and also broadcasts&lt;br/&gt;asset metadata to relays used by popular gallery systems. Or maybe your&lt;br/&gt;client just sends to any relay it sees that doesnt have the event. Big&lt;br/&gt;design space there.&lt;br/&gt;&lt;br/&gt;- rijndael&lt;br/&gt;&lt;br/&gt;0: &lt;a href=&#34;https://petertodd.org/2017/scalable-single-use-seal-asset-transfer&#34;&gt;https://petertodd.org/2017/scalable-single-use-seal-asset-transfer&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;On 2/2/23 4:15 AM, Anthony Towns via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; Hi *,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Casey Rodarmor&amp;#39;s ordinals use the technique of tracking the identity of&lt;br/&gt;&amp;gt; individual satoshis throughout their lifetime:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; On Tue, Feb 22, 2022 at 04:43:52PM -0800, Casey Rodarmor via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt; Briefly, newly mined satoshis are sequentially numbered in the order in&lt;br/&gt;&amp;gt;&amp;gt; which they are mined. These numbers are called &amp;#34;ordinal numbers&amp;#34; or&lt;br/&gt;&amp;gt;&amp;gt; &amp;#34;ordinals&amp;#34;. When satoshis are spent in a transaction, the input satoshi&lt;br/&gt;&amp;gt;&amp;gt; ordinal numbers are assigned to output satoshis using a simple&lt;br/&gt;&amp;gt;&amp;gt; first-in-first-out algorithm.&lt;br/&gt;&amp;gt; This is proposed as a BIP at &lt;a href=&#34;https://github.com/bitcoin/bips/pull/1408&#34;&gt;https://github.com/bitcoin/bips/pull/1408&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; When accompanied by a standard for associating some data or right with&lt;br/&gt;&amp;gt; such an identity, this allows the creation of non-fungible tokens (or&lt;br/&gt;&amp;gt; semi-fungible tokens) whose ownership can be transferred by a bitcoin&lt;br/&gt;&amp;gt; transaction.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The proposed BIP doesn&amp;#39;t document any method for associating data or a&lt;br/&gt;&amp;gt; right with an ordinal, but the &amp;#34;ord&amp;#34; tool defines &amp;#34;inscriptions&amp;#34; to fill&lt;br/&gt;&amp;gt; this gap [0], providing a way of including mime-encoded data in a taproot&lt;br/&gt;&amp;gt; witness. To make such an inscription, two transactions are required:&lt;br/&gt;&amp;gt; one paying some sats to a special scriptPubKey that commits to the&lt;br/&gt;&amp;gt; inscribed data, and a second that spends those sats to the owner of the&lt;br/&gt;&amp;gt; newly inscribed ordinal, and in so doing revealing the full inscription.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; [0] &lt;a href=&#34;https://docs.ordinals.com/inscriptions.html&#34;&gt;https://docs.ordinals.com/inscriptions.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I think, however, that you can move inscriptions entirely off-chain. I&lt;br/&gt;&amp;gt; wrote a little on this idea on twitter already [1], but after a bit more&lt;br/&gt;&amp;gt; thought, I think pushing things even further off-chain would be plausible.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; [1] &lt;a href=&#34;https://twitter.com/ajtowns/status/1619554871166013441&#34;&gt;https://twitter.com/ajtowns/status/1619554871166013441&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; In particular, rather than looking at it as being the owner of the sats&lt;br/&gt;&amp;gt; that inscribes some content on those sats (analogously to signing a $100&lt;br/&gt;&amp;gt; bill [2]), you could look at it as saying &amp;#34;the owner of this thing is&lt;br/&gt;&amp;gt; whoever owns this particular sat&amp;#34; (eg instead of &amp;#34;whoever owns this&lt;br/&gt;&amp;gt; share certificate is a shareholder&amp;#34;, it&amp;#39;s &amp;#34;whoever owns the $1 bill with&lt;br/&gt;&amp;gt; serial number X is a shareholder&amp;#34;).&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; [2] &lt;a href=&#34;https://www.espn.com/nfl/story/_/id/14375536/owner-100-bill-autograph-cleveland-browns-qb-johnny-manziel-getting-offers&#34;&gt;https://www.espn.com/nfl/story/_/id/14375536/owner-100-bill-autograph-cleveland-browns-qb-johnny-manziel-getting-offers&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Implementing that is fairly straightforward: you just need a protocol&lt;br/&gt;&amp;gt; for creating an asset offchain and associating it with an ordinal --&lt;br/&gt;&amp;gt; nothing needs to happen on-chain at all. That is, you can do something&lt;br/&gt;&amp;gt; as simple as posting a single nostr message:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    {&lt;br/&gt;&amp;gt;      &amp;#34;pubkey&amp;#34;: &amp;lt;creator&amp;#39;s pubkey&amp;gt;&lt;br/&gt;&amp;gt;      &amp;#34;kind&amp;#34;: 0,&lt;br/&gt;&amp;gt;      &amp;#34;tags&amp;#34;: [&lt;br/&gt;&amp;gt;        [&amp;#34;ord&amp;#34;, &amp;#34;txid:vout:sat&amp;#34;]&lt;br/&gt;&amp;gt;      ],&lt;br/&gt;&amp;gt;      &amp;#34;content&amp;#34;: [jpeg goes here],&lt;br/&gt;&amp;gt;      &amp;#34;id&amp;#34;: &amp;lt;hash of the above&amp;gt;&lt;br/&gt;&amp;gt;      &amp;#34;sig&amp;#34;: &amp;lt;signature of id by creator&amp;#39;s pubkey&amp;gt;&lt;br/&gt;&amp;gt;    }&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; You can prove current ownership of the message by showing a custody&lt;br/&gt;&amp;gt; chain, that is the transaction specified by &amp;#34;txid&amp;#34; in the &amp;#34;ord&amp;#34; tag,&lt;br/&gt;&amp;gt; then every transaction that spent the given sat, until you get to one&lt;br/&gt;&amp;gt; that&amp;#39;s still in the utxo set [3]. You don&amp;#39;t need to provide witness&lt;br/&gt;&amp;gt; data or validate any of these tx&amp;#39;s signatures, as that is already&lt;br/&gt;&amp;gt; implicit in that you end up at a tx in the utxo set. Just calculating&lt;br/&gt;&amp;gt; the txids and comparing against the output containing the sat you&amp;#39;re&lt;br/&gt;&amp;gt; interested in is sufficient.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; [3] If the satoshi was lost to fees at some point, you could continue to&lt;br/&gt;&amp;gt;      follow ownership by including an entire block in the custody chain.&lt;br/&gt;&amp;gt;      But seems better to just consider it as &amp;#34;abandoned&amp;#34; or &amp;#34;lost to the&lt;br/&gt;&amp;gt;      public domain&amp;#34; at that point.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; This approach allows all the &amp;#34;inscription&amp;#34; data to be entirely off-chain,&lt;br/&gt;&amp;gt; the only thing that requires a transaction on-chain is transferring&lt;br/&gt;&amp;gt; ownership to someone else. That allows the NFT&amp;#39;s existance can be kept&lt;br/&gt;&amp;gt; entirely private if desired; it also makes it cheap to create a new NFT&lt;br/&gt;&amp;gt; (you don&amp;#39;t need to pay any on-chain fees at all); and it doesn&amp;#39;t impose&lt;br/&gt;&amp;gt; an outsized overhead on people who aren&amp;#39;t interested in your inscriptions,&lt;br/&gt;&amp;gt; but may be interested either in bitcoin per se, or in other inscriptions.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; For things that have real intrinsic value -- equity rights in a company,&lt;br/&gt;&amp;gt; bragging rights for supporting an artist, etc -- this seems like it&amp;#39;s&lt;br/&gt;&amp;gt; probably a viable approach: owners can &amp;#34;self-custody&amp;#34; all the information&lt;br/&gt;&amp;gt; about the things they own without having to rely on third parties,&lt;br/&gt;&amp;gt; transfers are no more censorable than any other bitcoin transaction&lt;br/&gt;&amp;gt; (especially if the association of the NFT with some particular sat is&lt;br/&gt;&amp;gt; not widely known), etc.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The &amp;#34;inscription&amp;#34; approach might still be desirable for broadcasting&lt;br/&gt;&amp;gt; information that might otherwise be subject to heavy censorship; presuming&lt;br/&gt;&amp;gt; that the censoring entity isn&amp;#39;t also willing and able to censor bitcoin&lt;br/&gt;&amp;gt; itself. It&amp;#39;s not clear that there&amp;#39;s any &amp;#34;rights&amp;#34; to be owned for such a&lt;br/&gt;&amp;gt; case -- you can&amp;#39;t buy the right to be the person that first published&lt;br/&gt;&amp;gt; it, and the point of widely broadcasting the information is so it&amp;#39;s&lt;br/&gt;&amp;gt; not a secret only known to a few anymore. Also, claiming ownership of&lt;br/&gt;&amp;gt; such information would presumably make you a target for the censor,&lt;br/&gt;&amp;gt; even if just as an example for others. So I&amp;#39;m dubious of the value of&lt;br/&gt;&amp;gt; associating an inscription with an ordinal for that use case.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; It&amp;#39;s also possible that the perceived value of the NFT isn&amp;#39;t due to&lt;br/&gt;&amp;gt; the inscription, but rather due to the scarcity of the blockspace it&lt;br/&gt;&amp;gt; was inscribed in (eg [4]). This is different from Bitcoin&amp;#39;s scarcity&lt;br/&gt;&amp;gt; -- by 2100 or so there&amp;#39;ll be a total of 2100T satoshis available,&lt;br/&gt;&amp;gt; but in that same time there will only have been about 4T vbytes of&lt;br/&gt;&amp;gt; blockspace available, and perhaps it could make sense to value spent&lt;br/&gt;&amp;gt; vbytes proportionally, so 4 spent vbytes is worth 2100 sats. In that&lt;br/&gt;&amp;gt; case if you spent 50kvb inscribing a jpeg, perhaps the &amp;#34;rights&amp;#34; to that&lt;br/&gt;&amp;gt; jpeg should be worth the same as 50k/4*2100 sats or 0.26 BTC. Doesn&amp;#39;t&lt;br/&gt;&amp;gt; seem like a sound argument to me -- there&amp;#39;s always more blockspace being&lt;br/&gt;&amp;gt; created, by fewer and fewer sats being created, and ordinals are far more&lt;br/&gt;&amp;gt; awkward to deal with, but I suppose it&amp;#39;s still conceivable, and people&lt;br/&gt;&amp;gt; at least claim to believe it. If it were true, this argument suggests&lt;br/&gt;&amp;gt; the price for blockspace today should be around 2488sat/vB (19.28MBTC /&lt;br/&gt;&amp;gt; 774700 MvB), rather than 1sat/vB.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; [4] &lt;a href=&#34;https://twitter.com/vnprc/status/1619876888687820801&#34;&gt;https://twitter.com/vnprc/status/1619876888687820801&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Anyway, comparisons to ordinal inscriptions aside, I think there&amp;#39;s&lt;br/&gt;&amp;gt; another interesting point from all this.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Presume you have a tool that implements the nostr ordinal assignment&lt;br/&gt;&amp;gt; suggested above: that is, a small modification of the &amp;#34;ord&amp;#34; tool that&lt;br/&gt;&amp;gt; can track a chain of custody for an ordinal specified in a nostr event&lt;br/&gt;&amp;gt; like the above. That allows you to do NFTs completely unobservably --&lt;br/&gt;&amp;gt; you don&amp;#39;t have to publish anything to the blockchain apart from ordinary&lt;br/&gt;&amp;gt; looking transactions to transfer ownership of your NFT. To your benefit,&lt;br/&gt;&amp;gt; that makes it hard for anyone to censor you; but to bitcoin more broadly,&lt;br/&gt;&amp;gt; I think it means that the possibility of coloured bitcoins is largely&lt;br/&gt;&amp;gt; unavoidable and simply something that must be dealt with, rather than&lt;br/&gt;&amp;gt; something we should spend time trying to prevent/avoid. Compare with:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; My personal, and possibly controversial, opinion is that colored coin&lt;br/&gt;&amp;gt;&amp;gt; protocols have no business being on the Bitcoin chain, possibly beyond&lt;br/&gt;&amp;gt;&amp;gt; committing to an occasional batched state update or so. Both because&lt;br/&gt;&amp;gt;&amp;gt; there is little benefit for tokens with a trusted issuer already, and&lt;br/&gt;&amp;gt;&amp;gt; because it competes with using Bitcoin for BTC - the token that pays&lt;br/&gt;&amp;gt;&amp;gt; for its security (at least as long as the subsidy doesn&amp;#39;t run out).&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Of course, personal opinions are no reason to dictate what people should&lt;br/&gt;&amp;gt;&amp;gt; or can use the chain for, but I do think it&amp;#39;s reason to voice hesitancy&lt;br/&gt;&amp;gt;&amp;gt; to worsening the system&amp;#39;s scalability properties only to benefit what&lt;br/&gt;&amp;gt;&amp;gt; I consider misguided use.&lt;br/&gt;&amp;gt;   -- &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-September/019500.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-September/019500.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I don&amp;#39;t think this actually results in majorly misaligned incentives&lt;br/&gt;&amp;gt; though: in the nostr-nfts-on-btc world, everyone is still optimising&lt;br/&gt;&amp;gt; bitcoin transactions for the same thing -- transfer of value. It&amp;#39;s just&lt;br/&gt;&amp;gt; that in some cases some sats are valued differently than others --&lt;br/&gt;&amp;gt; perhaps my uninscribed sats are worth 0.025 cents each, but you have&lt;br/&gt;&amp;gt; a particular inscribed sat that&amp;#39;s worth $100k. But we&amp;#39;re both dealing&lt;br/&gt;&amp;gt; just spending utxos and creating new utxos, doing signatures and maybe&lt;br/&gt;&amp;gt; some timelocks or hash reveals. And it&amp;#39;s always been possible that&lt;br/&gt;&amp;gt; your transaction transferring $100k won&amp;#39;t get charged higher fees than&lt;br/&gt;&amp;gt; my transfer of $50 -- we care about transaction size, not value after&lt;br/&gt;&amp;gt; all. How much does it matter if your tx matters more to your because&lt;br/&gt;&amp;gt; someone wants your particular sat, rather than what could happen today&lt;br/&gt;&amp;gt; where you have a utxo with 4 BTC while my utxo only has 0.002 BTC?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I think the only way to prevent that sort of NFT structure would be&lt;br/&gt;&amp;gt; to have every transaction use fancy zero-knowledge proofs that make it&lt;br/&gt;&amp;gt; impossible to associate who received bitcoin with who spent it -- *even&lt;br/&gt;&amp;gt; if* both the sender and recipient were willing to cooperate to reveal&lt;br/&gt;&amp;gt; that information. I think it would be hard to achieve that while still&lt;br/&gt;&amp;gt; making it easy to audit bitcoin&amp;#39;s total supply, but I might be wrong.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Note that off-chain colouring here means that someone can create an NFT&lt;br/&gt;&amp;gt; that you don&amp;#39;t want it, and just assign it to a sat that&amp;#39;s already in your&lt;br/&gt;&amp;gt; wallet. However, they can do this anyway, by first creating the NFT, then&lt;br/&gt;&amp;gt; sending it to your wallet address. A difference though is that they could&lt;br/&gt;&amp;gt; create an NFT and assign it to the same ordinal/sat as some existing NFT&lt;br/&gt;&amp;gt; that you do value, at which point it&amp;#39;s (presumably) impossible to discard&lt;br/&gt;&amp;gt; one without discarding both. But again, this is simply something they&lt;br/&gt;&amp;gt; can do, just be writing a patch to ord and composing a nostr message;&lt;br/&gt;&amp;gt; it&amp;#39;s not something you can actually prevent even if you dislike it.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Particularly for semi-fungible tokens, this is perhaps inferior to&lt;br/&gt;&amp;gt; Liquid&amp;#39;s multi-asset model -- here if you have a utxo with 1M sats, 500&lt;br/&gt;&amp;gt; of which are inscribed to each represent rights to $1 worth of USDT,&lt;br/&gt;&amp;gt; then rather than acting like a stable coin and being worth $500; it&amp;#39;s&lt;br/&gt;&amp;gt; actually worth $500&#43;0.01BTC, which is more like $750, and changes as&lt;br/&gt;&amp;gt; the value of bitcoin changes.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Cheers,&lt;br/&gt;&amp;gt; aj&lt;br/&gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#34;&gt;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&lt;/a&gt;
    </content>
    <updated>2023-06-08T01:19:09&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsytpluv38cgal2hv5qxm0yaynch8h0dq6925an2tl730tr43nvlnczyq27qh0rqwmjh60s85m0f7qfvu42hx0mh9c9xlc6h55uz7kn7t3gykayaaq</id>
    
      <title type="html">📅 Original date posted:2023-02-02 🗒️ Summary of this ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsytpluv38cgal2hv5qxm0yaynch8h0dq6925an2tl730tr43nvlnczyq27qh0rqwmjh60s85m0f7qfvu42hx0mh9c9xlc6h55uz7kn7t3gykayaaq" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxzgv2dznw9t5mvajtrz8es3egdgdhlg6uvl7lgcrqa9ysfnyylqq3dvjqk&#39;&gt;nevent1q…vjqk&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2023-02-02&lt;br/&gt;🗒️ Summary of this message: Using OP_RETURN is preferable for data payloads smaller than 80 bytes due to the two-step process and potential censorship of the witness envelope method.&lt;br/&gt;📝 Original message:Hello Christopher,&lt;br/&gt;&lt;br/&gt;I think if the protocol that you were designing always had &amp;lt;80 bytes,&lt;br/&gt;I&amp;#39;d prefer the OP_RETURN. I think the &amp;#34;witness envelope&amp;#34; has two major&lt;br/&gt;disadvantages compared to the OP_RETURN method:&lt;br/&gt;&lt;br/&gt;1. You need to first spend to he address that commits to the script that&lt;br/&gt;encodes your data payload. So you have a two step process of first&lt;br/&gt;spending to a &amp;#34;commitment&amp;#34; address and then a second spend to &amp;#34;reveal&amp;#34;&lt;br/&gt;your payload. You can CPFP to get them both into the same block, but its&lt;br/&gt;still two transactions, so more cost, etc.&lt;br/&gt;&lt;br/&gt;2. Because of the two step process in (1), if for some reason you were&lt;br/&gt;unable to get the &amp;#34;reveal&amp;#34; transaction into a block (for example there&amp;#39;s&lt;br/&gt;widespread censorship of transactions that match the format of the&lt;br/&gt;&amp;#34;reveal&amp;#34; script), then you might have money that&amp;#39;s stuck in the &amp;#34;commit&amp;#34;&lt;br/&gt;stage of the protocol. The way out of this would be to get your money&lt;br/&gt;out via the keypath or another tapleaf, but then you need to spend money&lt;br/&gt;to cancel a step in your protocol. Of course there could be widespread&lt;br/&gt;censorship of your OP_RETURNs too, but you don&amp;#39;t have to spend funds on&lt;br/&gt;the cancellation spends.&lt;br/&gt;&lt;br/&gt;I think (2) is actually a pretty weak argument because as we saw in the&lt;br/&gt;full-rbf discussion, as long as there&amp;#39;s some threshold number of nodes&lt;br/&gt;in the network that relay transactions to miners, you can probably find&lt;br/&gt;a path to a miner (IIRC the number was on the order of 15% of the&lt;br/&gt;network?). So I think the big reason to pick OP_RETURN over the witness&lt;br/&gt;embedding is that you save a transaction and possibly some&lt;br/&gt;failure-recovery/cancellation logic.&lt;br/&gt;&lt;br/&gt;Obviously if your data is larger than 80 bytes, then you probably want&lt;br/&gt;to do the witness-embedding method. If your data smaller, then a&lt;br/&gt;pay-to-contract tweak probably the best thing from a space and&lt;br/&gt;fingerprinting perspective.&lt;br/&gt;&lt;br/&gt;- rijndael&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;On 1/31/23 7:46 PM, Christopher Allen via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; All other things being equal, which is better if you need to place a&lt;br/&gt;&amp;gt; 64-bytes into the Bitcoin blockchain? A traditional OP_RETURN or a&lt;br/&gt;&amp;gt; spent taproot transaction such as:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; OP_FALSE&lt;br/&gt;&amp;gt; OP_IF&lt;br/&gt;&amp;gt; OP_PUSH my64bytes&lt;br/&gt;&amp;gt; OP_ENDIF&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I know that the anti-OP_RETURN folk would say “neither.” But if there&lt;br/&gt;&amp;gt; was no other choice for a particular protocol, such as a timestamp or&lt;br/&gt;&amp;gt; a commitment, which is better? Or is there a safer place to put 64&lt;br/&gt;&amp;gt; bytes that is more uncensorable but also does not clog UTXO space,&lt;br/&gt;&amp;gt; only spent transaction `-txindex` space?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; My best guess was that the taproot method is better, but I suspect&lt;br/&gt;&amp;gt; there might be some who disagree. I&amp;#39;d love to hear all sides.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; -- Christopher Allen&lt;br/&gt;&amp;gt;
    </content>
    <updated>2023-06-08T01:18:57&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqszjnwquyupm4y80tkllq04tf3mxcqmg9mthxjx0j9urda49faqu6qzyq27qh0rqwmjh60s85m0f7qfvu42hx0mh9c9xlc6h55uz7kn7t3gyqs5nx0</id>
    
      <title type="html">📅 Original date posted:2022-12-05 📝 Original message:Good ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqszjnwquyupm4y80tkllq04tf3mxcqmg9mthxjx0j9urda49faqu6qzyq27qh0rqwmjh60s85m0f7qfvu42hx0mh9c9xlc6h55uz7kn7t3gyqs5nx0" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsggd4y9xygn74ktjwxlh4ue3x9pys5e3r0efvxevsmrvfuug4dhsgvxzfgq&#39;&gt;nevent1q…zfgq&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-12-05&lt;br/&gt;📝 Original message:Good morning,&lt;br/&gt;&lt;br/&gt;That sounds like a very dangerous mode of operation. You can already hand a transaction to a miner privately. I hand a transaction to a miner with some reasonable fee, and then I go and broadcast a different transaction with a minimal fee that spends the same inputs. The whole network (including the miner I handed the tx to) could all be running with a strict first-seen mempool policy, but we can still have a situation where the miner creates a block with a different transaction from what you see in your mempool. If anytime this happens, the nodes running your proposed rule drop the block, then anyone can fork those nodes off the network whenever they want.&lt;br/&gt;&lt;br/&gt;Even outside of adversarial settings, Bitcoin doesn&amp;#39;t (and doesn&amp;#39;t attempt to) promise consistency across mempools. Making a consensus rule that enforces mempool consistency is a recipe for (unintended?) chainsplits.&lt;br/&gt;&lt;br/&gt;- rijndael&lt;br/&gt;&lt;br/&gt;On 12/5/22 7:20 AM, El_Hoy via bitcoin-dev wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt; The only option I see against the attack Peter Todd is doing to opt-in RBF and 0Conf bitcoin usage is working on a bitcoin core implementation that stops propagation of full-rbf replaced blocks. Running multiple of such nodes on the network will add a risk to miners that enable full-rbf that would work as an incentive against that.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Obviously that would require adding an option on bitcoin core (that is not technically but politically difficult to implement as Petter Todd already have commit access to the main repository).&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; That said, a sufficiently incentivized actor (like Daniel Lipshitz or Muun wallet developers) could work on a fork and run several nodes with such functionality. As far as I understand the percolation model, with 10 to 20 nodes running such a rule would create a significant risk for full-rbf miners.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Regards.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; --- Eloy&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; On Tue, Nov 15, 2022 at 11:43 AM Peter Todd via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; On Tue, Nov 15, 2022 at 03:36:08PM &#43;1000, Anthony Towns via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On Tue, Nov 08, 2022 at 01:16:13PM -0500, Peter Todd via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; FYI I&amp;#39;ve gotten a few hundred dollars worth of donations to this effort, and&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; have raised the reward to about 0.02 BTC, or $400 USD at current prices.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Seems like this has been mostly claimed (0.014btc / $235, 9238sat/vb):&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I&amp;#39;m turning it back on when (if) the mempool settles down. I&amp;#39;ve got more than&lt;br/&gt;&amp;gt;&amp;gt; enough donations to give another run at it (the majority was donated privately&lt;br/&gt;&amp;gt;&amp;gt; FWIW). There&amp;#39;s a risk of the mempool filling up again of course; hard to avoid&lt;br/&gt;&amp;gt;&amp;gt; that.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Right now of course it&amp;#39;s really easy to double spend with the obvious&lt;br/&gt;&amp;gt;&amp;gt; low-fee/high-fee method as the min relay fee keeps shifting.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://mempool.space/tx/397dcbe4e95ec40616e3dfc4ff8ffa158d2e72020b7d11fc2be29d934d69138c&#34;&gt;https://mempool.space/tx/397dcbe4e95ec40616e3dfc4ff8ffa158d2e72020b7d11fc2be29d934d69138c&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The block it was claimed in seems to have been about an hour after the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; default mempool filled up:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://twitter.com/murchandamus/status/1592274621977477120&#34;&gt;https://twitter.com/murchandamus/status/1592274621977477120&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; That block actually seems to have included two&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; alice.btc.calendar.opentimestamps.org txs, the other paying $7.88&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; (309sat/vb):&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://mempool.space/tx/ba9670109a6551458d5e1e23600c7bf2dc094894abdf59fe7aa020ccfead07cf&#34;&gt;https://mempool.space/tx/ba9670109a6551458d5e1e23600c7bf2dc094894abdf59fe7aa020ccfead07cf&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; The second is because I turned down the full-rbf reward to more normal fee&lt;br/&gt;&amp;gt;&amp;gt; levels. There&amp;#39;s also another full-rbf double-spend from the Bob calendar, along&lt;br/&gt;&amp;gt;&amp;gt; the same lines: 7e76b351009326a574f3120164dbbe6d85e07e04a7bbdc40f0277fcb008d2cd2&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I double-spent the txin of the high fee tx that got mined. But I mistakenly had&lt;br/&gt;&amp;gt;&amp;gt; RBF enabled in that double-spend, so while it propagated initially, I believe&lt;br/&gt;&amp;gt;&amp;gt; it was replaced when something (someone?) rebroadcast the high-fee 397dcb tx.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Timeline (utc) to me looks like:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - 13:12 - block 763148 is mined: last one that had a min fee &amp;lt; 1.5sat/vb&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - 13:33 - f503868c64d454c472859b793f3ee7cdc8f519c64f8b1748d8040cd8ce6dc6e1&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; is announced and propogates widely (1.2sat/vb)&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - 18:42 - 746daab9bcc331be313818658b4a502bb4f3370a691fd90015fabcd7759e0944&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; is announced and propogates widely (1.2sat/vb)&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - 21:52 - ba967010 tx is announced and propogates widely, since&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; conflicting tx 746daab9 has been removed from default&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; mempools&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - 21:53 - murch tweets about default mempool filling up&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - 22:03 - 397dcbe4 tx is announced and propogates widely, since&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; conflicting tx f503868 has already been removed from default&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; mempools&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Is that 22:03 time for 397 from your node&amp;#39;s logs? It was originally announced&lt;br/&gt;&amp;gt;&amp;gt; hours earlier. From one of my full-rbf nodes:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 2022-11-14T14:08:37Z [mempool] replacing tx 764867062b67fea61810c3858d587da83a28290545e882935a32285028084317 with 397dcbe4e95ec40616e3dfc4ff8ffa158d2e72020b7d11fc2be29d934d69138c for 0.00468 additional fees, -1 delta bytes&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - 22:35 - block 763189 is mined&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - 22:39 - block 763190 is mined&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - 23:11 - block 763191 is mined&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - 23:17 - block 763192 is mined including 397dcbe4&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; miningpool.observer reports both 397dcbe4 and ba967010 as missing in the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; first three blocks, and gives similar mempool ages for those txs to what&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; my logs report:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://miningpool.observer/template-and-block/0000000000000000000436aba59d8430061e0e50592215f7f263bfb1073ccac7&#34;&gt;https://miningpool.observer/template-and-block/0000000000000000000436aba59d8430061e0e50592215f7f263bfb1073ccac7&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://miningpool.observer/template-and-block/00000000000000000005600404792bacfd8a164d2fe9843766afb2bfbd937309&#34;&gt;https://miningpool.observer/template-and-block/00000000000000000005600404792bacfd8a164d2fe9843766afb2bfbd937309&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://miningpool.observer/template-and-block/00000000000000000004a3073f58c9eae40f251ea7aeaeac870daeac4b238fd1&#34;&gt;https://miningpool.observer/template-and-block/00000000000000000004a3073f58c9eae40f251ea7aeaeac870daeac4b238fd1&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; That presumably means those pools (AntPool twice and &amp;#34;unknown&amp;#34;) are&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; running with large mempools that didn&amp;#39;t kept the earlier 1.2sat/vb txs.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; To be clear, you think that AntPool and that other exchange is running with a&lt;br/&gt;&amp;gt;&amp;gt; larger than normal max mempool size limit? You mean those miners *did* keep the&lt;br/&gt;&amp;gt;&amp;gt; earlier 1.2sat/vb tx?&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The txs were mined by Foundry:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://miningpool.observer/template-and-block/00000000000000000001382a226aedac822de80309cca2bf1253b35d4f8144f5&#34;&gt;https://miningpool.observer/template-and-block/00000000000000000001382a226aedac822de80309cca2bf1253b35d4f8144f5&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; This seems to be pretty good evidence that we currently don&amp;#39;t have any&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; significant hashrate mining with fullrbf policies (&amp;lt;0.5% if there was a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; high fee replacement available prior to every block having been mined),&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; despite the bounty having been collected.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Oh, we can put much lower bounds on that. I&amp;#39;ve been running OTS calendars with&lt;br/&gt;&amp;gt;&amp;gt; full-rbf replacements for a few months without clear evidence of a full-rbf&lt;br/&gt;&amp;gt;&amp;gt; replacement. While there was good reason to think some miners were mining&lt;br/&gt;&amp;gt;&amp;gt; full-rbf before a few years back, they probably didn&amp;#39;t bother to reapply their&lt;br/&gt;&amp;gt;&amp;gt; patches each upgrade. `mempoolfullrbf=1` is much simpler to use.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; --&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://petertodd.org&#34;&gt;https://petertodd.org&lt;/a&gt; &amp;#39;peter&amp;#39;[:-1]@petertodd.org&lt;br/&gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#34;&gt;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&lt;/a&gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20221205/27239496/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20221205/27239496/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T01:17:20&#43;02:00</updated>
  </entry>

</feed>