DaoliCloud: Digital Asset Open Ledger for Inexpensive Web3 Services

博客05

为什么大多数情况出现得比较少的情况更频繁
I-BFT为什么能和怎样消除不确定性
为什么是唯一的历史记录
激励服务器为业余矿工提供可能

我们知道,DaoliCloud区块链使用拜占庭容错(BFT)算法来实现(提出、代表执行,或反映)大多数矿工的激励性赚钱积极性。这是ByzCoin算法中的一个开放成员资格的BFT算法(见此文)。在这个BFT公式中,BFT服务器群是由一个接一个地添加到区块链上的块来识别,最新上链的块是最年轻的BFT服务器成员。在BFT服务器成员处于排队状态的情况下,可以有一种奖励算法激励他们以集体协作工作的方式快速达成共识。因此,我们命名这种新的BFT算法为DaoliCloud激励-BFT”(I-BFT)。现在让我们来描述I-BFT算法的详细公式。

将排列的BFT服务器群组织成线性有序组,其顺序按一个接一个MicroBlock添加的区块链的顺序来定义。每一个组都包含一个奇数个数的BFT服务器。第一个工作组,称为 quorum-group-1 (这里quorum的意思为:一个集合里成员投票达到了最少多数情况),是一些服务器,这些服务器产生的MicroBlocks是最新被添加到区块链上的。该小组的每个成员使用结果随机算法以非交互方式选择一个KeyBlockTree,开始共识认证过程(见此文),对所选的KeyBlockTree进行数字签名,并广播输出签名结果。如果这个小组已经就认证一个唯一的KeyBlockTree达成了多数协议,那么整个I-BFT认证算法成功地完成了一个有效的认证输出。

否则,第二个工作组(名为 quorum-group-2)将开始继续进行认证工作,该工作组里的 BFT 服务器的年龄比quorum-group-1的服务器老。事实上,quorum-group-2 中的BFT服务器在早几个epoch时曾经是当时的quorum-group-1中BFT成员。与 quorum-group-1 的工作过程不同(组1中的服务器完全根据自己对Payload记录的正确性、公平性的判断以及从并行竞争者中选择中间大小的 KeyBlockTree),而quorum-group-2 服务器将一个接一个地按照被添加到区块链的年龄顺序逐个工作,最年轻的服务器最先开始工作。每个服务器还应尽量受到先前更年轻的服务器的正确和公平决策而做出了的签名的影响。如果一个服务器看到了早期若干个服务器形成了一个相对多数的共识决策是正确与公平的,则该服务器应该跟随这个所见到的早期若干个服务器已经做出的正确公平决策,添加自己对该正确公平决策予以同意的签名,使该添加的同意签名能够尽快让所见的相对多数共识变成绝对多数共识。这个后来的(老的) BFT 服务器同意早期签名结果的行为是我们设计的激励诱导协作。quorum-group-2 服务器的协作决策是明智的,因为这样做将增加其获得奖励的概率和份额。

这个过程可以继续下去。一旦就唯一认证达成多数协议, I – BFT 算法就完成了。该激励奖励策略可以设计为:算法完成的越早,对服务器在帮助达成协议方面的激励奖励越高。因此,从组– 2 开始, I – BFT 应迅速达成输出一个被多数I-BFT服务器协作共识同意的认证输出。一个事后的智能合约可以扫描 I – BFT 算法的输出结果,以相应地奖励激励币那些参与协作的服务器。奖励机制应该基于鼓励那些选择了最正确和最公平的 DB-Payload 记录文档,并快速形成了合作的原则。

极少数情况下,I – BFT 算法可能在用尽了quorum-group-n的努力(n为预先设置的数字)之后仍然无法达到一个被大多数服务器同意的认证。这种共识失败可能有一些原因,如参与并行竞争矿工不诚实,或这些 I – BFT 服务器偏偏就是不合作,等。无论如何,多亏了在 CR-Payroll 记录中排了序的“员工”作为后备劳动力,区块链将由这些后备劳动力继续正常运行,(见此文)。在下一篇文章中,我们将看到为什么 I – BFT 算法无法达到共识同意输出一个认证的情况是罕见的事件。

 

Copyright © 2020-2021 DaoliCloud Company. All rights reserved.

为什么大多数情况出现得比较少的情况更频繁

 

Copyright © 2020-2021 DaoliCloud Company. All rights reserved.

所有已知的区块链都不喜欢链分叉。允许区块链分叉意味着允许二次支出。无许可的区块链通过让矿工相互竞争以消耗更多有价值的资源来避免链分叉。例如,比特币和以太坊中的 PoW 矿工就是在用 ASICs GPUs ,甚至把它们来组成挖矿池来进行竞争不惜以消耗大量电力为代价。另一个例子是,最近热炒的 Chia Network 区块链推出的存储空间场证明”(PoSSF”)是以研磨盘的方式竞争,消耗硬盘,如果不是损坏硬盘的话。对于有许可的区块链,比如基于 Proof – of – Stake 的区块链来说,链分叉比二次支出更糟糕,是私有财产的抢劫。它们本质上是用传统的民营企业治理机制来防止链分叉。

DaoliCloud 区块链使用密码学来保护链不分叉。下面我们具体分析一下制造一个分叉链而又使其在密码学上不可区分会有多困难。

我们已经知道 DaoliCloud 区块链的历史是被加密保护的。I – BFT 服务器为某一个 MicroBlock进行数字签名 ,证明I – BFT 服务器达到了一个多数共识同意将此 MicroBlock 添加到区块链上。数字签名不能伪造这是一个合理的假设。之后来构造一个分叉,分叉的攻击者最好是说服一些排队的前 I – BFT 服务器从这个分叉开始为这个伪造的 MicroBlock 数字签名。这样的说服可能会在大量的贿赂和/或可怕的胁迫下成功。由于 MicroBlock 是被数字签名的,所以验证这个伪造的 MicroBlock 的公钥需要是 KeyBlockTree 中的一个叶节点。这个 KeyBlockTree 需要在区块链的早期历史中被记录。该记录要么是在‘大多数时间’情况下这个 KeyBlockTree 的 MicroBlock 根,表示为 MB,已获得早期的一组 I – BFT 服务器的多数共识认证,或者是在 较少时间’情况下, MB的公钥验证甚至会在区块链更早历史的 CR – Payroll 记录中。对于这两种情况中的任何一种,分叉攻击者的说服工作都必须更深地延伸到更早的区块链历史,等等。显然,分叉攻击者将确实需要在整个区块链历史中说服 I – BFT 服务器。

  DaoliCloud 区块链上分叉,而想使这个分叉在密码学上无法区分是不可能的。在下一篇文章中,我们将看到这个属性好的应用方面。

 

Copyright © 2020-2021 DaoliCloud Company. All rights reserved.

 

在前一篇文章的开头,我们讨论了已知的无许可区块链通过让矿工以消耗有用资源的竞争来避免链分叉。无许可性和有利可图的消耗资源的竞争很容易加剧目标资源的稀缺性。通常,目标资源变得如此稀少,可能威胁到这种无许可区块链的可持续性。

 

DaoliCloud稻粒云)区块链的安全性也是基于稀缺性的概念运气,这个稀缺资源。幸运的是,运气的稀缺不需要以浪费的方式消耗一些有价值的资源。DaoliCloud PoL 矿工是普通的计算机用户。事实上,DaoliCloud 矿工应该是业余爱好者,在中等偏低的设备上使用闲置的能力。(下一篇博客将阐明这一事实。) 结果证明,对于DaoliCloud 区块链来说,链分叉不是一个问题,相反,这是一个功能。

 

 

通过前面文章中的分析,我们已经知道了在DaoliCloud 区块链上分叉企图通过加密的强认证是不可能的。因此,分叉的攻击者需要开诚布公。只需在链上分叉而无需认证。由于运气对所有人都一视同仁,诚实的分叉攻击者可以编写分叉程序,并说服矿工通过运行分叉程序来扩展分叉。由于很容易发现违反身份验证的叉子,所以劝说必须是公开的。秘密分叉是不可能的,因为像解析器这样的智能合约可以立即自动发现分叉。对一个公开的分叉的正确处理方法就是把它列入黑名单。

 

 

事实上,我们认为对运气证明(PoL)为基础的区块链来说分叉是一个特性。应该允许使用公开分叉,这就是为什么我们不想把公开分叉提议者称为攻击者。一个公开的分叉对于一个有特色的应用程序非常有用。例如,为了满足区域执法要求,来自分叉链中的 CR – Payroll “员工的云资源服务按区域服务供应率支付,与地区法定支付的资金相当。这样, CR-Payroll 登记服务器可能会被吸引到一个地理区域中的共同定位,以满足该区域的数据主权要求。事实上,每个公开的 分叉都可以而且应该使用基于公共密钥的身份验证和简单的黑名单技术来使其他的每个分叉的未经身份验证的DB记录无效。这个工作可以通过智能合约等代码自动执行。

 

 

由其他分叉铸造的外国链硬币的相互交换可以在一些链外路线中完成,例如,通过一种法定货币。

 

