From: Peter Todd <pete@petertodd.org>
To: Alan Reiner <etotheipi@gmail.com>
Cc: bitcoin-development@lists.sourceforge.net
Subject: Re: [Bitcoin-development] Proposal: Vote on the blocksize limit with proof-of-stake voting
Date: Mon, 10 Jun 2013 13:43:06 -0400 [thread overview]
Message-ID: <20130610174306.GA16549@petertodd.org> (raw)
In-Reply-To: <51B60BF1.3020701@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 1660 bytes --]
On Mon, Jun 10, 2013 at 01:25:05PM -0400, Alan Reiner wrote:
> to sign votes. Not only that, but it would require them to reveal their
> public key, which while isn't technically so terrible, large amounts of
> money intended to be kept in storage for 10+ years will prefer to avoid
> any exposure at all, in the oft-chance that QCs come around a lot
> earlier than we expected. Sure, the actual risk should be pretty much
> non-existent, but some of the most paranoid folks are probably the same
> ones who have a lot of funds and want 100.00% of the security that is
> possible. They will see this as wildly inconvenient.
Solving that problem is pretty easy actually: just add a voting only
public key to your outputs. Specifically you would have an opcode called
something like "OP_VOTE" and put a code-path in your script that only
executes for that specific key.
It'd work best if we implement merklized abstract syntax trees to allow
you to reveal only the part of a script that is actually executed rather
than the whole script, a feature useful for a lot of other things.
Incidentally remember that we can implement as many new opcodes as we
want with a soft-fork by redefining one of the OP_NOP's to be a
OP_VERSION opcode that returns false for a given version:
version OP_VERSION OP_IFNOT {new opcodes} OP_ENDIF
Nodes with the existing codebase will think the script always succeeds,
because the IFNOT branch isn't taken, leaving the non-false version on
the stack, while new nodes will take that branch.
--
'peter'[:-1]@petertodd.org
0000000000000109243df1322b7b5173c5796cf979318e933d887210c981c1f8
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
next prev parent reply other threads:[~2013-06-10 17:43 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-10 4:09 [Bitcoin-development] Proposal: Vote on the blocksize limit with proof-of-stake voting John Dillon
[not found] ` <CAFBxzACPpLd1gmoAzxviU2rLPry=cGNQhEZvYV=q_PLRQQ5wXw@mail.gmail.com>
2013-06-10 4:59 ` John Dillon
2013-06-10 5:30 ` Peter Todd
2013-06-10 6:34 ` Daniel Lidstrom
2013-06-10 8:14 ` Melvin Carvalho
2013-06-10 8:26 ` John Dillon
2013-06-10 8:39 ` Melvin Carvalho
2013-06-10 8:35 ` Pieter Wuille
2013-06-10 12:30 ` Melvin Carvalho
2013-06-10 16:46 ` Mark Friedenbach
2013-06-10 17:25 ` Alan Reiner
2013-06-10 17:43 ` Peter Todd [this message]
2013-06-15 18:28 ` John Dillon
2013-06-22 12:05 ` Melvin Carvalho
2013-06-28 10:25 ` John Dillon
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=20130610174306.GA16549@petertodd.org \
--to=pete@petertodd.org \
--cc=bitcoin-development@lists.sourceforge.net \
--cc=etotheipi@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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