我研究Dusk的共识机制时,最让我花心思的不是谁来出块,而是Succinct Attestation——这个名字里最容易被跳过的部分。
先拆它解决的问题。Dusk的区块确认是多阶段的:Deterministic Sortition从符合条件的Provisioner里抽出不同阶段的参与者,再走Proposal、Validation、Ratification完成确认。多阶段的问题在于:过程复杂了,如何让所有人低成本地相信"结果是真的"?Succinct Attestation做的就是这个——把多阶段共识的证据压缩成简洁证明,让最终性可以被验证,而不用重放整个过程。
这里面的设计意图,放在金融场景下才看得清。金融机构要的不是"很快出块",是"确认就是最终"——一笔结算做完,不能有回滚的概率悬在头上。多数链的最终性是概率性的(等更多区块确认),Dusk走的是把最终性做成可证明的:Attestation就是那个"到此为止、不可逆"的凭证。
这也让我重新理解了它为什么值得琢磨:共识设计的分歧,本质是对"信任什么"的分歧——有的链信任算力,有的信任质押,Dusk的这套东西信任的是"抽签的公平加证明的简洁"。哪个更好,时间会给答案。
当然,机制越精密,要验证的东西就越多。Succinct Attestation的工程实现、极端网络条件下的表现,都还是需要时间检验的部分——精密的机制最大的风险,往往就藏在它自己的复杂度里。
@Dusk $DUSK #dusk
先拆它解决的问题。Dusk的区块确认是多阶段的:Deterministic Sortition从符合条件的Provisioner里抽出不同阶段的参与者,再走Proposal、Validation、Ratification完成确认。多阶段的问题在于:过程复杂了,如何让所有人低成本地相信"结果是真的"?Succinct Attestation做的就是这个——把多阶段共识的证据压缩成简洁证明,让最终性可以被验证,而不用重放整个过程。
这里面的设计意图,放在金融场景下才看得清。金融机构要的不是"很快出块",是"确认就是最终"——一笔结算做完,不能有回滚的概率悬在头上。多数链的最终性是概率性的(等更多区块确认),Dusk走的是把最终性做成可证明的:Attestation就是那个"到此为止、不可逆"的凭证。
这也让我重新理解了它为什么值得琢磨:共识设计的分歧,本质是对"信任什么"的分歧——有的链信任算力,有的信任质押,Dusk的这套东西信任的是"抽签的公平加证明的简洁"。哪个更好,时间会给答案。
当然,机制越精密,要验证的东西就越多。Succinct Attestation的工程实现、极端网络条件下的表现,都还是需要时间检验的部分——精密的机制最大的风险,往往就藏在它自己的复杂度里。
@Dusk $DUSK #dusk
