您的位置:首页 > 区块链 >

Eaglesong是专门为Nervos CKB设计的哈希算法 其共识机制是改进的中本聪共识

2019-10-12 14:15:31 来源: 区块网

Eaglesong 是专门为 Nervos CKB 设计的新型哈希算法。这是第一个成功结合了创新性、简洁性和安全性三个设计要求的哈希算法。今天这篇文章,我

Eaglesong 是专门为 Nervos CKB 设计的新型哈希算法。这是第一个成功结合了创新性、简洁性和安全性三个设计要求的哈希算法。今天这篇文章,我们将详细解释 Eaglesong 的设计思路以及它带来的优势。

背 景

Nervos CKB 的共识机制(NC-Max)是改进版的比特币中本聪共识(Nakamoto Consensus, NC),它是就网络参与者的支付权限来达成共识的。通过这种机制,只要满足以下两个条件,那么任意节点都可以对系统状态进行更新(这种更新也被称为出块):

· 该区块是有效的;

· 出块者解出了一个叫作工作量证明的计算难题。

不断尝试解出这个难题并争取下一个区块出块权的节点被称为矿工,矿工会在难题被解出时获得相应的奖励。中本聪共识降低了网络所需的安全性,使其不受覆写历史的攻击,这是对算力分布的一种假设,即超过 50% 的算力都在诚实的矿工手中。

工作量证明难题是根据提出的块来定义的;这保证了难题的解和区块一一对应,并能够唯一地证明这一个块。具体来说,每个块都有一个唯一的 block_header,用于验证待确认队列中的一系列交易及验证人。以往的工作量证明难题一般会包括找到一个有效的随机数,比如:

H(block_header || nonce) <= t .

这里面:

· t 表示难度系数,该难度系数是周期性调整的,以控制平均出块时间;

· || 表示比特串(Bit Strings)的串接;

· nonce 是一串随机的比特;

· H 是一个单向加密哈希函数。

这个哈希函数 H 有以下几种作用:

· H 是公开的,因此网络上的任何节点都可以仅通过验证上述公式来验证所提出的节点是否有效。此外,任何节点都可以在无需许可的情况下成为矿工。

· H 是难以预测的,因此矿工的最佳策略是随机地猜测 nonces 且不断尝试新的 nonce,直到满足这个公式为止。这就意味着,矿工得到的奖励与他为保护整个网络所付出的算力份额相匹配。

比特币的哈希函数 H 是两次重复的 SHA2-256 运算。从结果来看,重复这个函数两次似乎有点多此一举,因为近二十年的密码分析都未能产生真正有意义的攻击。然而,在比特币刚出现的时候,SHA1 正在面临被破解的危机,那时的 SHA2 则更新颖一些。当然 SHA2 也有可能被 SHA3 取代,如果 SHA2 也到了和 SHA1 同样的境地的话。

虽然用 SHA2 定义工作量证明难题对比特币来说是一个不错的选择,但对后来的很多加密货币来说却不一样。很多为了挖比特币而特意开发的专用设备现在已经过时了,而采用相同工作量证明难题的新加密货币则可以重新启用那些过时的设备。

甚至那些没有过时的设备也可以租出去,重新挖新的币。因此,算力分布变得非常难以预测,也可能遇到突然的算力大幅度波动。同样的道理也适用于为 SHA2 而量身定制的算法优化,它可以降低函数的软件计算成本,而不需要采用基于降低硬件成本的解决方案。

对于一种新的加密货币来说,使用一种其他的加密货币尚未使用过的工作量证明函数来定义工作量证明难题是非常可行的。对于 Nervos CKB 而言,我们会更进一步,选择一个全新的、完全不可能面临过早优化问题的工作量证明函数。

另外,挖矿设备达不到预期的情况仅会出现在早期。长远来看,部署专用的挖矿设备将会是非常有益的,这大大增加了攻击网络的难度。因此,对于一种新的加密货币来说,其工作量证明函数的前两个设计目标,除了创新性以外,还应该是简单的,这样它能够显著地降低专业挖矿设备开发的门槛。

第三个设计目标显然是安全性。虽然说,一个已知的漏洞对所有矿工来说都是一样的,大家都可以利用,但这只会导致更高的难度;而一个未公开的漏洞可能会给发现这个漏洞的矿工带来不一样的挖矿优势,这会导致他付出的算力和奖励不成正本。为了避免这种情况,最好的方法是为系统的安全性做一个强有力的论证。

Eaglesong

这时,Eaglesong 的用武之地就显现了。

Eaglesong 是专门为 Nervos CKB 工作量证明设计的新的哈希函数,它也适用于其他需要安全哈希函数的应用场景。其设计标准正是上面列出的那样:创新、简单和安全。我们希望这样的设计足够新颖,并且想要为技术的进步做一点小小的贡献,同时,也希望这样的设计仍然符合现实场景,以提出强有力的安全论证。

为此,我们选择使用 ARX 步骤(添加,循环然后 xor —— 是不是很简单!)构建的排列来实例化 Sponge 架构 (与 Keccak/SHA3 相同),并基于宽路径策略为其安全性做出论证 (与 AES 的基本论证相同)。

安全到底意味着什么呢?让哈希函数适用于(诸如此处描述的)工作量证明难题的这个属性被称为多目标单向性(Multi-target One-wayness)。该属性是根据一场游戏定义的,在这个游戏中,会给对手一个目标列表,如果他能够在 H 下,对任意一个目标生成单一原像,那么他就获胜。

除了一个个试错之外,如果对手没有其他更好的方法,那么就意味着函数 H 具有此属性。然而,哈希函数通常还具有其他属性,例如抗第二原像攻击(Second Preimage Resistance),抗碰撞性(Collision Resistance)和相关不可行性(Correlation Intractability)。对一个属性的攻击不会自动转换为对另一个属性的攻击。因此,从方法论角度来看,仅用多目标单向函数来实例化一个工作量证明难题是合理的。

尽管如此,在 Eaglesong 的设计中,我们还是设定了轮数,这样一来,我们就无法区分所得的结果是随机排列的,还是在给定工作量的情况下排列的。Sponge 框架的结果是所得到的函数具有与哈希函数相关联的所有安全属性。

据我们所知,Eaglesong 是第一个成功结合所有三个设计原则的哈希算法(或者说是在这个方面的任何一种函数)。值得注意的是,当 Eaglesong 作为 Nervos CKB 的工作量证明哈希函数出现时,我们可能会以不影响函数安全性分析的方式。(Alan Szepieniec)

关键词: Eaglesong Nervos CKB 哈希算法

精选 导读

募资55亿港元万物云启动招股 预计9月29日登陆港交所主板

万科9月19日早间公告,万物云当日启动招股,预计发行价介乎每股47 1港元至52 7港元,预计9月29日登陆港交所主板。按发行1 167亿股计算,万

发布时间: 2022-09-20 10:39
管理   2022-09-20

公募基金二季度持股情况曝光 隐形重仓股多为高端制造业

随着半年报披露收官,公募基金二季度持股情况曝光。截至今年二季度末,公募基金全市场基金总数为9794只,资产净值为269454 75亿元,同比上

发布时间: 2022-09-02 10:45
资讯   2022-09-02

又有上市公司宣布变卖房产 上市公司粉饰财报动作不断

再有上市公司宣布变卖房产。四川长虹25日称,拟以1 66亿元的转让底价挂牌出售31套房产。今年以来,A股公司出售房产不断。根据记者不完全统

发布时间: 2022-08-26 09:44
资讯   2022-08-26

16天12连板大港股份回复深交所关注函 股份继续冲高

回复交易所关注函后,大港股份继续冲高。8月11日大港股份高开,随后震荡走高,接近收盘时触及涨停,报20 2元 股。值得一提的是,在7月21日

发布时间: 2022-08-12 09:56
资讯   2022-08-12

万家基金再添第二大股东 中泰证券拟受让11%基金股权

7月13日,中泰证券发布公告,拟受让齐河众鑫投资有限公司(以下简称齐河众鑫)所持有的万家基金11%的股权,交易双方共同确定本次交易的标的资

发布时间: 2022-07-14 09:39
管理   2022-07-14

央行连续7日每天30亿元逆回购 对债市影响如何?

央行12日再次开展了30亿元逆回购操作,中标利率2 10%。这已是央行连续7日每天仅进行30亿元的逆回购缩量投放,创下去年1月以来的最低操作规

发布时间: 2022-07-13 09:38
资讯   2022-07-13

美元指数创近20年新高 黄金期货创出逾9个月新低

由于对美联储激进加息的担忧,美元指数11日大涨近1%创出近20年新高。受此影响,欧美股市、大宗商品均走弱,而黄金期货创出逾9个月新低。美

发布时间: 2022-07-13 09:36
资讯   2022-07-13

美股三大股指全线下跌 纳斯达克跌幅创下记录以来最大跌幅

今年上半年,美股持续回落。数据显示,道琼斯指数上半年下跌15 3%,纳斯达克综合指数下跌29 5%,标普500指数下跌20 6%。其中,纳斯达克连续

发布时间: 2022-07-04 09:51
推荐   2022-07-04

融资客热情回升 两市融资余额月内增加超344亿元

近期A股走强,沪指6月以来上涨4%,融资客热情明显回升。数据显示,截至6月16日,两市融资余额1 479万亿元,月内增加344 67亿元,最近一个半

发布时间: 2022-06-20 09:41
资讯   2022-06-20

4个交易日净买入超百亿元 北向资金持续流入A股市场

北向资金净流入态势延续。继6月15日净买入133 59亿元后,北向资金6月16日净买入44 52亿元。自5月27日至今,除6月13日以外,北向资金累计净

发布时间: 2022-06-17 09:37
推荐   2022-06-17