Copyright © 2020-2021 DaoliCloud Company. All rights reserved.

 

Copyright © 2020-2021 DaoliCloud Company. All rights reserved.

比特币开始了开源 P2P 货币的时代。它还开创了区块链研究领域,激发了许多新的想法。稻粒云(DaoliCloud)的工作是由我们对区块链的一些想法激发的。

 

区块链的一个广泛思考的问题是可扩展性。比特币是一个非常慢的区块链,钱大多数用于一些奇异的交易。自比特币以来,已经出现了许多提高区块链可扩展性的建议。在我们的思考中,至少对于无许可的区块链,我们想将糟糕的可扩展性归因于排列竞争块的低效方法。这些区块链以赢家通吃输家无用的方式使用矿工。然而,由于成功者比失败者少得多,仅仅依靠他们来提供系统资源是很难满足用户需求的,几乎所有用户都是失败者。我们认为有必要对大量失败者的名字进行分类记录,让他们来提供系统资源的主要部分。这种供需解决方案就像每人带一道菜到盛宴上:不管有多少人来吃,没有人会饿。DaoliCloud 区块链旨在利用竞争的输家(哈希的赢家)作为系统资源的主要供应商。该设计最初被认为是为了保证区块链的Liveness(活性),后来发现在区块链的可扩展性问题上有更重要的用途。

 

比特币发明的奖励系统参与者是令人惊讶的有效,使系统始终保持良好的运行秩序。比特币也重新引起了BFT(拜占庭容错)方面的研究兴趣,主要是为了将BFT技术应用于区块链。然而,在我们的观察中,已更新的工作在改变BFT副本的旧的通信,所有对所有(All-to-All),算法方面进展甚微。更深入一点的思考,为了激励集体行为,形成了一种新的激励-BFT(I-BFT)思想。BFT复制品可能会被集体激励,对它们来说相互协作就是好的团队成员。一种I-BFT算法可以有一组排队的BFT副本,在大部分时间调用中,BFT副本很快就能达成多数协议。I-BFT的概念构成了我们对用激励方式更新BFT研究领域的贡献。

 

比特币,也被称为加密货币,已经在密码学领域带来了所需的繁荣。我们想揭露一下比特币以及其基础的技术区块链使用密码学的方式的观察。在比特币出现之前,密码学一直在给的使用带来不平等的困难:对于攻击者来说,这是一个令人望而却步的难题,而对于那些行为良好的人来说却很容易可是,比特币和后来的区块链使用密码却是对所有人都同样苛刻。行为良好的用户被迫努力解决一个让人望而却步的难题,就好像他们也是攻击者一样。我们认为,这种同的处理方式是导致了如此使用加密的区块链,从而显示出一种不可持续的共同特征,这不仅具体反映了它们的P2P货币的价值波动,而且引起人们对它们造成的环境危害普遍关注。事实上,比特币和后来的无许可区块链对密码的使用正要以限制可能拥挤的竞争达到所需的稀缺性。我们认为运气也可以实现稀缺性,而不需要强迫用户被当作攻击者。DaoliCloud区块链的密码使用回到了不平等难度的性质。I-BFT服务器使用公钥加密技术,只会使链叉攻击者的生活变得异常困难。行为良好的用户可以很容易地解析块链唯一的身份验证历史。对于排队无许可和追求利润的用户,运气是一个容易使用并且充分的手段,因此我们的选择手段。

 

Copyright © 2020-2021 DaoliCloud Company. All rights reserved.

首先,无许可的基于运气的挖矿是对所有客户端和服务器设备所有者开放的以便它们成为DaoliCloud矿工。这就是采矿参与的开放性。采矿参与的开放性是非常重要的。它是DaoliCloud成为一个真正开放的编程平台,拥有无限的资源来托管由开放程序员编程的应用程序。

 

当采矿参与变得越来越流行时,扩展区块链的I-BFT路线变得越来越不赚钱。然而,参与者为区块链提供资源的CR-Payrall 途径可能变得越来越有利可图。程序员可以使用 CR-Payrall 雇员提供的资源来编写代码和托管各种应用程序。因此, CR-Payrall 雇员可以为其登记的设备选择参与为应用程序提供CPU处理、网络和存储资源,以换取奖励。

 

实际上,对于大量的计算机资源所有者来说,以下情况可能更有可能参与DaoliCloud,那就是应用程序吸引了大量的设备拥有者来使用这些应用。正是在应用程序的使用中,大量设备的拥有者参与了DaoliCloud的挖掘和资源供应。

 

Copyright © 2020-2021 DaoliCloud Company. All rights reserved.