public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Pieter Wuille <pieter.wuille@gmail•com>
To: Bitcoin Dev <bitcoin-development@lists•sourceforge.net>
Subject: Re: [Bitcoin-development] New standard transaction types: time to schedule a blockchain split?
Date: Wed, 24 Aug 2011 18:18:54 +0200	[thread overview]
Message-ID: <20110824161853.GA29981@ulyssis.org> (raw)

On Wed, Aug 24, 2011 at 11:12:10AM -0400, Gavin Andresen wrote:
> So, if we are going to have new releases that are incompatible with
> old clients why not do things right in the first place, implement or
> enable opcodes so the new bitcoin addresses can be small, and schedule
> a block chain split for N months from now.

What was the reason for disabling these opcodes in the first place? I can
understand wanting to prevent excessive signature-verification, or limitation
of arithmetic to a limited amount of bits, but completely disabling all
arithmetic beyond addition and subtraction, and all bitwise operations seems
very limiting to me. Thus, if we agree to do a future incompatible update,
i would vote to re-enable these, and maybe allow arithmetic up to 520 or
1024 bits numbers.

While we're at it, some additional opcodes could be useful. Either a custom
operator to do boolean evaluation, or a few more lowlevel operations. Given
the presence of bitwise operators, you could have scripts that process a
sequence of pubkey/signature pairs, build up a number in which each bit
corresponds to a valid signature, and then do some bitwise checks on this
number. I'd argue that a "count number of bits set in number" opcode would
be very useful for this.

In short: I'm in favor of re-enabling opcodes, and possibly adding an
OP_BITCOUNT operation.

-- 
Pieter



             reply	other threads:[~2011-08-24 16:19 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-24 16:18 Pieter Wuille [this message]
2011-08-24 16:26 ` Luke-Jr
  -- strict thread matches above, loose matches on Subject: below --
2011-08-25 20:14 Pieter Wuille
2011-08-26 11:09 ` Mike Hearn
2011-08-26 21:30   ` Pieter Wuille
2011-08-24 15:12 Gavin Andresen
2011-08-24 15:17 ` Rick Wesson
2011-08-24 15:45 ` Gregory Maxwell
2011-08-24 15:55   ` Rick Wesson
2011-08-24 16:05 ` Douglas Huff
2011-08-24 16:15 ` Luke-Jr
2011-08-24 16:46   ` Gregory Maxwell
2011-08-24 17:03     ` Luke-Jr
2011-08-24 17:07     ` Rick Wesson
2011-08-24 17:19       ` Gregory Maxwell
2011-08-24 17:40         ` Rick Wesson
2011-08-24 17:57           ` Gavin Andresen
2011-08-24 18:45             ` Jeff Garzik
2011-08-25  7:39             ` Michael Grønager
2011-08-25 17:18               ` Gavin Andresen
2011-08-26 10:50                 ` Mike Hearn
2011-08-27  1:36                 ` bgroff
2011-08-25 18:31               ` Gregory Maxwell
     [not found]                 ` <20110825201026.GA21380@ulyssis.org>
2011-08-25 20:29                   ` Gregory Maxwell
2011-08-25 21:06                     ` Pieter Wuille
2011-08-24 17:03 ` theymos
2011-08-24 17:47 ` bgroff
2011-08-24 19:05 ` Christian Decker
2011-08-24 20:29   ` Gregory Maxwell
2011-08-24 22:27     ` Douglas Huff
2011-08-25 21:30     ` Christian Decker
2011-08-26 11:42 ` Mike Hearn
2011-08-26 19:44   ` Gavin Andresen
2011-08-27  1:15     ` bgroff

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=20110824161853.GA29981@ulyssis.org \
    --to=pieter.wuille@gmail$(echo .)com \
    --cc=bitcoin-development@lists$(echo .)sourceforge.net \
    /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