以太坊协议设计的主要目标之一是最小化复杂性:使协议尽可能简单,同时仍然使区块链能够做好一个有效的区块链网络需要做到的事情。以太坊协议在这方面还远远不够完美,特别是因为它的很多部分都是在2014-16年设计的,当时我们对它的理解要少得多,但我们仍然在尽可能地积极努力降低复杂性。然而,这个目标的挑战之一是复杂性很难定义,且有时,你必须在两个引入不同种类复杂性和具有不同代价的选择之间进行权衡。我们如何比较?有一个强大的智能工具可以让我们对复杂性进行更细致的思考,那就是区分我们所谓的封装复杂性(encapsulatedcomplexity)和系统复杂性(systemiccomplexity)。
Vitalik Buterin 2014年的历史肖像被作为NFT进行拍卖:金色财经报道,加拿大著名摄影师Andrew Miller宣布独家拍卖以太坊创始人Vitalik Buterin的首张专业且从未售出的肖像,该肖像被铸造成NFT。此次拍卖恰逢以太坊概念诞生10周年。拍卖将于 7 月 1 日在Manifold.xyz上开始,一直持续到7月30日,为收藏家提供了一个难得的机会来获得以太坊早期历史的一部分。起拍价为333 ETH。[2023/7/19 11:03:17]
当一个系统的子系统内部复杂,但向外部呈现一个简单的“接口”(interface)时,就是出现了「封装复杂性」。当系统的不同部分甚至不能被清晰地分开,并且相互之间有复杂的交互时,「系统复杂性」就出现了。以下是几个例子。BLS签名vs.Schnorr签名
BLS签名和Schnorr签名是两种常用的可由椭圆曲线构成的加密签名方案。BLS签名在数学上看起来非常简单:
区块链理赔平台Vitraya完成500万美元融资:金色财经报道,区块链理赔平台Vitraya背后的开发公司Vitraya Technologies宣布完成500万美元新一轮融资,B2B风险投资基金StartupXSeed领投,Season Two Ventures、Cactus、Xceedance和Mankind Pharma家族办公室等参投。Vitraya平台使用区块链和人工智能技术确保医院、患者和保单数据的绝对安全,该平台在涉及的私有区块中保护数据的所有端点,并帮助参与各方可以安全无忧地进行互动。(businessworld)[2023/3/30 13:33:56]
H是一个哈希函数,m是消息,k和K是私钥和公钥。到目前为止,很简单。然而,真正的复杂性隐藏在e函数的定义中:椭圆曲线配对(ellipticcurvepairings),这是所有密码学中最难以理解的数学部分之一。现在,我们来看看Schnorr签名。Schnorr签名只依赖于基本的椭圆曲线。但是签名和验证逻辑有点复杂:
动态 | Vitalik Buterin 提出激励开发者的新方案:将智能合约交易手续费资助合约创建者:Vitalik Buterin 在以太坊研究论坛上发表文章,提出一种激励开发者的新方案,当开发者创建一个智能合约后,任何其他使用该合约的用户付出的交易手续费的一部分(比如说 33%),会发送给合约的创建者作为激励,而且还提出了两种关于奖励的算法,分别是线性和超线性。该想法出自于 9 月 16 日在以色列举行的 StarkWare Sessions 会议上,在探讨关于公链基础设施的开发,资金应该是通过治理和协议获得,还是说应该被独立的企业资助话题中,以太坊创始人 Vitalik Buterin 认为,「通过协议获得资金的优势是,这个方法可以获得更多的资金。而劣势也很明显,由于这类方法是中立的,所以无论利用任何机制都会被恶意攻击,之前也已经遇到过各种各样的尝试。所以这类方法的最大的挑战是想出一套合适的治理结构和其组件。然后他还举了一个例子,如果我们设置这样一个资助机制:当有人使用了某个智能合约,因此而产生的转账费的一部分会分配给该合约的创建者,这样的机制就非常的中立。[2019/9/23]
动态 | Stellar发布公告提醒用户警惕欺诈性空投活动Stellar-Activity:Stellar官方Reddit发布公告,提醒用户警惕欺诈性空投活动。最初是StellarShade然后变成Stellar Dolphin Fork,现在叫Stellar-Activity(XLA)。此类局使用相同的运作模板进行——先是在bitcointalk.org发帖称将在某一特定日期进行大空投,然后开始发放赠品,推行营销策略以在社交媒体上吸引不知情的粉丝来传播这一消息,粉丝们在不知情的情况下间接地进行二次传播,致使更多的人上当。子们声称将会以2:1的比例给你提供XLA(每持有1XLM就给予2XLA),然后诱使你在他们的账户查看器里输入私钥,之后盗取你所有的账户存款。[2018/12/2]
所以…哪种类型的签名“更简单”?这取决于你在乎什么!BLS签名具有巨大的技术复杂性,但复杂性都隐藏在e函数的定义中。如果你把e函数看作一个黑盒,BLS签名实际上是非常简单的。另一方面,Schnorr签名的总体复杂性较低,但有更多的部分,能以一种微妙的方式与外部世界互动。例如:进行BLS多签(两个密钥k1和k2的组合签名)很简单:只需σ1+σ2。但是Schnorr多签名需要两轮交互,并且需要处理一些棘手的KeyCancellation攻击。Schnorr签名需要生成随机数,BLS签名不需要。椭圆曲线配对通常是一个强大的“复杂性海绵”,因为它们包含大量封装复杂性,但使解决方案具有更少的系统复杂性。这也适用于多项式承诺领域:将KZG承诺(需要配对)的简单性与更复杂的内积证明(innerproductarguments,不需要配对)的内部逻辑进行比较。密码学vs.加密经济学
金色财经现场报道 VR ALL ART首席执行官Vitomir Jevremovic:用虚拟现实和区块链技术颠覆艺术世界:金色财经前方记者实时报道,第二届全球金融科技与区块链中国峰会于4月12日在上海召开,VR ALL ART首席执行官Vitomir Jevremovic在会上指出,艺术无国界,但是艺术市场有国界,由于运输距离和本地市场等诸多方面的限制,艺术市场存在挑战,艺术品投资流动性很差。区块链技术的特性使得其可以提供金融交易支付的支持,保证上链艺术品的唯一标识、艺术认证和可追溯性,促进艺术品流通。此外,通过VR技术,将虚拟现实与区块链技术结合还能打破距离限制,为用户更好的浏览艺术世界提供可能。[2018/4/12]
在许多区块链设计中出现的一个重要设计选择是密码学(cryptography)与加密经济学(cryptoeconomics)的比较。这(比如在Rollups中)常常是在有效性证明(即ZK-SNARKs)和欺诈证明之间做出选择。ZK-SNARKs是复杂的技术。虽然ZK-SNARKs工作原理背后的基本思路可以在一篇文章中解释清楚,但实际上实现一个ZK-SNARK来验证一些计算涉及到比计算本身多很多倍的复杂性(因此,这就是为什么用于EVM的ZK-SNARKs证明仍在开发中,而用于EVM的欺诈证明已经在测试阶段)。有效地实现一个ZK-SNARK证明涉及到了对特殊目的进行优化的电路设计、使用不熟悉的编程语言以及许多其他挑战。另一方面,欺诈证明本身就很简单:如果有人提出挑战,你只需直接在链上运行计算。为了提高效率,有时会添加一个二进制搜索方案,但即使这样也不会增加太多的复杂性。虽然ZK-SNARKs很复杂,但它们的复杂性是封装复杂性。另一方面,欺诈证明的相对较低的复杂性,是系统复杂性。以下是欺诈证明引入的一些系统复杂性的例子:它们需要谨慎的激励工程来避免验证者的困境。如果在达成共识的情况下完成,它们需要为欺诈证明提供额外的交易类型,同时还要考虑到如果许多参与者同时竞相提交欺诈证明会发生什么。它们依赖于一个同步网络。它们允许审查攻击(censorshipattacks)也被用来进行盗窃。基于欺诈证明的Rollups要求流动性提供者支持即时提款。由于这些原因,即使从复杂性的角度来看,基于ZK-SNARKs的纯加密解决方案也可能是长期安全的:ZK-SNARKs有着更复杂的部分,这是一些人在选择ZK-SNARKs时必须考虑到的;但ZK-SNARKs有着更少的悬空警告,这是每个人都必须考虑到的。各种例子
PoW(中本聪共识):较低的封装复杂性,因为该机制非常简单和容易理解,但有着更高的系统复杂性(如自私挖矿攻击)。哈希函数:较高的封装复杂性,但有着非常容易理解的属性,因此系统复杂性很低。随机洗牌算法:洗牌算法既可以是内部复杂(比如Whisk),但却能够确保强大的随机性,且易于理解;也可以是内部简单,但却能够产生较弱且难以分析的随机性属性(比如系统复杂性)。矿工提取价值(MEV):一个强大到足以支持复杂事务(complextransactions)的协议在内部可能相当简单,但那些复杂的事务可能会对协议的激励机制产生复杂的系统影响,因为它们会以非常不正常的方式提议区块。Verkle树:Verkle树确实有一些封装复杂性,实际上比普通的Merkle哈希树要复杂得多。然而,从系统上讲,Verkle树提供了与键值(key-value)映射完全相同的相对干净和简单的界面。主要的系统复杂性“泄漏”(leak)是攻击者操纵Verkle树使一个特定值有一个非常长的分支(branch)的可能性;但Verkle树和Merkle树的风险是相同的。我们如何权衡呢?
通常,封装复杂性较低的选择也是系统复杂性较低的选择,因此有一个选择显然更简单。但在其他时候,你必须在一种复杂性和另一种复杂性之间做出艰难的选择。在这一点上应该清楚的是,如果是封装复杂性,那么其危险性就会更低。一个系统复杂性带来的风险不是一个简单的规范长度的函数;规范中一个10行代码的小片段与其他部分相互作用会比100行代码的函数更复杂,否则就会被视为一个黑盒。然而,这种偏好封装复杂性的方法存在局限性。任何一段代码中都可能出现软件bugs,当代码越来越大时,出现错误的概率接近1。有时,当你需要以意想不到的新方式与子系统交互时,最初的封装复杂性可能会变成系统复杂性。后者的一个例子是以太坊当前的两级状态树(two-levelstatetree),其特征是帐户对象树,其中每个帐户对象依次有自己的存储树。
这个树结构是复杂的,但在一开始,这种复杂性似乎被很好地封装:协议的其余部分作为可读写的键/值存储与树交互,所以我们不必担心树是如何构造的。然而,后来,这种复杂性被证明具有系统性影响:帐户拥有任意大的存储树的能力意味着没有办法可靠地期望某个特定的状态部分(例如。“所有以0x1234开头的帐户”)具有可预测的大小。这使得将状态分割成多个部分变得更加困难,使同步协议的设计和分布存储进程的尝试变得更加复杂。为什么封装复杂性会变成系统性的?因为interface改变了。解决方法是什么?目前转向Verkle树的提议还包括转向一个均衡的单层树设计。最终,在任何给定的情况下,哪种类型的复杂性更受欢迎是一个没有简单答案的问题。我们所能做的最好的事情是适度地支持封装复杂性,但不要太多,并在每个具体的情况下演练我们的判断。有时候,牺牲一点系统复杂性来极大地降低封装复杂性确实是最好的做法。其他时候,你甚至会误判什么是封装的,什么不是。每种情况都是不同的。
相关阅读《a16z前合伙人单飞成立新基金,KRH会成为下一个Paradigm吗?》今天,我们将介绍HaunVentures,这是一家从头开始设计的公司,旨在帮助创始人构建下一代互联网.
1900/1/1 0:00:00在不到十年的时间里,去中心化交易所从纸上设想到技术萌芽,最终成为了加密经济帝国的金钱泉眼。叮当叮当,金钱在这里涌入又流出.
1900/1/1 0:00:00日前,国家发改委等部门联合印发的文件同意启动建设国家算力枢纽点,完成全国一体化大数据中心体系布局设计,至此“东数西算”工程正式全面开启.
1900/1/1 0:00:00BitKeep钱包宣布于2022年3月15日上线V7.0版本。 新版本启用了新的视觉系统,升级了产品板块,带给用户更便捷的服务和更安全的加密数字货币交易环境.
1900/1/1 0:00:00RohamGharegozlou/DapperLabs创始人在《快公司》杂志公布的2022年全球最具创新力公司中,NFT开发商DapperLabs成为唯一入围的加密项目.
1900/1/1 0:00:00撰文:0x555,律动BlockBeats当PFP开始风靡,大家习惯溯源,去找到头像这样的社交资本玩法的发祥地,而QQ秀是被提及最频繁的。人们发现,从QQ秀开始,虚拟空间上的第二人生就有了苗头.
1900/1/1 0:00:00