From: Dave Scotese <dscotese@litmocracy.com>
To: Bitcoin Dev <bitcoin-dev@lists.linuxfoundation.org>
Subject: [bitcoin-dev] Proof of Work algorithm vs mining centralization
Date: Sun, 30 Aug 2015 11:10:39 -0700 [thread overview]
Message-ID: <CAGLBAhe7c7qnT4zySXz=M8AYTAZfVfDCUfby8bOi_FKoSV4mFA@mail.gmail.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 2512 bytes --]
Before miners get angry, consider that whatever the community does will
attempt to preserve the efforts you have made to make Bitcoin a success.
Paragraph five, below, includes a provision to protect you, so please don't
write me off.
The competition is essential to protecting the data in the blockchain. I
worry that any time (eg all time so far) the rules of that competition
remain static, a group of people willing to develop and optimize hardware
that performs the work will form, and their products will find a following
- the miners. These miners and hardware producers will advance the
technology until the cost of competing in the space is so high that mining
bitcoin is, for all practical purposes, centralized.
I propose that the proof of work algorithm be scheduled to change
periodically. The current definition is pretty simple and there's no
reason not to continue using simple definitions. We could develop a list
of hash algorithms which could be indexed so that the first few bits of the
difficulty-change block's hash (or even *every* block's hash) could be used
to select one to be used for the next block. The principle is to
discourage specialization of hardware designed for what we must admit is an
arbitrary computing exercise, intended only to enable competition.
Of course chip designers could start working on hardware that can handle
all the algorithms defined, but the protocol can also warn them that from
time to time, the community will alter the content of the list of hash
algorithms, specifically to ensure that *general purpose *computing
machines (ie, what the average tech aficionado will have) is the best
device for mining bitcoin.
If such a variable PoW were to be used, I recommend that most of the
elements in the initial list of algorithms be the current PoW algorithm so
that most blocks can be solved by the existing mining community, and only
one every now and then will be available to everyone else. Over time, that
ratio would fall, giving the miners time to convert their expertise into
more productive activities.
I refer you to the stories at the beginning of each chapter of Douglas
Hofstadter's
Gödel, Escher, Bach: an Eternal Golden Braid, a few of which describe a
competition between a record-player-making tortoise and Achilles, who works
on making records that break the record players. It offers some through
provoking musings that can easily be related to this thing Satoshi made.
notplato
[-- Attachment #2: Type: text/html, Size: 2716 bytes --]
reply other threads:[~2015-08-30 18:10 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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='CAGLBAhe7c7qnT4zySXz=M8AYTAZfVfDCUfby8bOi_FKoSV4mFA@mail.gmail.com' \
--to=dscotese@litmocracy.com \
--cc=bitcoin-dev@lists.linuxfoundation.org \
/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