We need some game theory experts to analyse this but I see there are 3
major problems:
1. Tragedy of the commons: Some miners have to scarify their income to
increase the block size, and all miners will share the beneficial
outcome of the increase. All miners would like to be free riders.
2. Promote the formation of mining cartel: miners have to make sure that
their vote for increase is supported by at least 50% of miners, or they
will lose income for nothing. A miner also needs to make sure that he is
not voting "excessively" (in terms of size and vote count), as the
excessive part will never be counted due to the use of median. So
basically you will either have exactly 1009 miners voting for the same
size increase in a cycle, or have no vote for increase at all. That will
require a lot of offline negotiations. Such cartel may work ONLY if
mining is highly centralized, and miners trust each other. Also, there
is no mechanism to punish those who betray the cartel.
3. Imbalance of power: it is costly to increase the size, while totally
free to decrease the size
Btc Drak via bitcoin-dev 於 2015-08-28 16:28 寫到:
I have received a lot of feedback on the original gist[1], reddit[2],
ML and IRC and have reworked the text somewhat.
I also request the BIP maintainer for a BIP number assignment
[1] https://gist.github.com/btcdrak/1c3a323100a912b605b5
[2]
https://www.reddit.com/r/Bitcoin/comments/3ibia0/bipxx_consensus_based_block_size_retargeting/
Pull request: https://github.com/bitcoin/bips/pull/187
<pre>
BIP: XX
Title: Consensus based block size retargeting algorithm
Author: BtcDrak <btcd...@gmail.com>
Status: Draft
Type: Standards Track
Created: 2015-08-21
</pre>
==Abstract==
A method of altering the maximum allowed block size of the Bitcoin
protocol
using a consensus based approach.
==Motivation==
There is a belief that Bitcoin cannot easily respond to raising the
blocksize limit if popularity was to suddenly increase due to a mass
adoption
curve, because co-ordinating a hard fork takes considerable time, and
being
unable to respond in a timely manner would irreparably harm the
credibility of
bitcoin.
Additionally, predetermined block size increases are problematic
because they
attempt to predict the future, and if too large could have unintended
consequences like damaging the possibility for a fee market to develop
as block subsidy decreases substantially over the next 9 years;
introducing
or exacerbating mining attack vectors; or somehow affect the network in
unknown
or unpredicted ways. Since fixed changes are hard to deploy, the damage
could be
extensive.
Dynamic block size adjustments also suffer from the potential to be
gamed by the
larger hash power.
Free voting as suggested by BIP100 allows miners to sell their votes
out of band
at no risk, and enable the sponsor the ability to manipulate the
blocksize.
It also provides a cost free method or the larger pools to vote in ways
to
manipulate the blocksize such to disadvantage or attack smaller pools.
==Rationale==
By introducing a cost to increase the block size ensures the mining
community
will collude to increase it only when there is a clear necessity, and
reduce it
when it is unnecessary. Larger miners cannot force their wishes so
easily
because not only will they have to pay extra a difficulty target, then
can be
downvoted at no cost by the objecting hash power.
Using difficulty as a penalty is better than a fixed cost in bitcoins
because it
is less predictable.
==Specification==
The initial block size limit shall be 1MB.
Each time a miner creates a block, they may vote to increase or
decrease the
blocksize by a maximum of 10% of the current block size limit. These
votes will
be used to recalculate the new block size limit every 2016 blocks.
Votes are cast using the block's coinbase field.
The first 4 bytes of the coinbase field shall be repurposed for voting
as an
unsigned long integer which will be the block size in bytes.
If a miner votes for an increase, the block hash must meet a difficulty
target
which is proportionally larger than the standard difficulty target
based on the
percentage increase they voted for.
Votes proposing decreasing the block size limit do not need to meet a
higher
difficulty target.
Miners can vote for no change by voting for the current block size.
For blocks to be valid the blockhash must meet the required difficulty
target
for the vote otherwise the block is invalid and will be rejected.
Every 2016 blocks, the block size limit will be recalculated by the
median of
all votes in the last 2016 blocks. This will redefine the block size
limit for
the next 2016 blocks.
Blocks that are larger than the calculated base block size limit are
invalid and
will be rejected.
The base block size limit may not reduce below 1MB.
==Acknowledgements==
This proposal is based on ideas and concepts derived from the writings
of
Meni Rosenfeld and Gregory Maxwell.
==Copyright==
This work is placed in the public domain.
_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev