干货

https://github.com/ethereum/wiki/wiki/Sharding-FAQ#how-can-we-solve-the-single-shard-takeover-attack-in-an-uncoordinated-majority-model

随机采样:能够随机选出一些验证者组成委员会,使其在统计意义上代表整个验证者群体:

出处:Ethereum喜好者

翻译 & 校对: 阿剑、陈亮 & 阿剑

1. 区块链可扩展性

近况:海量理论进展和实质进展。

这个基本上就在于说,要构建一个 SNARK(或者 STARK 或 SHARK,等等)。而且小编已经做到了!SNARKs 愈加被充分理解了,甚至已经被用在多条区块链中(包括Ethereum上的 tornado.cash 项目)。而且 SNARKs 属于非常到底有用的,不管是作为隐私保护手艺(Zcash 和 tornado.cash),还属于作为可扩展性手艺(例如 ZK Rollup、STARKDEX 与 STARK 化的纠删编码数据根)。 不过还属于有的效率上的毛病,发明一种算术友良好型的哈希函数属于一个(看 此处 和 此处 清楚那些突破性的候选方案);高效证明随机内存存取属于另一个。进一步来讲,还到底有一个未化解的毛病属于,是否此类方案的证明时间都遵循 O(n * log(n)) 的限制,还属于说,到底有某种办法能够构建一个简约的证明,开销仅呈线性增长,就类似于 bulletproofs 一样(但是它的验证时间也可能呈线性增长)。除此之外,这一类现到底有方案到底有 bug 的危害也属于总是存在的。总而言之,毛病都属于细则上的,在毛病的基本层面已经不存在疑问了。

毛病概念:发明一种区块链结构,既能具备Bitcoin级别的安全保障,同时用于保证互联网功能存续的极强大节点的规模上限会伴随买卖数目的增加而呈次线性增长。

近况:到底有大把的理论进步,但是到底有待生产环境检验。

 

密码学毛病

 

尤其感谢 Justin Drake 和 Jinglan Wang 的反馈。

不幸的属于,到现在为止,这还属于一个难点。在这个毛病上不断有网友付出努力,一方面属于发明一些建构(例如这个),尝试减少对那些小编不明白其实用性的数学对象(例如通用性密码学多重线性映射)的假设,另一方面属于尝试做出到底有用数学对象的到底有用达成。不过,一切这一类路径距离自己的目标——创建出可行且在已知条件下安全的代码混淆器——非常遥远。请看 https://eprint.iacr.org/2019/463.pdf 以清楚对该毛病的更寻常化的概述。

近况:到底有一些进展。

密码学难点的圣杯属于发明一个混淆器 O:对给定的任意程序 P,该混淆器能产生一个次级的程序 O(P) = Q,只须给出相同的输入,P 以及 Q 会返回相同的输出,并且更要紧的属于,Q 不懂得暴露 P 的任何信息。如此话,大家就能够在 Q 中暗藏口令、秘密的加密密钥,或者仅仅属于用 Q 来暗藏算法本身的工作方式。

还到底有一些更小的进展,比方说用收条达成跨分片通信,还到底有 “常量因子” 强化手艺如 BLS 签名聚合手艺。虽说这样,完全分片的区块还属于没能在现实中涌现出(尽管部分分片的区块链 Zilliqa 已经开始运行了)。理论上来讲,余下的争议都属于细则上的,围绕着以及分片组网稳固性、开发者体验和缓解中心化危害的各项挑战;基本的手艺可行性看上去不再到底有疑问。但是余下的挑战都属于不说不定仅靠理论来化解的毛病;只到底有开发出如此的系统软件、看到Ethereum 2.0 或类似的链实质运行才能化解这一类毛病。

我个人把难点分成了三类:(i)密码学难点,要是可解,应到底有纯数学形式的化解办法;(ii)共识理论,基本上就在于需要对工作量证明和权益证明做改进;(iii)经济学毛病,需要发明一种为不一致参以及方赋予经济勉励的结构,并且寻常都在协议层之外包含了应用层。虽然进度不一,但是小编在一切类别中都看到了重大进展。

接下来列举出的说不定属于这一类手艺中最核心的一部分:

翻译成大白话,这个毛病就在于说,小编愿意要一种方式来 “加密” 一个程序,使得加密后的程序能对同样的输入给出相同的输出,但是原程序内部的机理又属于完全暗藏起来的。这种手艺的一种用场属于一段包含一把私钥的程序,仅允许这把密钥对特定消息签名。

 

2. 时间戳

 

 

2014 年,我个人曾在一篇文章和一场演讲中列出了一系列个人认为对密码学货币范围的成熟到底有重大意义的数学、计算机科学和经济学难点。五年曾经,沧海桑田,但是在这一类小编认定要紧的事情上,究竟赢得了或多或少进展?在哪些挑战上小编成功了,哪些事项上小编失败了、又或者小编转变了怎么看?本文中我个人会历数2014年列举出的16大毛病,并检视自己的进展。最终,我个人会给出2019年版的新难点。

作者: Vitalik

Ethereum在 13 秒的出块时间、无特殊高级时间戳手艺的条件下运作得极好;这个互联网只不过是需要推广客户端不要接受所引时间戳比当地时间更新的区块。也就在于说,这一手艺还没有到底有在高强度攻击下接受过检验。最新的互联网调整时间戳提案尝试改善近况,它让推广客户端当地能够在并不明白高精确度的当前时间时对时间达成协议;不过这也还没有到底有被检验过。总的来讲,时间戳手艺已从研究挑战的前沿退了下来;或许这一点会在众多权益证明区块链(包括Ethereum 2.0 等)上线之后改善,到时候小编就能更具体地定位毛病了。

