Proof of Work: Difference between revisions
No edit summary |
|||
| Line 5: | Line 5: | ||
=Description= | =Description= | ||
From the Wikipedia: | '''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 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. | ||
| Line 12: | Line 12: | ||
(https://en.wikipedia.org/wiki/Proof-of-work_system) | (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) | |||
=Discussion= | =Discussion= | ||
Revision as of 00:49, 8 December 2015
= "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)
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)