这几天圈里最扎眼的新闻,恐怕是 ColdCard 硬件钱包被掏空这件事。一个五年前埋下的编译开关,悄悄关掉了硬件随机数发生器,种子直接退化成一个几乎能被预测的伪随机数,上亿美元比特币被一锅端。

看完我只有一句感慨:随机一旦能被提前算出来,就不再随机了。
这让我想起 @Dusk_Foundation 在共识里反复较真的一个环节:怎么选下一个出块的人?

你可能会问,这事能有多难?要公平,随机结果得人人能验证;要安全,又得没人能提前猜到。这俩要求撞在一起,其实是拧巴的。Dusk 用的确定性抽签,简称 DS,想同时要这两样。

它没搞什么花哨的随机源,#dusk 就是把有资格的质押者排成一队,用当前这轮的“分数”挨个过一遍,谁权重够谁中签。分数怎么来?用 SHA3 把上一区块的种子、轮次、步骤一起哈希出来,结果唯一、可复现,谁都能自己重算核对一遍。

这里头的门道,全在“种子”上。每个新区块,出块者都要拿自己的签名在上一区块种子上再签一次,作为下一轮种子。这就像摇号机——规则公开、人人可复核,可下一期摇出谁,谁也没法提前知道。

$DUSK 在这里就是抽签的权重筹码:质押越多,权重越高,被抽中的概率越大;但每中一次权重减一,防止大户包圆委员会。

我琢磨着,这设计妙就妙在,它没把“随机”交给中心化摇号机,而是用公开可验的规则加上不可预测的种子,把公平和安全焊在一起。当然,前提是种子真不可预测、质押真分散,这些还得看后续数据。DUSK 这个币,功课得自己做,别只听我这一嘴。