<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On 10 June 2013 10:35, Pieter Wuille <span dir="ltr">&lt;<a href="mailto:pieter.wuille@gmail.com" target="_blank">pieter.wuille@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Mon, Jun 10, 2013 at 10:14 AM, Melvin Carvalho<br>
&lt;<a href="mailto:melvincarvalho@gmail.com">melvincarvalho@gmail.com</a>&gt; wrote:<br>
&gt; However, Bitcoin&#39;s fundamental philosophy was one CPU one vote.<br>
<br>
</div>This is perhaps the largest misconception that keeps being repeated.<br>
Bitcoin is not a democracy; it is a zero-trust system. The rules are<br>
set in stone, and every full node verifies all rules and must<br>
independently come to the same result as everyone else. Obviously, if<br>
everyone changes their software, anything can change, but from within<br>
the system there is no way to change which blocks are considered<br>
valid, and there is certainly no voting mechanism about that.<br>
<br>
What is voted about, is the one single thing that cannot be decided by<br>
each node individually: namely the order of otherwise valid and<br>
non-conflicting transactions, and that&#39;s just because it&#39;s a<br>
necessity. Because deciding the order includes delaying transaction<br>
potentially indefinitely, a majority of miners can indeed choose the<br>
enforce an additional rule about which transactions are considered<br>
valid, but the rules implemented in full nodes do not change without<br>
changing the software. For example, miners cannot decide to raise the<br>
block subsidy, even if every single miner out there would want that.<br>
They&#39;d just end up being ignored by everyone else.<br>
<div class="im"><br>
&gt; Voting is easily gamed.  While this may work in one particular case, it is<br>
&gt; perhaps a bad precedent to set.  Establishing methods of voting can lead to<br>
&gt; single points of failure.<br>
<br>
</div>The problem is that at some point, you have to look at the system from<br>
a higher level than just the technical part. And because ultimately<br>
the possibility exists where everyone changes their software, and<br>
there is an exceedingly high incentive for consensus (a deliberate<br>
hard-fork where two groups of users decide to use different and<br>
incompatible rules, aware of eachother, is suicide for the system, in<br>
my opinion). This results in the fact that proposed changes can indeed<br>
become new adopted hard rules in the system, and I don&#39;t think there&#39;s<br>
anything that can be done about it. Bitcoin is a consensus system - at<br>
the technical level - but also a consensus of the people using it, and<br>
ultimately they decide the rules.<br></blockquote><div><br></div><div>OK I accept that the timestamping is one CPU one vote.  However rule changes seem rather arbitrary.<br></div><div><br></div><div>Towit if you use a voting/consensus system and want to destroy bitcion it seems quite easy.<br>
<br>Iterate on picking a rule chance that will divide the consensus in such a way as to create ensuing chaos.  <br><br></div><div>I think voting is too easy gamed for it it to be meaningful other than a straw poll.<br><br>
</div><div>If there&#39;s a bug, and everyone is unanimous that it&#39;s a bug, it can be fixed.<br><br></div><div>If there&#39;s a controversial rule change, we should be extremely cautious and not do it unless there&#39;s a very good reason.  Keeping to satoshi&#39;s model as much as possible without introducing human factors, unnecessarily.<br>
<br></div> <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><br>
&gt; Unless there&#39;s a very good reason not to, e.g. miners are clearly abusing<br>
&gt; the system, we should stick with 1 CPU one vote.<br>
<br>
</div>So you&#39;re saying that instead of a zero-trust system, we should move<br>
to a system where miners can decide _everything_ - as opposed to just<br>
being in charge of ordering transactions? I don&#39;t think you understand<br>
the system at all, if that is what you&#39;re proposing.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Pieter<br>
</font></span></blockquote></div><br></div></div>