public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Christopher Allen <ChristopherA@lifewithalacrity•com>
To: Peter Todd <pete@petertodd•org>
Cc: Christopher Allen via bitcoin-dev
	<bitcoin-dev@lists•linuxfoundation.org>
Subject: Re: [bitcoin-dev] Debate: 64 bytes in OP_RETURN VS taproot OP_FALSE OP_IF OP_PUSH
Date: Tue, 31 Jan 2023 18:22:29 -0800	[thread overview]
Message-ID: <CACrqygD8ZF-PqKuFK7-SgiPdZQ9ewt+9QGXytpf8+NYjjNjyfA@mail.gmail.com> (raw)
In-Reply-To: <764E460B-C0C6-47B8-A97E-F7CBC81FD645@petertodd.org>

[-- Attachment #1: Type: text/plain, Size: 2067 bytes --]

I don't have a concrete proposal in mind, I'm just trying to understand
various tradeoffs in post-taproot bitcoin in more detail.

On Tue, Jan 31, 2023 at 6:07 PM Peter Todd <pete@petertodd•org> wrote:

>
> >OP_FALSE
> >OP_IF
> >OP_PUSH my64bytes
> >OP_ENDIF
>
> What's wrong with OpPush <data> OpDrop?
>

I'm not sure pro or con of either. I just saw that proposal above recently.


> Also, it is incorrect to say that OpReturn outputs "clog UTXO space". The
> whole point of OpReturn is to standardize a way to keep such outputs out of
> the UTXO set. There is the 75% discount to using witness space. But
> considering the size of a transaction as a whole using taproot instead of
> OpReturn doesn't save much.
>

There are OP_RETURN tricks in production that do clog UTXO space. I was
trying to avoid consideration of those by just saying to compare apples vs.
apples, by presuming that any form of these transactions holding the 64
bytes is a spent transaction.

Finally, _64_ bytes is more than a mere 32 byte commitment. What specific
> use case do you actually have in mind here? Are you actually publishing
> data, or simply committing to data? If the latter, you can use ECC
> commitments and have no extra space at all.
>

I chose 64 bytes for this exercise, as I know there are tricks hiding 32
bytes as keys. As almost every op_return live out there is >32 bytes, I
wanted an example that could be a signature, two hashes, a hash plus some
metadata, etc. I also considered 96 bytes (for instance a hash and a
signature), but as that doesn't fit into OP_RETURN's 80 bytes, that choice
prohibits comparing the different approaches side-by-side.

To come back to my question another way, if you ignore the people who say
"never put anything except data facilitating coin transactions into the
bitcoin blockchain", but if you also are not trying to use the bitcoin
blockchain as a world database (ala ETH), what is the most pragmatic way to
do so that minimizes any potential harm? The answer pre-taproot was
OP_RETURN. What is it now?

-- Christopher Allen

[-- Attachment #2: Type: text/html, Size: 2980 bytes --]

  reply	other threads:[~2023-02-01  2:23 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-01  0:46 Christopher Allen
2023-02-01  2:07 ` Peter Todd
2023-02-01  2:22   ` Christopher Allen [this message]
2023-02-01  8:36     ` Kostas Karasavvas
2023-02-01 12:51       ` Peter Todd
2023-02-01 14:02   ` Andrew Poelstra
2023-02-02 11:22     ` Peter Todd
2023-02-02 11:45       ` Aymeric Vitte
2023-02-02 11:49         ` Peter Todd
2023-02-02 12:24           ` Aymeric Vitte
2023-02-01 12:59 ` Aymeric Vitte
2023-02-02 13:25 ` Rijndael
2023-02-03 11:15   ` Aymeric Vitte
2023-02-03 18:47     ` Christopher Allen
2023-02-04 14:11       ` Kostas Karasavvas
2023-02-04 17:01         ` Aymeric Vitte
2023-02-04 18:54           ` Christopher Allen
2023-02-04 20:55             ` Aymeric Vitte
2023-02-04 22:18               ` Christopher Allen
2023-02-04 23:09                 ` Aymeric Vitte
2023-02-05  0:04                   ` Peter Todd
2023-02-05 11:40                     ` Aymeric Vitte
2023-02-05 12:06                       ` Peter Todd
2023-02-05 12:47                         ` Aymeric Vitte
2023-02-05  0:11                   ` Russell O'Connor
2023-02-05  2:01                     ` Peter Todd
2023-02-05 18:12                       ` Russell O'Connor
2023-02-12 16:23                         ` Aymeric Vitte
2023-02-16 18:23                           ` Aymeric Vitte
2023-02-16 19:59                             ` Claus Ehrenberg
2023-02-17 10:56                               ` Aymeric Vitte
2023-02-05 18:06                     ` Andrew Poelstra
2023-02-17 12:49                     ` Anthony Towns
2023-02-18 18:38                       ` Aymeric Vitte

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CACrqygD8ZF-PqKuFK7-SgiPdZQ9ewt+9QGXytpf8+NYjjNjyfA@mail.gmail.com \
    --to=christophera@lifewithalacrity$(echo .)com \
    --cc=bitcoin-dev@lists$(echo .)linuxfoundation.org \
    --cc=pete@petertodd$(echo .)org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox