Re: [Bitcoin-development] Proposed alternatives to the 20MB step function

2015-05-08 Thread Clément Elbaz
Matt : I think proposal #1 and #3 are a lot better than #2, and #1 is my
favorite.

I see two problems with proposal #2.
The first problem with proposal #2 is that, as we see in democracies,
there is often a mismatch between the people conscious vote and these same
people behavior.

Relying on an  intentional vote made consciously by miners by choosing a
configuration value can lead to twisted results if their actual behavior
doesn't correlate with their vote (eg, they all vote for a small block size
because it is the default configuration of their software, and then they
fill it completely all the time and everything crashes).

The second problem with proposal #2 is that if Gavin and Mike are right,
there is simply no time to gather a meaningful amount of votes over the
coinbases, after the fork but before the Bitcoin scalability crash.

I like proposal #1 because the vote is made using already available data.
Also there is no possible mismatch between behavior and vote. As a miner
you vote by choosing to create a big (or small) block, and your actions
reflect your vote. It is simple and straightforward.

My feelings on proposal #3 is it is a little bit mixing apples and oranges,
but I may not seeing all the implications.

Le ven. 8 mai 2015 à 09:21, Matt Whitlock b...@mattwhitlock.name a écrit :

 Between all the flames on this list, several ideas were raised that did
 not get much attention. I hereby resubmit these ideas for consideration and
 discussion.

 - Perhaps the hard block size limit should be a function of the actual
 block sizes over some trailing sampling period. For example, take the
 median block size among the most recent 2016 blocks and multiply it by 1.5.
 This allows Bitcoin to scale up gradually and organically, rather than
 having human beings guessing at what is an appropriate limit.

 - Perhaps the hard block size limit should be determined by a vote of the
 miners. Each miner could embed a desired block size limit in the coinbase
 transactions of the blocks it publishes. The effective hard block size
 limit would be that size having the greatest number of votes within a
 sliding window of most recent blocks.

 - Perhaps the hard block size limit should be a function of block-chain
 length, so that it can scale up smoothly rather than jumping immediately to
 20 MB. This function could be linear (anticipating a breakdown of Moore's
 Law) or quadratic.

 I would be in support of any of the above, but I do not support Mike
 Hearn's proposed jump to 20 MB. Hearn's proposal kicks the can down the
 road without actually solving the problem, and it does so in a
 controversial (step function) way.


 --
 One dashboard for servers and applications across Physical-Virtual-Cloud
 Widest out-of-the-box monitoring support with 50+ applications
 Performance metrics, stats and reports that give you Actionable Insights
 Deep dive visibility with transaction tracing using APM Insight.
 http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
 ___
 Bitcoin-development mailing list
 Bitcoin-development@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/bitcoin-development

--
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y___
Bitcoin-development mailing list
Bitcoin-development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bitcoin-development


Re: [Bitcoin-development] The difficulty of writing consensus critical code: the SIGHASH_SINGLE bug

2014-11-07 Thread Clément Elbaz
Thinking out loud here : would it make sense to separate the consensus code
into some kind of Bitcoin Kernel (similar to the Linux Kernel) project
that could be used by anyone ?

Bitcoin Core (and any other application wishing to do so) could be based on
it.

The kernel would just contain the absolute minimum code for reaching
consensus, leaving every other aspects of the implementation to the
applications built with it.

It would be stateless : it would provide an interface to submit a
block/transaction to be validated, including the context needed to validate
it (the previously validated blocks referenced by this block/transaction).

What do you think ?

Clément

Le Fri Nov 07 2014 at 9:49:05 AM, Peter Todd p...@petertodd.org a écrit :

On Fri, Nov 07, 2014 at 09:07:47AM +0100, Tamas Blummer wrote:
  Peter,
 
  forking would work best with a freeze of the consensus code. Do you see
 any chance for that?

 To a first approximation the consensus code *is* frozen; if we introduce
 any consensus changes into it at this point it's due to a mistake, not
 intentionally.

 Of course, that's not including the two serious soft-fork proposals in
 the air right now, Pieter Wuille's BIP62 and my CHECKLOCKTIMEVERIFY.
 However dealing with proposed changes like those in an environment where
 the competing implementations all use essentially the same
 consensus-critical code is much easier than in an environment where they
 don't; I say this on both a technical and political level.

 --
 'peter'[:-1]@petertodd.org
 0c901eb1b6b765519b99c3afd7a9062ff4cfa29666ce140d
 
 --
 ___
 Bitcoin-development mailing list
 Bitcoin-development@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/bitcoin-development

--
___
Bitcoin-development mailing list
Bitcoin-development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bitcoin-development


[Bitcoin-development] Getting trusted metrics from the block chain in an untrusted environment ?

2014-01-08 Thread Clément Elbaz
Hello all,

I'm designing a program that needs some metrics computed from the Bitcoin
block chain (some address balances, or the occurrence or not of a specific
transaction). The kind of infos you get from http://blockchain.info/,
provided you trust this website (my program do not).

My program should run on lightweight/embedded hardware. The execution
environment provides access to the Bitcoin network but not enough resources
to set up a trusted node along with my program. Also, my program trusts the
global Bitcoin network but no individual node.

I would need a way to ask an untrusted Bitcoin node to compute some 'metric
request' on my behalf and having the result of that metric request
validated by the network.

Is there any available or work-in-progress projects that would come close
to this need ? Or should I do it myself ? :-)

Thank you all,

Clément Elbaz
--
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET,  PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk___
Bitcoin-development mailing list
Bitcoin-development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bitcoin-development


Re: [Bitcoin-development] Getting trusted metrics from the block chain in an untrusted environment ?

2014-01-08 Thread Clément Elbaz
Some more thoughts :

If no such project exist yet, I thought it could work with an alternate,
small and fixed-length 'metric request block chain' of some sort.

It would temporarily stores structures defined as [metric request | current
block number when request was made | hash of the response] instead of
financial transactions.

These structures are verifiable so it could work the same way as a regular
financial blochchain.

It should not be part of the main Bitcoin protocol but could be a plugin
interacting with the data managed by the fullnode bitcoin software.

Also, metrics requests can be expensive to compute and validate, so it
would make sense to pay a fee everytime you ask one.

Does any of this makes any sense to you ?

Thanks,

Clément
--
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET,  PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk___
Bitcoin-development mailing list
Bitcoin-development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bitcoin-development