Proof of Work: Difference between revisions

From P2P Foundation
Jump to navigation Jump to search
Line 75: Line 75:


=More Information=
=More Information=
[[Blockchain Consensus Mechanisms]]


* [[Proof of Stake]]
* [[Proof of Stake]]


* [[Proof of Value]]
* [[Proof of Value]]
* [[Leased Proof of Stake]]
* [[Delegated Proof of Stake]]
* [[Proof of Importance]]





Revision as of 08:07, 11 January 2018


= "Bitcoin is issued at a fixed rate to random miners who can prove work, but proof-of-work is NOT the basis for issuing Bitcoin. However proof-of-work IS a legitimate basis for issuing fiat currency in reasonable quantities". [1]

Description

1. From the Wikipedia:

"A proof-of-work (POW) system (or protocol, or function) is an economic measure to deter denial of service attacks and other service abuses such as spam on a network by requiring some work from the service requester, usually meaning processing time by a computer. The concept may have been first presented by Cynthia Dwork and Moni Naor in a 1993 journal. The term "Proof of Work" or POW was first coined and formalized in a 1999 paper by Markus Jakobsson and Ari Juels.

A key feature of these schemes is their asymmetry: the work must be moderately hard (but feasible) on the requester side but easy to check for the service provider. This idea is also known as a CPU cost function, client puzzle, computational puzzle or CPU pricing function. It is distinct from a CAPTCHA, which is intended for a human to solve quickly, rather than a computer." (https://en.wikipedia.org/wiki/Proof-of-work_system)


2. From the Bitcoin wiki:

"A proof of work is a piece of data which is difficult (costly, time-consuming) to produce but easy for others to verify and which satisfies certain requirements. Producing a proof of work can be a random process with low probability so that a lot of trial and error is required on average before a valid proof of work is generated. Bitcoin uses the Hashcash proof of work.

One application of this idea is using hashcash as a method to preventing email spam, requiring a proof of work on the email's contents (including the To address), on every email. Legitimate emails will be able to do the work to generate the proof easily (not much work is required for a single email), but mass spam emailers will have difficulty generating the required proofs (which would require huge computational resources).

Hashcash proofs of work are used in Bitcoin for block generation. In order for a block to be accepted by network participants, miners must complete a proof of work which covers all of the data in the block. The difficulty of this work is adjusted so as to limit the rate at which new blocks can be generated by the network to one every 10 minutes. Due to the very low probability of successful generation, this makes it unpredictable which worker computer in the network will be able to generate the next block.

For a block to be valid it must hash to a value less than the current target; this means that each block indicates that work has been done generating it. Each block contains the hash of the preceding block, thus each block has a chain of blocks that together contain a large amount of work. Changing a block (which can only be done by making a new block containing the same predecessor) requires regenerating all successors and redoing the work they contain. This protects the block chain from tampering.

The most widely used proof-of-work scheme is based on SHA-256 and was introduced as a part of Bitcoin. Some other hashing algorithms that are used for proof-of-work include scrypt, Blake-256, CryptoNight, HEFTY1, Quark, SHA-3, scrypt-jane, scrypt-n, and combinations thereof." (https://en.bitcoin.it/wiki/Proof_of_work)


3. Gleb Kostarev:

"Proof of work is the first distributed consensus mechanism, pioneered by bitcoin’s pseudonymous creator, Satoshi Nakamoto. Many cryptocurrencies followed suit, including Ethereum. In PoW, all the computers in the network that are tasked with maintaining the security of the blockchain — known as Miners in bitcoin — work to solve a puzzle consisting of a mathematical function called a hash. This task is straightforward (for a computer) but extremely repetitive, and therefore computationally expensive. Computers compete to find a hash with specific properties. The computer that finds the answer first — the proof that they have done the necessary work — is allowed to add a new block of transactions to the blockchain. They are rewarded with a tranche of newly-minted bitcoins (currently 12.5 BTC per block, or roughly every 10 minutes), plus all of the small transaction fees users have paid to send coins.

PoW operates on the principle that it is expensive to add a tranche of new transactions to the blockchain, but very easy to check if the transactions are valid due to the transparent nature of the ledger. Miners collectively verify the entire blockchain, and transactions aren’t considered to be fully ‘confirmed’ until several new blocks have been added on top of them. If a malicious actor tries to spend coins fraudulently, those transactions will be ignored by the rest of the network. The only way that an attacker could commit such a fraud is to possess a huge amount of computational power, such that they could mine block after block, winning the proof of work competition time after time. This is known as a ‘51% attack’ due to the need to possess more than half of total network hashrate. The reality is that no miner has such a proportion of total hashing power. Thus attempting such a fraud is 1) extremely expensive (since it costs as much as the hardware and energy required, plus the opportunity cost of not supporting the valid version of the blockchain and receiving rewards in return) and 2) extremely unlikely to succeed. Consequently it is better (i.e. more profitable) for miners to remain honest." (https://blog.wavesplatform.com/review-of-blockchain-consensus-mechanisms-f575afae38f2)

