[转]工作量证明(PoW)权益证明(PoS)和委任权益证明(DPoS)区别

Both in the glossary and in some of our previous posts we've touched on mining and the two main methods in use today: PoW and PoS. We'll discuss each method in this article, but first we'd like you to read the fundamentals: intro to cryptocurrency and intro to blockchain so that you can follow along nicely.
Proof of Work
With Proof of Work, your miner (the computer or group of machines under your control) does the following:
takes from the internet the order to process some transactions. In other words, it takes from the miners geographically closest to it a set of transactions it's supposed to verify, in which it is written who's sending how much of a cryptocurrency to whom.
the miner then builds a block – a list of transactions that need to be validated. How many transactions per block depends on the size of those transactions. Those which send from many addresses to many addresses are much larger than those sending money from one to maybe one or two addresses, as previously explained.
the miner combines all the data from this block (literally glues them together), adds some more data into the mix, and then tries to guess the final bit of data which will result in a valid hash when hashed. For example, in Bitcoin, the hash has to be prepended by a certain number of zeroes. The computer, thus, does the following: “Try summing up all of this and the number 1. Incorrect? Okay, try summing up all of this and number 2. Incorrect? Okay, try…”
the computer's processing power will dictate how many of such guesses per second it can do.
after a successful guess, the computer gets a block reward which is currently 12.5 BTC in Bitcoin, or 6.18 XMR in a system like Monero, etc.
The profits of mining this way will vary by hardware, software, and currency – we've gone into some detail here.
A mining rig
The advantages of PoW are:
outside factor effect. With the PoW mechanism, the production and circulation of money requires external factors like power and hardware. It is not possible to get the expense of power or production of hardware back. Why this is important will be explained in the PoS section below.
it's simple to pool mine. It's easy to just grab another computer's calculated hashes, combine them into one big pool of hashes, and have many computers hashing together, splitting the profits.
it's useful for areas with surplus electricity, like China with its hydroelectric dams.
The disadvantages of PoW are:
PoW isn't possible on smaller and weaker devices like smartphones. Not only do these devices lack the space to store hundreds of gigabytes of blockchain data, but they're also not computationally powerful enough to mine effectively. The battery would be emptied very quickly, not really accomplishing anything.
PoW mining is slow. With Bitcoin, it's one block every 10 minutes, and the transactions that fit inside that block will be processed. Anything else has to wait for the next block. This causes long waiting periods or expensive transactions (those that attach a higher transaction fee are processed faster).
PoW is already spending enormous amounts of electricity. Simply mining a single block costs more electricity than some countries need in a whole year. This will only get worse. The dependence of a cryptocurrency on electricity is unsustainable in all but the most stable environments. This dependency also means that a more expensive electricity bill or a government-imposed limit to the types of spending electricity can be used for can stop an entire cryptocurrency.