数据托管证明:让验证者能够概率性地证明自身下载并验证了一些数据:https://ethresear.ch/t/1-bit-aggregation-friendly-custody-bonds/2236

数据可用性证明:当推广客户端拥有区块头的区块体不可用时,让推广客户端能够探测到错误:https://arxiv.org/abs/1809.09044。也能够看看更新的编码化默克尔树提案。

代码混淆方案对区块链协议来讲属于非常到底有用的,虽然用起来会比较微妙,由于小编必须面对如此的说不定性:一个在链上的混淆过的程序说不定会被复制并用在一个截然不同的环境中,由此产生许多不一样的结果。让我个人非常的有兴趣的点在这里:小编能用包含一些工作量证明的、混淆后的程序来代替运营者,从而能在抗串谋工具中移除中心化的运营者,由于在确定单个参以及者的行动时,选用多个输入、运行多次程序的开销会非常大。

5. 基于哈希的密码学

4. 代码混淆

3. 通用的计算过程证明

当前密码学货币范围面临的最大挑战之一就在于可扩展性毛病……对 “区块链数据量过大” 的担忧属于到底有道理的:要是只到底有小一部分人才到底有能力运行全节点,那样这一类实体就能够秘密勾结并给自身分配额外的Bitcoin,而其它使用者则没力气为自身伸张正义,由于只到底有自身验证区块才能发现非法区块。

近况:进展缓慢。

毛病:创建程序 POC_PROVE(P,I) -> (O, Q) 与 POC_VERIFY(P,O,Q) -> {0, 1} ,使得 POC_PROVE 以 I 为输入运行程序 P ,能够返回程序输出 O 与一段计算过程证明 Q ;当 POC_VERIFY 以 P 、O 、Q 为输入时,可输出结果,表明 Q 和 O 是否 POC_PROVE 算法选用程序 P 生成出来的。

基于哈希函数的密码学中尚未化解的主要毛病属于签名聚合,就在于像 BLS 签名方案所供应的功能。已知的属于小编能够对许多 Lamport 签名方案生成 STARK,所以一个更到底有效率的签名方案说不定就快出来了。(要是您还在考虑基于哈希函数的公钥加密方案是不是说不定,真实答案属于,不行,由于攻击者只需付出诚实使用者平方级的费用就能够攻破如此的方案。)

自2014年以来,这个题目下涌现出了两项进展:(1)SPHINCS,一种 “无状况” 的签名方案(“无状况” 是什么意思,就算多次选用,也无需保存类似于 nonce 那么的计数信息)。该方案在《难点》一文出版后不久就涌现出了,供应了一种仅基于哈希函数的签名方案,签名大小在 41 kB 左右;(2)STARKs 也已经被开发出来了,所以大家能够基于 STARK 手艺达成相近大小的签名。不但属于签名方案,连通用型零常识证明手艺,都能够仅用哈希函数达成出来,这属于我个人在 5 年前完全不存在料到的事,我个人非常的开心能见识到这所有。虽然说,签名的大小仍然属于一个毛病,但是大家也在不断付出努力减少证明的大小(例如近期的 DEEP FRI),而且看上去进一步的进展收效会愈加强。

毛病:创建一种分布式的勉励兼容系统软件,无论它属于区块链上的覆盖层还属于区块链本身,可以以高准确度维护一个实时的时钟。一切正规使用者的时钟围绕某个 “真实时间” 以 20 秒的规范差呈正态分布……不存在任何俩节点的时间差会超越 20 秒。解决方法能够依靠现有些 “N 个节点” 定义;能够通过权益证明或者 non-sybil token 来组织节点(可联系下文的 9 号难点)。这个系统软件应能不断地供应时间,并且时间在超越 99% 的诚实参以及者节点内部时间的 120 秒领域内。外部系统软件说不定最后会依靠这个系统软件;因此,它应该能在攻击者无视勉励措施且控制 25% 的节点条件下维持安全性。

毛病:发明一种签名算法,除去依赖哈希函数的随机特质之外不存在别的安全假设;哈希函数对古典计算机维持 160 比特的安全性(即,依照 Grover 算法,对量子计算机维持 80 比特的安全性),并且具备有最优大小及其他属性。

近况:到底有一些进展。

错误性证明:让监测到错误的节点向其它节点广播自身发现的错误:https://bitcoin.stackexchange.com/questions/49647/what-is-a-fraud-proof

在可扩展性毛病上,小编已经在理论上赢得了海量进展。五年前,几乎还没有有网友考虑过分片的说不定性;目前,分片设计属于人们不足为奇的东西了。除去Ethereum 2.0,还到底有 OmniLedger、LazyLedger、Zilliqa,而且新论文几乎每一个月都会冒出几篇来。我个人个人的观点属于,在这个点上涌现出的进博览会愈来愈多。最基本来讲,小编已经到底有多项手艺能够让验证者群体对超越单个验证者所能处置的数据安全地达成协议,同时手艺还让推广客户端可以间接地验证区块的完全到底有效性和可得性,即便属于在 51% 攻击的条件下。

相关推荐

最新资讯

热门资讯