Discussion

Towards a more social proof-of-work

Matthew Slater:

"Let us say that the money IS a proof of work. The coin is a crafted object using common materials which takes about an hour to create (and cannot be automated!!) If anyone in the economy needs money, they can produce a coin. So there would never be a shortage of coins. A shortage of coins would only be experienced if the economy was growing or if the rich were failing to circulate their coins (sound familiar?). In both cases the production of new coins would increase liquidity and keep the economy moving, which is the main function of money.

In this example again, the production of physical coins is not very socially useful, but what other kinds of work could serve as a legitimate basis for issuing money?

Well, it would have to be work that was always needed, like cleaning / beautifying the environment,

If the work was not the creation of money itself, as in my example, there would need to be a way to check that the work done, to a sufficient quality and allocate the coin to the worker

If the work wasn't a simple repeatable process, like manufacturing a coin, then the issuing body would need to manage the list of tasks which merit coins

One design, Solarcoin, is issued in recognition of solar electricity generated, which is measurable and consistent. But I think that as soon as the proof of work is not mathematical, a human organisation is needed to manage the monetisable work, and measure the quality and quantity of work done. This makes a social proof of work not very practicable although it would make more sense if the currency were local." (http://www.geo.coop/story/social-proof-work)


From Proof of Work to Proof of Value?

Julian Feder:

"The PoW protocol allows the Bitcoin network to reach consensus regarding the contribution of each node in the system to the authentication process needed to verify transactions. The moment such a consensus is reached, contributors are rewarded with freshly minted Bitcoins.

The PoW model restricts itself to an algorithmically quantifiable and verifiable action, e.i how much computing resources you’re investing into the network, other value creating actions – like suggesting improvements to the system, writing code, creating software updates or anything their like, which geniune people have to do, are entirely of the scope. Bitcoin knows how to create and distribute value in a decentralized fashion, as long as no dirty humans with opinions are involved.

There’s another major problem with the Proof of Work scheme, especially if one would use it to determine the future of the entire system the way Hearn and his colleges from Bitcoin XT suggested (Voting with hash power to decide on the blocksize): Computing resources are a tradable commodity. Everyone with enough resources is capable of centralizing the entire system under his dominion, both in terms of the revenue stream created through mining, and in deciding how the system behaves, given voting with hashpower would become a thing. This is probably the reason why some consider Bitcoins “Lack of democracy” being such a great trait.

In the early days, many were terrified that some financial interest group like the Fed or some other statist syndicate, consisting of cigar smoking man in black, might bring Bitcoin down in exactly this way. Luckily, that didn’t happen. You only have a hashpower triopol generating about ⅔ of the network’s total hashrate, most of which resides in the People’s Republic of China, behind a stasi-type firewall, making the system painfully slow.

There are alternatives to PoW, like “Proof of Stake”, where the amount of minable blocks is restricted to the amount of Bitcoins a miner holds. This would make it very costly to establish a monopoly position, but would officially transfer the ownership of the network to the 1% Bitcoin oligopoly, which currently holds about 99% of the entire Bitcoin supply (sounds familiar?).

So it seems that all of these schemes do a very good job in decentralizing the technical contribution needed to keep the network up and running, but have very little to do with making decisions, improvements and progress. However, it should be self evident that every system that involves genuine people, as automated and well designed as it first may appear to be, will at some point require adjustments, all of which will most probably necessitate decisions, have consequences for various interest groups and be subject to criticism. All these decisions and adjustments do not only require means to form an informed conesus, they also require a compensation mechanism that encourages improvement and gains the attention of highly skilled professionals – and above all – a sybil proof scheme to keep the system truly decentralized.

But is that even possible? Could we play the same trick, PoW plays on computing power, on human contributions to an evolving organisation? Including assessment of value, establishment of consensus and compensation via cryptocurrency?

At Backfeed we believe that the answer to this question is yes, and we’ve developed exactly such a mechanism, which not by accident goes under the name Proof of Value, or PoV, " (http://magazine.backfeed.cc/the-bitcoin-debacle-making-the-case-for-decentralized-governance/)

More Information

Blockchain Consensus Mechanisms