本文来自波卡百科(Polkadot Wiki)的[基础知识]部分。
共识是对一种共同的状态达成一致的方法。为了使区块链的状态继续创建并向前推进,网络中的所有节点都必须一致并达成共识。这是去中心化网络中的节点能够保持彼此同步的方式。如果一个去中心化的区块链中节点没有共识,就无法确保一个节点相信的真实状态被其他节点所共享。共识的目的是在参与者都有自己“主观观点”的网络中,提供关于状态的“客观观点”。它是这些节点进行通信并达成一致的过程,并且能够生产出新的块。
现在工作量证明(PoW)和权益证明(PoS)已经被用于表示区块链机制的一种简写,但这并不能说明全部情况。PoW 是一种对区块生产者达成一致的方法,也是完全的中本聪共识(Nakamoto Consensus)的一部分,该共识还包括链选择算法(比特币中的最长链机制)。类似地,PoS 是一组用于选择验证人节点的规则,它并不是特指一个链的选择规则,或者一个链如何达到最终性(finality)。通常在节点之间,PoS 算法与拜占庭协议算法是互相结合的。例如,Tendermint 是一个实用的拜占庭容错算法,它使用 PoS 作为其验证人节点的选择方法。
尽管在达成去中心化共识方面简单而有效,但使用中本聪共识的工作量证明消耗了海量资源,而且还没有经济性或可证明的最终性,而且缺乏有效的措施来抵制垄断联盟。
波卡创始人Gavin Wood已向乌克兰官方地址捐赠29.8万枚DOT:3月1日消息,波卡创始人Gavin Wood在社交媒体上发布了其向乌克兰官方DOT地址进行捐赠的交易记录。根据波卡浏览器信息,目前乌克兰官方地址中的DOT数量已经达到310,748.2枚,总价值近600万美元,其中298367.2枚由Gavin Wood捐赠。[2022/3/1 13:30:47]
运行 PoW 的纯中本聪共识区块链只能实现概率最终性的概念,然后去达成最终的共识。概率最终性是指在网络和参与者的某些假设下,如果我们看到创建在给定区块上的几个区块,就可以估计该区块终结的概率。最终的共识意味着,在未来的某个时刻,所有节点都将同意一组数据的真实性。这一最终共识可能需要很长时间,也无法提前确定需要多长时间。然而,诸如 GRANDPA 或 Ethereum 的 Casper FFG 这样的最终性工具的设计是为了对区块的最终性提供更有力和更快的保证,特别是,在拜占庭协议的某些过程发生后,它们永远无法恢复。不可逆共识的概念就被称为可证明的最终性。
在 GRANDPA 文档中,它被这样表述:
如果协议中的 oracle A 在一段未指明的时间后向所有参与者返回相同的值,那么我们称它是最终一致的。
波卡生态概念板块今日平均跌幅为1.32%:金色财经行情显示,波卡生态概念板块今日平均跌幅为1.32%。26个币种中3个上涨,23个下跌,其中领涨币种为:CHI(+56.19%)、AKRO(+5.49%)。领跌币种为:KTON(-14.33%)、POLY(-7.10%)、DOCK(-6.88%)。[2021/7/9 0:40:31]
混合共识
当我们谈到 Polkadot 的共识协议时,大家经常看到两个缩略词,GRANDPA 和 BABE。我们同时提到了这两个词是因为 Polkadot 使用的是混合共识。混合共识可以将最终性工具从区块生产机制中分离出来。
这是一种在 Polkadot 中获得概率最终性(总是可以产生新区块的能力)和可证明最终性(在没有逆转机会的规范链上具有普遍一致性)好处的方法。它还避免了每种机制的缺点:概率最终性中不知不觉地遵循错误分叉的可能,以及可证明最终性中“暂停”(无法产生新的块)的问题。通过结合这两种机制,Polkadot 可以快速地生成区块,而较慢的最终性机制则可以在单独的进程中运行以完成区块,而不必承担交易处理较慢或暂停的风险。
混合共识在过去也曾被提起过。值得注意的是,在以太坊改进建议 EIP 1011 中,曾提议将混合共识作为以太坊向的 PoS 过渡的一步(现已失效),该建议指定了 Casper FFG。
火币设立500万美元波卡生态支持基金,助力波卡生态发展:据官方消息,12月4日火币创新实验室正式宣布设立价值500万美元的“波卡生态支持基金 ”(Polkadot Ecosystem Support Fund),推动波卡生态的发展。
该基金主要为波卡生态中的开发者、活动发起者、内容创作者、波卡大使等任何计划为波卡生态做贡献的个人和组织提供赞助。
为支持波卡生态在全球范围内更好地发展,火币创新实验室将重点赞助以下关键领域:
1) 技术类:技术workshop、项目开发;
2) 活动类:波卡生态线下+线上活动、meetup、黑客马拉松活动等;
3) 内容创作者:包括图、文、视频等,形式不限,以及波卡垂直自媒体账号等;
4) 波卡国库,Kusama国库已拨款项目中对波卡生态有较大帮助的项目。
详情请查看火币官网公告。[2020/12/4 13:59:38]
BABE(Blind Assignment for Blockchain Extension)是在验证节点之间运行并确定新块生产者的区块生成机制。BABE 作为一种算法可以与 Ouroboros Praos 相比较,在链选择规则和 slot(验证人插槽)时间调整方面有一些关键的区别。BABE 根据 stake 和使用 Polkadot 随机循环机制将区块生产的 slot 分配给验证人。
波卡周报:以自动方式启动大于1000个验证人的提案已通过:波卡Polkadot今日在官方平台更新本周进展,主要包括:1.7月6日,Parity工程师Jam提出以一种自动的方式,缓慢有度量的启动大于1000个验证人的过程。目前该议案已经投票通过,并开始执行;2.7月7日,波卡发布新的视频,提醒2017年DOT分配参与者,当时的DOT分配是通过Parity的钱包生成的。此过程不再得到广泛支持,并且与当前的BIP39标准不兼容。3.7月7日,波卡发布Gavin分享波卡治理的最新活动视频,去中心化加密经济系统是经济上强大的实体,控制着非常大的价值(亿万甚至数十亿美元)。治理对于最大化这些资源至关重要。截止发文,波卡主网的staking数据:波卡目前的版本:Polkadot CC1, version 13;现阶段:第二阶段NPoS,可进行提名和验证人设置;全网已发行(映射)DOT:831.7万;验证人:197个;候选验证人:178个;提名人:748个;抵押率:54.98%,即457.3万个DOT正在进行staking;上一个era奖励:1,821个DOT,一个ear=24小时。[2020/7/12]
Polkadot 中的验证人将参与每个 slot 的抽签,通过这个抽签告诉验证人是否是该 slot 的区块生成候选人。Slot 是不连续的时间单位,通常为 6 秒。由于这种随机机制,多个验证人可能是同一个 slot 的候选者。其他时候,一个 slot 可能是空的,从而导致区块时间不一致。
Polkadot:波卡适合企业级应用 Kusama适合早期初创项目:公链项目波卡Polkadot撰文介绍Kusama与波卡两个项目的具体区别,Kusama和波卡是两个独立的网络,但都是基于类似的代码库建立,Kusama拥有更快的治理参数和进入门槛,而波卡相对更保守,以更慢和更有条理的治理和升级过程来优先考虑稳定性和可靠性。Kusama更适合进行大胆的实验和早期的部署,而波卡是为了高价值和风险规避的应用程序所设计的。从具体的用户案例来说,波卡认为,推荐企业级或B2B应用、金融应用或需要银行级别安全性、稳定性和健壮性的高价值应用在波卡网络中运行,推荐早期的初创网络、实验性想法在Kusama网络中运行。[2020/4/17]
一个 slot 有多个验证人
当在一个给定 slot 中有多个验证人是区块生成候选者时,所有验证人都要生成一个区块并将其广播到网络中。此时这是一场比赛。区块最先到达大部分网络的验证人会获胜。根据网络拓扑和延迟,这两个链将继续生产区块,直到最终确定启动并切断分叉。请参阅下面的“分叉选择”了解其工作原理。
Slot 中没有验证人
当随机抽签滚到足够低的位置,没有验证人获得区块生产的资格时,一个 slot 可能没有区块。我们通过在后台运行二级循环式验证人选择算法来避免这种情况。通过该算法选择生成块的验证人总是可以生成区块,但如果同一 slot 也从 VRF 选择的验证人生成主区块,则忽略这些副区块。因此,一个 slot 可以有一个主区块或一个副区块,并且不会跳过任何 slot 。
VRF:https://wiki.polkadot.network/docs/en/learn-randomness
有关 BABE 的更多细节,请参阅研究草案文档。
https://research.web3.foundation/en/latest/polkadot/BABE/Babe.html
GRANDPA: 最终性工具
GRANDPA (GHOST-based Recursive ANcestor Deriving Prefix Agreement) 是为 Polkadot 中继链实现的最终性小工具。
它在一个部分同步的网络模型中工作,只要 2/3 的节点是诚实的,并且能够在异步设置中处理 1/5 的拜占庭节点。
一个显著的区别是,GRANDPA 在链上而不是区块上达成协议,大大加快了最终确定过程,即使在长期的网络分区或其他网络故障之后也是如此。
换句话说,只要超过 2/3 的验证人证明一个包含某个块的链,所有指向该块的块都将立即完成。
协议
有关协议的完整说明,请参阅论文的标题 3 部分。
https://github.com/w3f/consensus/blob/master/pdf/grandpa.pdf
实施
Rust 是 Substrate 框架的一部分。
https://github.com/paritytech/substrate/blob/master/frame/grandpa/src/lib.rs
有关更多详细信息,请参阅 W3F 研究页上的 GRANDPA。
https://research.web3.foundation/en/latest/polkadot/GRANDPA.html
分叉选择
带着 BABE 和 GRANDPA 混合机制,波卡的分叉选择变得清晰起来。BABE 一定要建立在 GRANDPA 最终确定的链上。当在最终确定之后有分叉时,BABE 通过构建具有最主要区块的链来提供概率最终性。
在上面的图像中,黑色块是已终结的。一个是主区块,两个是副区块。即使最上面的链是最新终结块上最长的链,但它不合格,因为它在评估时获得首选的次数比下面那条少。
中本聪共识
中本聪共识由最长链规则组成,使用工作量证明作为其防止女巫攻击和领导人选举的机制。
中本聪共识只给了我们概率最终性。概率最终性表明,过去的某个区块的安全程度,仅取决于它拥有的确认数量,或在该区块上构建的区块数量。随着工作量证明链中构建在某特定区块上的区块越来越多,这条链也会花费更多计算资源。然而,包含了该区块的链不一定总是被认可的链,因为某位具有无限资源的参与者可能构建竞争链,并花费足够的计算资源来创建不包含特定块的链。在这种情况下,比特币和其他 PoW 链使用的最长链规则将转移到这条新的链,让新链成为主链。
PBFT / Tendermint 共识
请参阅与 Cosmos 对比文章中的相关内容。
https://wiki.polkadot.network/docs/en/learn-comparisons-cosmos#consensus
Casper FFG
GRANDPA 和 Casper FFG(友好型最终性工具 Friendly Finality Gadget)的两个主要区别是:
在 GRANDPA 中,不同的投票者可以同时为不同高度的块投票
GRANDPA 只依赖最终的块来影响底层块生产机制的分叉选择规则
Casper CBC
Coming soon!
资源
GRANDPA 论文:GRANDP 最终性工具的学术描述。包含算法的形式化证明。
https://github.com/w3f/consensus/blob/master/pdf/grandpa.pdf
Rust 实现:一个参考文档和附带的 Substrate 模块。
https://github.com/paritytech/finality-grandpa
原文:https://wiki.polkadot.network/docs/en/learn-consensus
翻译:PolkaWorld
DeFi早期就像是西部淘金探险,充满机遇,也充满风险。其中最大的风险是智能合约的被黑风险,可能会导致用户资产全部损失;还有抵押资产(如ETH)的黑天鹅风险,会导致用户损失惨重.
1900/1/1 0:00:00我们刚刚在Chainalysis Reactor和KYT中启动了对两种加密货币Dash和Zcash的支持。作为最流行的两种“隐私币”(其协议中编码了增强隐私功能的加密货币),它们占每日报告交易量中的15亿美元以上.
1900/1/1 0:00:00大盘昨天止跌9250-9300美金,随后开启弱反弹走势,先后突破了9400、9500美金,凌晨两次放量,站上了9600美金这个前期压力区间,而在关键压力位置放量突破,实为有效突破,日内有了再次冲击10000美金的动能.
1900/1/1 0:00:00各级别性质:日线-盘整,4小时-上涨,1小时-上涨截图来自OKEX比特币季度合约4小时图:对于行情我从两个角度来说,一个角度是客观的走势状态以及根据客观走势所制定的应对策略,另外一个角度是基于经验的主观预判.
1900/1/1 0:00:00我在2019年12月第一次深入研究稳定币。如果你当时告诉我,该领域的代币市场供应量将突破100亿美元,用户数可能接近10万,我可能会认为你是个乐观主义者.
1900/1/1 0:00:00比特币于北京时间5月12日03:23在区块高度630000完成区块奖励减半,区块奖励从12.5BTC减半至6.25BTC。时隔30天,链上数据、行情指标发生了哪些变化?通过数据对比我们找寻其中反映的市场信号.
1900/1/1 0:00:00