PoW allows for the centralization of mining. China already has 80% of the world's Bitcoin hashing power, and if their cartels join forces, we've got an 80% attack, not a 51% attack.
Because the block reward keeps decreasing, miners keep getting fewer and fewer tokens of a mined blockchain. At the same time, as more people are mining, the mining difficulty increases, so it gets harder and harder to mine. This makes mining more and more expensive compared to profits, and fewer people bother with it, exiting the system. The currency self-sabotages. Less hashpower among the miners also makes the 51% attack more likely.
As an example, Bitcoin might still rise to some $25000 or $50000 through the next 5 years or so, but as transactions get moved off chain onto solutions like the Lightning Network (designed to transact small amounts on the side, without waiting for validation from the main chain, thus moving fees off the main chain too), mining becomes even less profitable. With block rewards approaching 0 and transaction fees all but gone, this will further escalate the miners' departure from the network, opening it up to a 51% attack or total stagnation.
Proof of Stake (PoS)
Proof of Stake
With Proof of Stake, no complex equations need to be guessed so powerful computers are no longer necessary, and with them, there's less need for electricity.
Examples of PoS coins: Ethereum (soon), BlackCoin, CoinMagi, Diamond, Mintcoin, OKCash, HyperStake, Quotient, etc.
Let's take Ethereum as an example. Proof of Stake works by randomly selecting a “validator” – an account with enough Ether to be considered a stakeholder, someone who's invested into the ecosystem. Initially, that would be 1000 Ether. The more Ether a validator has, and the longer it has been on the candidate's account, the more chance that they'll be picked. This validator then stakes the Ether (locks it up for a period of months) and guarantees to uphold the laws of the ecosystem – to truthfully validate transactions. Once a new transaction arrives, it's added to the block, validated, and the block is sent to the other validators for confirmation. For this work, the validator gets the transaction fees of the transactions they processed.
Because there's no more need to guess combinations and processing transactions is easy and cheap, it's easy to generate fake ones. But because validators have to reconfirm the information (like students in a school correcting each other's exam), it's almost impossible to think a bunch of validators will all confirm a malicious one's report. For this to happen, the malicious group has to not only be randomly selected at the same time (impossible), but also have 51% more Ether than the rest of the randomly selected validators who could have anywhere from the minimum to an astronomical amount of Ether.
Furthermore, if a validator is found to be malicious, they lose their stake and are kicked off the network. Cheating becomes an incredibly expensive sport. Someone with enough money invested into the Ethereum ecosystem to become a validator has no reason to sabotage this ecosystem because their holdings lose value (because of the scandal they caused if successful, or because they lose their stake if the cheating attempt fails).
The advantages of PoS are:
- speedy processing of transactions
- contrary to PoW, not harmful to the environment
- not vulnerable to a state attack: no need for enormous amounts of electricity
- can be performed on smaller and weaker devices because there's no need to download the whole blockchain, and since there's no need for much computational power either, can be easily adopted by the mainstream
The downsides of PoS are:
no external factors. Given that the stake is a part of the system itself, the whole game is internal. This means that someone with enough money to invest exclusively into the destruction of this system can do so by investing only money, as opposed to Bitcoin where they need to invest money, time, expertise, hardware, electricity, and more – all external factors.
the rich get richer. Those who have had their Ether the longest (the age of the Ether in an account is as much of a factor as the amount is) also have the best chances of becoming validators. This means their chances to earn more Ether on top of their existing pile also increases. This is different from Bitcoin's “rich get richer” system because there the rich have to keep investing in hardware and knowledge to remain competitive. It also hurts more to sabotage the network.
Delegated Proof of Stake (dPoS)
Voting and politics
In this PoS type, 101 delegates are picked by the community by voting with the cryptocurrency in question, e.g. 1 LISK 1 vote. Some blockchains have a different number than 101, but that's the default.
Delegates cannot modify transactions, only delay their inclusion into a block, but this has safety nets built into the protocol so prolonged exclusion of a transaction becomes expensive. This is also the only “technical” power these delegate validators have, and should they abuse the power, the community can instantly see it and vote them out.
Delegates get rewards for validating transactions, just like in PoS, so cheating again makes no sense because they lose both their stake and their role in the system. The rewards they do get they can spend on lobbying, spreading the word about the currency, cash it out into earnings, etc.
Some DPoS systems work in such a way that they can define a burn rate: a percentage of tokens to be destroyed upon getting a reward. For example, a burn rate of 40% will destroy 40% of the tokens received by a delegate. Destroying tokens leads to deflation, which leads to increased value of the remaining tokens – both those tokens in the hands of the delegates, but also the tokens in people's wallets around the world. It's like everyone who uses the currency gets dividends, because their money becomes more valuable automatically. The remaining 60% of tokens can, of course, still be used for anything the delegate wants to use them for.
Advantages of dPoS:
a more even distribution of block rewards. People will elect only those delegates who give them the most rewards, so the causal users and not just big holders will be rewarded.
real-time voting security. Any malicious action can be immediately detected by the voters and the malicious delegate can be voted out of the system.
same as with PoS, it's very environment friendly and easy to execute on smaller and weaker devices. It's harder to stop because it doesn't depend on external factors controller by the state, like electricity.
Disadvantages of dPoS:
it's possible that the delegates get organized into cartels. This already happened with the LISK blockchain which, even though it hasn't been released as a full product yet, has a cartelized dPoS in which 51 of the 101 delegates have joined and formed a “Lisk Elite Group” in which they vote for each other and don't distribute their gains to any casual user who hasn't voted for all of them. This is identical to the modern political system.
because fewer people are in charge of keeping the network alive, it's easier to stop it or organize a 51% attack (see above point about cartels).
DPoS is used by currencies like Bitshares, Crypti, Lisk, RISE, ARK, etc.
Proof of Authority
Proof of Authority is when certain nodes are selected as block validators and they stake neither their money nor their electricity, but their reputation.
The way it works is as follows: when setting up the network / blockchain, certain nodes are selected as allowed to seal blocks. These nodes will usually provide some kind of proof of identity to prove that they're trustworthy. Plenty of such unrelated nodes need to be selected for the system to become viable. If a node is found to be in violation of protocol rules, that node is kicked off the network and cannot rejoin because it is banned based on identity. The stake is that it cannot play with others any more.
PoA is only useful in private or closed or specific-use-case blockchains. For example, testnets use it (like Ethereum's Kovan) and cartels might use it. Airlines, hotels, and banks are ideal candidates – they don't have to like each other or trust each other, but it's in their best interest to work together and be truthful with each other in order to force the prices to stay up so there's no direct competition. A PoA blockchain is the perfect solution – the identity violating the rules, i.e. United Airlines, is kicked off the consensus and can no longer participate, and this destruction of trust is much more harmful to them as a business than the effect their cheating in the network could have had. The involvement of identity in the staking mechanism directly encourages the validators to remain truthful.
Conclusion
There are other methods, too – like Proof of Importance in use by NEM (XEM). It's similar to PoS in that it values wallets with over 10000 XEM and calculates their importance score based on their holdings and their participation in the network – the more transactions are bound to an address, the more important it is as an active participant. But this too has obvious downsides.
None of the methods is perfect and each has its own set of problems keeping extremely smart people busy. When and how much progress we'll see remains to be seen but one thing is certain – the progress is coming, and it'll be the turning point at which cryptocurrency goes mainstream.
相关资料:
http://www.sohu.com/a/313298052_120112221
[转]工作量证明(PoW)权益证明(PoS)和委任权益证明(DPoS)区别的更多相关文章
- 任何国家都无法限制数字货币。为什么呢? 要想明白这个问题需要具备一点区块链的基础知识: 区块链使用的大致技术包括以下几种: a.点对点网络设计 b.加密技术应用 c.分布式算法的实现 d.数据存储技术 e.拜占庭算法 f.权益证明POW,POS,DPOS 原因一: 点对点网络设计 其中点对点的P2P网络是bittorent ,由于是点对点的网络,没有中心化,因此在全球分布式的网
任何国家都无法限制数字货币.为什么呢? 要想明白这个问题需要具备一点区块链的基础知识: 区块链使用的大致技术包括以下几种: a.点对点网络设计 b.加密技术应用 c.分布式算法的实现 d.数据存储技 ...
- 区块链共识机制之工作量证明(POW)
像比特币.以太坊.NXT.Bitshares等这些区块链系统,其本质上是一种加密经济组织,它建立在点对点网络上,是去中心化.无管辖的,由密码学.经济学和社会共识来共同维护.这些加密网络因各种原因有着多 ...
- 【区块链Go语言实现】Part 2:工作量证明机制POW
0x00 介绍 在上一篇文章中,我们建立了一个非常简单的数据结构,它是区块链数据库的本质.并且,我们实现了以类似链条关系的方式向其中添加区块的功能:每个区块都会链接到前一区块.然而,我们实现的区块链有 ...
- [GO]使用go语言实现比特币的工作量证明
之前的博文已经实现了区块连的基本的工作原理,但在比特币系统中有一个很重要的概念:工作量证明POW,在比特币系统中它的作用就是在十分钟左右的时间内只有一个有能够记帐并得到奖励 在之前的博文中,区块的哈希 ...
- [区块链] 共识算法之争(PBFT,Raft,PoW,PoS,DPoS,Ripple)
近几天对区块链中几种常见的共识机制(PBFT,Raft,PoW,PoS,DPoS,Ripple)进行了总结.尽量使用简单易懂语言,篇幅较大,想了解的可以只读每个算法介绍中前边的原理.本篇文章主要参考& ...
- 区块链共识机制:POW、POS、DPOS、PBFT、POOL
共识机制作为区块链的关键技术之一,在业务吞吐量.交易速度.不可篡改性.准入门槛等等方面发挥重要的作用. 区块链是去中心化的,没有中心记账节点,所以需要全网对账本达成共识.目前有POW.POS.DPOS ...
- 正确看待POW与POS,总结与区分
POW:Proof of Work,工作证明. 比特币在Block的生成过程中使用了POW机制,一个符合要求的Block Hash由N个前导零构成,零的个数取决于网络的难度值.要得到合理的Block ...
- 区块链知识博文1: 共识算法之争(PBFT,Raft,PoW,PoS,DPoS,Ripple)
注:这是本人读到的关于共识算法最全和最好的分享博文,系统的介绍了拜占庭容错技术以及共识算法的原理和常用共识算法,原文链接请见后. 目录 一.拜占庭容错技术(Byzantine Fault Tolera ...
- IPFS:Filecoin和复制证明
这篇文章主要来讲一下Filecoin协议里面的复制证明(Proof of Replication),由于协议涉及到很多概念,可能看起来有点晕乎乎的,小编尽量把复杂问题简单化 ,力求给大家做大普及IPF ...
随机推荐
- 安装python3并新建python3的虚拟环境
安装依赖 yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel -y 下载P ...
- NEKO's Maze Game
NEKO#ΦωΦ has just got a new maze game on her PC! The game's main puzzle is a maze, in the forms of a ...
- linq和匿名方法、委托、匿名委托、lambda
委托相当于JavaScript中的闭包,c++中的函数指针. c#为了引进这个函数指针,将其进行包装成“委托”,同时将非托管的变成托管的. 1.最初的委托该怎么用 弊端:写的代码量过多,还要写一个显示 ...
- Linux oracle安装 内核参数讲解
在安装Oracle的时候需要调整linux的内核参数,但是各参数代表什么含义呢,下面做详细解析. Linux安装文档中给出的最小值: fs.aio-max-nr = 1048576 fs.file-m ...
- k线中转器
自动同步服务器k线,将交易日k线存入共享内存,交易平台直接去共享内存取想要的数据. 默认提供期货1.3.5分钟.日线数据.如果想要自定义,可以通过copydata向它发送请求,可以提供任何周期,任何偏 ...
- echo -e 实现color output
拓展: cp 简化: c'p -rv /data/project/test {.txt,_bak.txt}
- SpringMVC框架应用
SSMSpringMVC框架 1. MVC设计模式:模型.视图.控制器: 视图:负责格式化数据并把他们呈现给用户,包括数据展示.用户交互.数据验证.界面设计等功能.对应组件:JSP或者HTML ...
- http断点续传的原理
——————————————先讲原理,如下:—————————————————— 举一个详细的例子: 一般场景,要访问的域名:www.jizhuomi.com/android,文件名为down.zip ...
- Intellij-Idea使用小细节
SpringMVC项目部署到tomcat中文乱码,tomcat的配置里面加上 -Dfile.encoding=UTF-8
- Linux基础命令小结(超全!!)
Linux目录结构 1.bin 存放经常使用的指令比如ll,cp 2.sbin 系统管理员使用的系统管理指令 3.home 存放普通用户的住目录 4.root 系统管理员的用户主目录 5.boot 存 ...