public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Michael Gronager <gronager@ceptacle.com>
To: Alan Reiner <etotheipi@gmail.com>
Cc: bitcoin-development@lists.sourceforge.net
Subject: Re: [Bitcoin-development] is there a way to do bitcoin-staging?
Date: Mon, 14 Oct 2013 20:43:26 +0200	[thread overview]
Message-ID: <525C3B4E.2040406@ceptacle.com> (raw)
In-Reply-To: <5199C3DE.901@gmail.com>

Hi Alan,

What you describe in the ultimate blockchain compression I have already
coded the authenticated datastructure part of in libcoin
(https://github.com/libcoin/libcoin) - next step is to include a p2pool
style mining, where a parallel chain serves several purposes:
1. to validate the root hash at a higher frequency than the 10 min
2. to enable distributed mining, easily (part of libcoind)
3. to utilize the soft fork by defining the root hash in coinbase blocks
as v3 and once we cross the limit all blocks are v3.

I will have a closer look at you bitcoin talk post to see how well my
approach and ideas fit to yours.

Michael

On 20/5/13 08:34 , Alan Reiner wrote:
> This is exactly what I was planning to do with the inappropriately-named
> "Ultimate Blockchain Compression
> <https://bitcointalk.org/index.php?topic=88208.0>".  I wanted to
> reorganize the blockchain data into an authenticated tree, indexed by
> TxOut script (address), instead of tx-hash.  Much like a regular merkle
> tree, you can store the root in the block header, and communicate
> branches of that tree to nodes, to prove inclusion (and exclusion!) of
> TxOuts for any given script/address.  Additionally, you can include at
> each node, the sum of BTC in all nodes below it, which offers some other
> nice benefits.
> 
> I think this idea is has epic upside-potential for bitcoin if it works
> -- even "SPV" nodes could query their unspent TxOut list for their
> wallet from any untrusted peer and compare the result directly to the
> blockheaders/POW.  Given nothing but the headers, you can verify the
> balance of 100 addresses with 250 kB.  But also epic failure-potential
> in terms of feasibility and cost-to-benefit for miners.  For it to
> really work, it's gotta be part of the mainnet validation rules, but no
> way it can be evaluated realistically without some kind of "staging". 
> Therefore, I had proposed that this be merge-mined on a "meta-chain"
> first...get a bunch of miners on board to agree to merge mine and see it
> in action.  It seemed like a perfectly non-disruptive way to prove out a
> particular idea before we actually consider making a protocol change
> that significant.  Even if it stayed on its own meta chain, as long as
> there is some significant amount of hashpower working on it, it can
> still be a useful tool. 
> 
> Unfortunately, my experience with merged mining is minimal, so I'm still
> not clear how feasible/reliable it is as an alternative to direct
> blockchain integration.  That's a discussion I'd like to have.
> 
> -Alan
> 
> 
> On 5/19/2013 11:08 AM, Peter Vessenes wrote:
>> I think this is a very interesting idea. As Bitcoiners, we often stuff
>> things into the 'alt chain' bucket in our heads; I wonder if this idea
>> works better as a curing period, essentially an extended version of
>> the current 100 block wait for mined coins.
>>
>> An alternate setup comes to mind; I can imagine this working as a sort
>> of gift economy; people pay real BTC for merge-mined "beta BTC" as a
>> way to support development. There is no doubt a more elegant and
>> practical solution that might have different economic and crypto
>> characteristics.
>>
>>
>>
>> On Sun, May 19, 2013 at 6:23 AM, Adam Back <adam@cypherspace.org
>> <mailto:adam@cypherspace.org>> wrote:
>>
>>     Is there a way to experiment with new features - eg committed
>>     coins - that
>>     doesnt involve an altcoin in the conventional sense, and also
>>     doesnt impose
>>     a big testing burden on bitcoin main which is a security and
>>     testing risk?
>>
>>     eg lets say some form of merged mine where an alt-coin lets call it
>>     bitcoin-staging?  where the coins are the same coins as on
>>     bitcoin, the
>>     mining power goes to bitcoin main, so some aspect of merged
>>     mining, but no
>>     native mining.  and ability to use bitcoins by locking them on
>>     bitcoin to
>>     move them to bitcoin-staging and vice versa (ie exchange them 1:1
>>     cryptographically, no exchange).
>>
>>     Did anyone figure anything like that out?  Seems vaguely doable and
>>     maybe productive.  The only people with coins at risk of defects
>>     in a new
>>     feature, or insufficiently well tested novel feature are people
>>     with coins
>>     on bitcoin-staging.
>>
>>     Yes I know about bitcoin-test this is not it.  I mean a real live
>>     system,
>>     with live value, but that is intentionally wanting to avoid
>>     forking bitcoins
>>     parameters, nor value, nor mindshare dillution.  In this way something
>>     potentially interesting could move forward faster, and be les
>>     risky to the
>>     main bitcoin network.  eg particularly defenses against
>>
>>     It might also be a more real world test test (after bitcoin-test)
>>     because
>>     some parameters are different on test, and some issues may not
>>     manifest
>>     without more real activity.
>>
>>     Then also bitcoin could cherry pick interesting patches and merge
>>     them after
>>     extensive real-world validation with real-money at stake (by early
>>     adopters).
>>
>>     Adam
>>
>>     ------------------------------------------------------------------------------
>>     AlienVault Unified Security Management (USM) platform delivers
>>     complete
>>     security visibility with the essential security capabilities.
>>     Easily and
>>     efficiently configure, manage, and operate all of your security
>>     controls
>>     from a single console and one unified framework. Download a free
>>     trial.
>>     http://p.sf.net/sfu/alienvault_d2d
>>     _______________________________________________
>>     Bitcoin-development mailing list
>>     Bitcoin-development@lists.sourceforge.net
>>     <mailto:Bitcoin-development@lists.sourceforge.net>
>>     https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>>
>>
>>
>>
>> -- 
>> Are you coming to Bitcoin2013 <http://bitcoin2013.com> in San Jose In
>> May? 
>> ------------------------------------------------------------------------
>>
>> CoinLab LogoPETER VESSENES 
>> CEO
>>
>> *peter@coinlab.com <mailto:peter@coinlab.com> * /  206.486.6856
>>  / SKYPE: vessenes 
>> 71 COLUMBIA ST / SUITE 300  /  SEATTLE, WA 98104
>>
>>
>>
>> ------------------------------------------------------------------------------
>> AlienVault Unified Security Management (USM) platform delivers complete
>> security visibility with the essential security capabilities. Easily and
>> efficiently configure, manage, and operate all of your security controls
>> from a single console and one unified framework. Download a free trial.
>> http://p.sf.net/sfu/alienvault_d2d
>>
>>
>> _______________________________________________
>> Bitcoin-development mailing list
>> Bitcoin-development@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
> 
> 
> 
> ------------------------------------------------------------------------------
> AlienVault Unified Security Management (USM) platform delivers complete
> security visibility with the essential security capabilities. Easily and
> efficiently configure, manage, and operate all of your security controls
> from a single console and one unified framework. Download a free trial.
> http://p.sf.net/sfu/alienvault_d2d
> 
> 
> 
> _______________________________________________
> Bitcoin-development mailing list
> Bitcoin-development@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
> 




  parent reply	other threads:[~2013-10-14 18:59 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-19 13:23 [Bitcoin-development] is there a way to do bitcoin-staging? Adam Back
2013-05-19 15:08 ` Peter Vessenes
2013-05-20  6:34   ` Alan Reiner
2013-10-14 18:08     ` Adam Back
2013-10-14 18:21       ` Jeff Garzik
2013-11-21 20:22       ` coinscoins
2013-11-21 20:35       ` Melvin Carvalho
2013-11-21 21:11         ` [Bitcoin-development] bitcoin 1.x & 0.x in parallel (Re: is there a way to do bitcoin-staging?) Adam Back
2014-03-16 22:58       ` [Bitcoin-development] 2-way pegging " Adam Back
2014-03-16 23:22         ` Jorge Timón
2014-03-17 15:55         ` Gregory Maxwell
2013-10-14 18:43     ` Michael Gronager [this message]
2013-10-14 20:20       ` [Bitcoin-development] is there a way to do bitcoin-staging? Alan Reiner
2013-05-22  3:37   ` zooko
2013-05-22  4:12     ` Jeff Garzik
2013-05-20  7:12 ` Luke-Jr
2013-06-13 13:39 ` Adam Back
2013-06-14 19:20   ` Peter Todd
2013-06-14 20:50     ` Adam Back
2013-06-14 21:10       ` Luke-Jr
2013-06-14 21:25         ` Andreas Petersson
2013-06-15  0:09           ` Dennison Bertram
2013-06-15  1:57             ` Luke-Jr
2013-06-15  8:43               ` Dennison Bertram
2013-06-15 11:18 ` Melvin Carvalho
2013-06-15 13:26   ` Dennison Bertram
2013-06-16 15:46     ` Dennison Bertram

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=525C3B4E.2040406@ceptacle.com \
    --to=gronager@ceptacle.com \
    --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