Proof of work
From Wikipedia, the free encyclopedia
Jump to navigationJump to search
This article may require cleanup to meet Wikipedia's quality standards. The specific problem is: Needs verification and documentation Please help improve this article if you can. (May 2015) (Learn how and when to remove this template message)
Proof of work (PoW) is a form of cryptographic zero-knowledge proof in which one party (the prover) proves to others (the verifiers) that a certain amount of computational effort has been expended for some purpose. Verifiers can subsequently confirm this expenditure with minimal effort on their part. The concept was invented by Cynthia Dwork and Moni Naor in 1993 as a way to deter denial-of-service attacks and other service abuses such as spam on a network by requiring some work from a service requester, usually meaning processing time by a computer. The term "proof of work" was first coined and formalized in a 1999 paper by Markus Jakobsson and Ari Juels. Proof of work was later popularized by Bitcoin as a foundation for consensus in permissionless blockchains and cryptocurrencies, in which miners compete to append blocks and mint new currency, each miner experiencing a success probability proportional to the amount of computational effort they have provably expended. PoW and PoS (Proof of Stake) are the two best known consensus mechanisms and in the context of cryptocurrencies also most commonly used.
A key feature of proof-of-work schemes is their asymmetry: the work must be moderately hard (yet feasible) on the prover or requester side but easy to check for the verifier or service provider. This idea is also known as a CPU cost function, client puzzle, computational puzzle, or CPU pricing function. It is distinct in purpose from a CAPTCHA, which is intended for a human to solve quickly, while being difficult to solve for a computer.
Contents
1 Background
2 Variants
3 List of proof-of-work functions
4 Reusable proof-of-work as e-money
4.1 Bitcoin-type proof of work
4.2 Energy consumption
5 ASICs and mining pools
6 See also
7 Notes
8 References
9 External links
Background
One popular system, used in Hashcash, uses partial hash inversions to prove that work was done, as a goodwill token to send an e-mail. For instance, the following header represents about 252 hash computations to send a message to calvin@comics.net on January 19, 2038:
X-Hashcash: 1:52:380119:calvin@comics.net:::9B760005E92F0DAE
It is verified with a single computation by checking that the SHA-1 hash of the stamp (omit the header name X-Hashcash: including the colon and any amount of whitespace following it up to the digit '1') begins with 52 binary zeros, that is 13 hexadecimal zeros:
0000000000000756af69e2ffbdb930261873cd71
Whether PoW systems can actually solve a particular denial-of-service issue such as the spam problem is subject to debate; the system must make sending spam emails obtrusively unproductive for the spammer, but should also not prevent legitimate users from sending their messages. In other words, a genuine user should not encounter any difficulties when sending an email, but an email spammer would have to expend a considerable amount of computing power to send out many emails at once. Proof-of-work systems are being used as a primitive by other more complex cryptographic systems such as bitcoin which uses a system similar to Hashcash.
Variants
There are two classes of proof-of-work protocols.
Challenge–response protocols assume a direct interactive link between the requester (client) and the provider (server). The provider chooses a challenge, say an item in a set with a property, the requester finds the relevant response in the set, which is sent back and checked by the provider. As the challenge is chosen on the spot by the provider, its difficulty can be adapted to its current load. The work on the requester side may be bounded if the challenge-response protocol has a known solution (chosen by the provider), or is known to exist within a bounded search space.
Proof of Work challenge response.svg
Solution–verification protocols do not assume such a link: as a result, the problem must be self-imposed before a solution is sought by the requester, and the provider must check both the problem choice and the found solution. Most such schemes are unbounded probabilistic iterative procedures such as Hashcash.
Proof of Work solution verification.svg
Known-solution protocols tend to have slightly lower variance than unbounded probabilistic protocols because the variance of a rectangular distribution is lower than the variance of a Poisson distribution (with the same mean).[further explanation needed] A generic technique for reducing variance is to use multiple independent sub-challenges, as the average of multiple samples will have a lower variance.
There are also fixed-cost functions such as the time-lock puzzle.
Moreover, the underlying functions used by these schemes may be:
CPU-bound where the computation runs at the speed of the processor, which greatly varies in time, as well as from high-end server to low-end portable devices.
Memory-bound where the computation speed is bound by main memory accesses (either latency or bandwidth), the performance of which is expected to be less sensitive to hardware evolution.
Network-bound if the client must perform few computations, but must collect some tokens from remote servers before querying the final service provider. In this sense, the work is not actually performed by the requester, but it incurs delays anyway because of the latency to get the required tokens.
Finally, some PoW systems offer shortcut computations that allow participants who know a secret, typically a private key, to generate cheap PoWs. The rationale is that mailing-list holders may generate stamps for every recipient without incurring a high cost. Whether such a feature is desirable depends on the usage scenario.
List of proof-of-work functions
Here is a list of known proof-of-work functions:
Integer square root modulo a large prime[dubious – discuss]
Weaken Fiat–Shamir signatures
Ong–Schnorr–Shamir signature broken by Pollard
Partial hash inversion This paper formalizes the idea of a proof of work and introduces "the dependent idea of a bread pudding protocol", a "re-usable proof-of-work" (RPoW) system.
Hash sequences
Puzzles
Diffie–Hellman–based puzzle
Moderate
Mbound
Hokkaido
Cuckoo Cycle
Merkle tree–based
Guided tour puzzle protocol
Reusable proof-of-work as e-money
Computer scientist Hal Finney built on the proof-of-work idea, yielding a system that exploited reusable proof of work (RPoW). The idea of making proofs of work reusable for some practical purpose had already been established in 1999. Finney's purpose for RPoW was as token money. Just as a gold coin's value is thought to be underpinned by the value of the raw gold needed to make it, the value of an RPoW token is guaranteed by the value of the real-world resources required to 'mint' a PoW token. In Finney's version of RPoW, the PoW token is a piece of Hashcash.
A website can demand a PoW token in exchange for service. Requiring a PoW token from users would inhibit frivolous or excessive use of the service, sparing the service's underlying resources, such as bandwidth to the Internet, computation, disk space, electricity, and administrative overhead.
Finney's RPoW system differed from a PoW system in permitting the random exchange of tokens without repeating the work required to generate them. After someone had "spent" a PoW token at a website, the website's operator could exchange that "spent" PoW token for a new, unspent RPoW token, which could then be spent at some third-party website similarly equipped to accept RPoW tokens. This would save the resources otherwise needed to 'mint' a PoW token. The anti-counterfeit property of the RPoW token was guaranteed by remote attestation. The RPoW server that exchanges a used PoW or RPoW token for a new one of equal value uses remote attestation to allow any interested party to verify what software is running on the RPoW server. Since the source code for Finney's RPoW software was published (under a BSD-like license), any sufficiently knowledgeable programmer could, by inspecting the code, verify that the software (and, by extension, the RPoW server) never issued a new token except in exchange for a spent token of equal value.
Until 2009, Finney's system was the only RPoW system to have been implemented; it never saw economically significant use.
RPoW is protected by the private keys stored in the trusted platform module (TPM) hardware and manufacturers holding TPM private keys. Stealing a TPM manufacturer's key or obtaining the key by examining the TPM chip itself would subvert that assurance.
Bitcoin-type proof of work
In 2009, the Bitcoin network went online. Bitcoin is a proof-of-work cryptocurrency that, like Finney's RPoW, is also based on the Hashcash PoW. But in Bitcoin, double-spend protection is provided by a decentralized P2P protocol for tracking transfers of coins, rather than the hardware trusted computing function used by RPoW. Bitcoin has better trustworthiness because it is protected by computation. Bitcoins are "mined" using the Hashcash proof-of-work function by individual miners and verified by the decentralized nodes in the P2P bitcoin network.
The difficulty is periodically adjusted to keep the block time around a target time.
Energy consumption
Since the creation of Bitcoin, proof-of-work has been the predominant design of peer-to-peer cryptocurrency. Many studies have been looking at the energy consumption of mining. The PoW mechanism requires a vast amount of computing resources, which consume a significant amount of electricity. Bitcoin's energy consumption can power an entire country.
However, there is no alternative design known that could replace proof-of-work but keeps its desirable attributes such as:[citation needed]
permissionless mining
fair distribution of coins
security against many known attacks
bootstrappability of new nodes in a hostile environment
graceful degradation and recovery even in the face of a successful attack or network failure
unforgeable and statically verifiable costliness
Also, there have been many attempts at making proof-of-work use non-specialist hardware. However, this is neither possible, because any specific proof-of-work function can be optimised with hardware, nor desirable, because specialist mining equipment improves security by committing miners to the specific network they are mining for.[citation needed]
ASICs and mining pools
Within the Bitcoin community there are groups working together in mining pools. Some miners use application-specific integrated circuits (ASICs) for PoW. This trend toward mining pools and specialized ASICs has made mining some cryptocurrencies economically infeasible for most players without access to the latest ASICs, nearby sources of inexpensive energy, or other special advantages.
Some PoWs claim to be ASIC-resistant, i.e. to limit the efficiency gain that an ASIC can have over commodity hardware, like a GPU, to be well under an order of magnitude. ASIC resistance has the advantage of keeping mining economically feasible on commodity hardware, but also contributes to the corresponding risk that an attacker can briefly rent access to a large amount of unspecialized commodity processing power to launch a 51% attack against a cryptocurrency.
bitcoin bbc bitcoin кран
1024 bitcoin
ethereum фото bitcoin atm half bitcoin machines bitcoin bitcoin exchanges купить ethereum ethereum график bitcoin приват24
bitcoin luxury blender bitcoin
collector bitcoin finney ethereum bitcoin api bitcoin sec future bitcoin service bitcoin вывод bitcoin обновление ethereum raiden ethereum bitcoin видеокарты blake bitcoin bitcoin инструкция bitcoin минфин wikileaks bitcoin ethereum заработок copay bitcoin generate bitcoin bitcoin безопасность top bitcoin bye bitcoin site bitcoin ethereum farm монета ethereum platinum bitcoin bitcoin видеокарта
keepkey bitcoin
bitcoin список monero windows Sponsored Contentbank bitcoin bitcoin страна bitcoin darkcoin
bitcoin maps bitcoin oil bitcoin download капитализация bitcoin bitcoin принцип game bitcoin bitcoin explorer check bitcoin korbit bitcoin bitcoin купить отзыв bitcoin ethereum пул bitcoin checker konvert bitcoin программа tether wechat bitcoin bitcoin status cryptonator ethereum analysis bitcoin bitcoin mine wiki ethereum bitcoin blue Supportbitcoin poloniex 2016 bitcoin виталик ethereum bitcoin airbit tether addon bitcoin 50 ютуб bitcoin 'Spurious 'technological' developments... are those which are encapsulated by a ceremonial power system whose main concern is to control the use, direction, and consequences of that development while simultaneously serving as the institutional vehicle for defining the limits and boundaries upon that technology through special domination efforts of the legal system, the property system, and the information system. These limits and boundaries are generally set to best serve the institutions seeking such control.... This is the way the ruling and dominant institutions of society maintain and try to extend their hegemony over the lives of people.'ethereum debian bitcoin коды tether clockworkmod эфир ethereum transactions bitcoin pixel bitcoin bitcoin исходники bitcoin государство bitcoin legal tether комиссии
bitcoin развитие кран ethereum рулетка bitcoin bcc bitcoin bitcoin vip bitcoin вложения bitcoin dance 6000 bitcoin 0 bitcoin ethereum заработать bitcoin книга bear bitcoin demo bitcoin tether комиссии tether пополнить ethereum перевод dog bitcoin dogecoin bitcoin ethereum chart bitcoin сша bitcoin рейтинг
bitcoin flapper ethereum blockchain bitcoin миллионеры bitcoin сбербанк
проекта ethereum
я bitcoin asics bitcoin bitcoin passphrase fasterclick bitcoin bitcoin casino bitcoin ферма бутерин ethereum bitcoin metal bitcoin me testnet bitcoin
iso bitcoin карты bitcoin rocket bitcoin earnings bitcoin algorithm bitcoin bitcoin foto bitcoin crush генераторы bitcoin
demo bitcoin is bitcoin blue bitcoin
bitcoin cache bitcoin рубль bitcoin софт alpari bitcoin сеть ethereum bitcoin formula korbit bitcoin
bitcoin demo биржа ethereum bitcoin sberbank доходность ethereum poloniex monero 22 bitcoin bitcoin фото
bitcoin markets bitcoin clicks bitcoin usa wmx bitcoin
ethereum вывод
криптовалюта monero bitcoin analysis bitcoin bear minergate monero wallet cryptocurrency rx470 monero See All Coupons of Best Walletsbitcoin links ethereum dag bitcoin neteller lite bitcoin bitcoin wallet бот bitcoin start bitcoin bitcoin пул bitcoin community coinder bitcoin шифрование bitcoin flappy bitcoin ethereum доходность
обвал ethereum bitcoin virus пожертвование bitcoin bitcoin database
6000 bitcoin бесплатные bitcoin bitcoin cz monero пул spots cryptocurrency ethereum bonus bitcoin conf bitcoin community dollar bitcoin bitcoin pool monero cryptonote bitcoin исходники bitcoin greenaddress bitcoin рбк Through a combination of first-mover advantage and smart design, Bitcoin’s network effect of security and user adoption is very, very hard for other cryptocurrencies to catch up with at this point. Still, this must be monitored and analyzed from time to time to see if the health of Bitcoin’s network effect is intact, or to see if that thesis changes for the worse for one reason or another.habrahabr bitcoin client ethereum ютуб bitcoin ethereum russia ethereum algorithm bitcoin vector bitcoin 1000 bitcoin комиссия bitcoin simple mikrotik bitcoin cubits bitcoin loans bitcoin blitz bitcoin ethereum frontier clame bitcoin generator bitcoin ethereum рубль bitcoin compromised bitcoin список ethereum dark api bitcoin facebook bitcoin шахта bitcoin matteo monero
обменник ethereum store bitcoin ico ethereum
seed bitcoin
котировка bitcoin home bitcoin обсуждение bitcoin monero coin расшифровка bitcoin ethereum org bitcoin gambling bitcoin play компания bitcoin bitcoin терминал график monero mixer bitcoin reklama bitcoin More philosophically, zero is emblematic of the void, as Aczel describes it:компиляция bitcoin ethereum windows лото bitcoin bitcoin ledger bitcoin обои buy tether bitcoin сокращение x bitcoin
tether пополнение bitcoin рубли биржа ethereum
value bitcoin mining bitcoin bitcoin cards faucet cryptocurrency bitcoin ферма love bitcoin ethereum news россия bitcoin книга bitcoin monero simplewallet bitcoin cms coins bitcoin рулетка bitcoin программа tether курс ethereum курса ethereum
bitcoin форки monero кран bitcoin rt pool bitcoin bitcoin калькулятор
значок bitcoin bonus bitcoin tether bitcointalk
эмиссия ethereum уязвимости bitcoin bitcoin кредиты bitcoin кошелек bitcoin vip bank cryptocurrency
bitcoin get bitcoin вконтакте yandex bitcoin stealer bitcoin сложность monero masternode bitcoin bitcoin loan bitcoin rub bitcoin dogecoin bitcoin приложение форки ethereum bitcoin super bitcoin картинка bitcoin wallpaper As the popularity of and demand for online currencies has increased since the inception of bitcoin in 2009, so have concerns that such an unregulated person to person global economy that cryptocurrencies offer may become a threat to society. Concerns abound that altcoins may become tools for anonymous web criminals.email bitcoin
Did you know?china bitcoin
bitcoin заработок car bitcoin bitcoin q карты bitcoin bitcoin transactions bitcoin автокран bitcoin обменник bitcoin цена bitcoin casinos
bitcoin block monero сложность ethereum habrahabr ethereum serpent bitcoin carding auction bitcoin car bitcoin ethereum addresses A typical currency has been mainly based on silver or gold. Hypothetically, it is known that a dollar given over at the bank will give you gold as an exchange (this isn’t practiced real life though). However, bitcoin is not gold based but based on mathematics.ethereum транзакции dorks bitcoin ethereum rotator bitcoin обзор bitcoin проблемы Instead of publicly demonstrating spend-authority and transaction values, the transaction metadata is encrypted and zk-SNARKs are used to prove that the transaction is valid. Zcash may very well be the first digital payment system that enables foolproof anonymity.bitcoin программирование
bitcoin buy bitcoin mine bitcoin symbol moon bitcoin bitcoin download pools bitcoin monero 1060 loan bitcoin бесплатный bitcoin bitcoin logo bitcoin биржа биржа monero iso bitcoin windows bitcoin подтверждение bitcoin bitcoin work фьючерсы bitcoin seed bitcoin
free bitcoin monero faucet валюта monero ethereum coins ethereum myetherwallet bitcoin fpga bitcoin favicon bitcoin scripting bitcoin страна gadget bitcoin bitcoin torrent
яндекс bitcoin миксер bitcoin bitcoin казино monero transaction plasma ethereum ethereum обмен bitcoin widget bitcoin кости tether yota
bitcoin store waves cryptocurrency wordpress bitcoin майнить bitcoin wallets cryptocurrency ethereum транзакции truffle ethereum top cryptocurrency lealana bitcoin смесители bitcoin hosting bitcoin график ethereum bitcoin подтверждение
total cryptocurrency
flex bitcoin ethereum логотип source bitcoin скрипт bitcoin bitcoin магазины locals bitcoin bistler bitcoin 1 ethereum bitcoin автокран mini bitcoin bitcoin server алгоритмы ethereum wmx bitcoin майнинга bitcoin bitcoin blockchain хайпы bitcoin
ethereum кран So yes, technically, your identity can be faked. If someone gets your private key, they can use it to send Bitcoin from your wallet to their wallet. This is why you must keep your private key very, very safe.bitcoin plugin battle bitcoin monero прогноз bitcoin dollar miner bitcoin etoro bitcoin заработать monero planet bitcoin bitcoin шахта bitcoin check
bitcoin hosting blacktrail bitcoin bitcoin символ ethereum адрес minergate ethereum mikrotik bitcoin криптовалюту monero qr bitcoin
Buterin gives the example of Ethereum developers setting up 'bounties,' rewards that can only be unlocked if someone accomplishes a task. In western movies, bounties are doled out to outlaws able to catch a person or criminal. But, in this case, they are rewarded for far less dangerous tasks, such as solving a difficult computational problem. bitcoin work Financial derivatives are the most common application of a 'smart contract', and one of the simplest to implement in code. The main challenge in implementing financial contracts is that the majority of them require reference to an external price ticker; for example, a very desirable application is a smart contract that hedges against the volatility of ether (or another cryptocurrency) with respect to the US dollar, but doing this requires the contract to know what the value of ETH/USD is. The simplest way to do this is through a 'data feed' contract maintained by a specific party (eg. NASDAQ) designed so that that party has the ability to update the contract as needed, and providing an interface that allows other contracts to send a message to that contract and get back a response that provides the price.bitcoin dat flash bitcoin bitcoin reklama pos bitcoin iota cryptocurrency пулы bitcoin bitcoin алгоритмы wallet cryptocurrency
goldsday bitcoin blue bitcoin bitcoin 4096 ethereum course bitcoin зарегистрироваться
accelerator bitcoin ethereum доходность tether io If the value transfer failed because the sender did not have enough money, or the code execution ran out of gas, revert all state changes except the payment of the fees, and add the fees to the miner's account.bitcoin пицца rx560 monero ethereum валюта халява bitcoin ethereum contract best cryptocurrency
cpa bitcoin dag ethereum bitcoin paypal 2 bitcoin
bitcoin безопасность logo ethereum is bitcoin bitcoin продажа bitcoin satoshi расчет bitcoin bitcoin сбербанк xpub bitcoin
анализ bitcoin
криптовалюта monero продажа bitcoin ethereum supernova bitcoin greenaddress bitcoin биткоин coinmarketcap bitcoin decred ethereum bitcoin биткоин bitcoin safe bitcoin гарант coinbase ethereum monero rur
ethereum game
bitcoin гарант bitcoin create Theoretically, yes. Practically, no. The concept of using another asset to secure the Ethereum network is called ‘economic abstraction’ (a good primer can be found here. This would involve miners / validators accepting tokens other than Ether in exchange for adding valid transactions to new blocks.ethereum сбербанк bitcoin antminer dat bitcoin график monero 16 bitcoin monero bitcointalk bitcoin strategy ethereum stats
bitcoin видеокарты ultimate bitcoin ethereum кошельки виталий ethereum
bitcoin обменник hashrate ethereum bitcoin blockchain bitcoin space bitcoin slots bitcoin io торрент bitcoin auction bitcoin bitcoin java monero пул рулетка bitcoin monero обменять ethereum 1070 bitcoin project деньги bitcoin bitcoin запрет network bitcoin ethereum scan aml bitcoin dapps ethereum ethereum testnet monero сложность
bitcoin партнерка multi bitcoin golden bitcoin bitcoin программирование bitcoin монет bitcoin адрес poloniex monero arbitrage cryptocurrency ethereum токены bitcoin серфинг client ethereum bitcoin habr bitcoin сбербанк bitcoin prominer monero pool bitcoin завести tether курс carding bitcoin bazar bitcoin bitcoin loan халява bitcoin настройка bitcoin rocket bitcoin ethereum доллар рынок bitcoin miningpoolhub monero ethereum course converter bitcoin algorithm bitcoin tether скачать trade cryptocurrency bitcoin виджет bitcoin wordpress bitcoin компьютер bitcoin вконтакте clockworkmod tether рейтинг bitcoin free monero bitcoin carding coingecko ethereum