StarkWare总裁:要获得最大的可扩展性需使用能释放其潜力的编程语言
9月22日,在由万向区块链实验室主办的第八届区块链全球峰会上,以太坊扩容解决方案StarkWare联合创始人兼总裁Eli Ben-Sasson表示,STARK数学技术能够让人们相信,即使没有监管,也不需要监督计算的每一步,合约都会保证正确的执行。一台性能有限的计算机,可以监督并声明大量计算集群的可靠性,并且无需重新执行计算,这就是这项技术为什么会和区块链有关系。
Ben-Sasson称,StarkWare采用的方法是基于数学的证明,也就是有效性证明的方式,StarkWare要实现的目标是能够让任何人运行非常庞大的计算机,并且处理相关的事情,然而做执行的一切事情都必须向L1进行证明。 如果想要获得最大的可扩展性,实际上需要使用能够释放其潜力的编程语言。 对于StarkNet,其编程语言就是Cairo ,开发者可以用它来写各类应用。而且目前为止,开发人员已经为它编写了数百应用程序,包括用于投票、虚拟身份和游戏的应用程序。
一下为演讲全文:
Eli Ben-Sasson: 大家好!
我是StarkWare联合创始人兼总裁。今天下午我想和大家分享关于STARK数学技术。这项技术是我们最先发明,然后将其打造成产品,部署在区块链的第二层,也就是Starknet。有关STARK技术和密码学的故事,可以追溯到三十年前。在80年代中期和90年代初,数学创新释放出了巨大的力量,并且将这种力量交还到人类的手中。
所以,我们经常会在电影当中看到这样一个画面,一个年幼弱小的孩子,碰到了一条非常强大的巨龙,并且通过某种神奇的方式控制着这条巨龙,而在区块链的世界当中,弱小的孩子实际上就是以太坊,它是作为一种计算设备,存在着某种限制。
而通过某种魔法能够控制大量算力,这里所提到的“魔法”就是数学,所以,STARK就是基于30年的数学研究成果。其中,很多研究成果是经过发明优化之后应用到了StarkWare,核心在于数学允许你使用密码学来声明它的可靠性。
可靠性到底意味着什么呢?实际上在小说家路易斯(音)有一个非常精妙的描述,算没有人在监督,也要保证做正确的事情。
同理,这项数学技术能够让人们相信,即使没有监管,也不需要监督计算的每一步,合约都会保证正确的执行。所以,借助这项非常神奇的数学技术,我们可以致力于让以太坊扩容,以满足全世界的需求。
这篇来自于30年前的论文当中有一段非常优美的描述,介绍了一项了不起的数学创新,其中提到“一台可靠的个人电脑,可以监督一台超级计算机的运行”,哪怕这些超级计算机使用的是极其强大,但是不可靠的软件和未经测试的硬件。以太坊就像是非常薄弱、功能有限的计算机。
用论文当中的话来讲,就是一台个人电脑,但是它可以用来声明可靠性,并且知道这群超级计算机执行了正确的操作,而且不对这群超级计算机的可靠性做任何假设。听起来像有魔力一般,但数学的魔法的确可以让它成为现实。
分享我个人的故事,大概二十年前我成为了一名对计算理论感兴趣的年轻数学研究员。而且当时研究的问题之一,就是让这些美丽而又强大的证明魔法不断变得非常高效。而且,我与我的合作者、同事一道做了大量辛勤的工作,几十年以来让这个效率不高的理论,变成了最终非常高效,而且可以在普通或者通用电脑上生成,并且进行验证。
到了这一阶段,成立了StarkWare,而StarkWare的使命就是用数学来维护区块链的可靠性,并且能够实现区块链的可扩展性。在此期间,我也使用了零知识证明技术的不同版本,并且为区块链引入隐私保护。我也是Z-cash创始人之一,但是今天不谈隐私的话题,我会聚焦数学和StarkNet的可扩展性。
经常有人会问我,从数学家到一名实践者,从一名计算机科学家、教授到企业家是怎样的一种体验?对我而言,从非常理论化的研究到非常实用的场景应用,就好像是穿越一座“沙漠”一样,作为理论家和科学家,我要谈实际应用,而做实践的人有时候不明白理论如何为他们所用,很长一段时间,我和我的同事们不得不穿行在“沙漠”当中,直到我们成功地抵达另外一边,并且做出了今天实际非常有效和可行可用的应用,当然这是另外一个故事了。这项技术能够让用户操作一台较为弱小的计算机,去验证另外一台更强大计算机的可靠性,而这与区块链又有什么关系呢?
回到刚才这句话,一台性能有限的计算机,可以监督并声明大量计算集群的可靠性,并且无需重新执行计算,这就是这项技术为什么会和区块链有关系。
试想一下,以太坊做一台电脑,有许多节点,以去中心化的方式来运行,但如果是一台电脑,作为一台电脑计算机而言,它的性能十分有限。换句话说,对它计算能力的需求远远高于当前的实际性能,这也就是为什么Gas的费用很高,而且很拥挤。所以,用STARK技术,可以用这台计算机监控在链下完成的更大规模的计算,以及计算结果的可靠性,而且可以拥有和以太坊相同的安全级别和信任假设。
与此同时,通过数学的魔法来增强所有计算的可靠性和安全性。
在当今的金融交易中,我们面临着两种不同的交易方式,第一种是非常传统,我们使用银行的信用卡和支付处理流程,通过这种方式,如果以一种抽象的方式来表述,有人正在使用一台大型计算机,并且每个人都需要信任它。
如果你想知道整个系统是否是非常诚信的,只需要相信或相信政府、审计员或者其他人正在做正确的事情,但它并不是非常包容性的系统,实际上是非常独特的,你和我都不能成为一家银行,并且进行这些交易的处理,那是传统的方式,它在计算和处理事务的能力非常有效。
比如区块链-以太坊是极强的包容性,这点非常棒,每个人都可以,也非常欢迎使用自己的个人笔记本电脑接入到以太坊网络,并且成为其信任基础的一部分,我也希望大家正在这样做。
为了让大家每个人都用我们的笔记本电脑连接到以太坊网络,并且成为其信任基础的一部分,我们需要限制其计算量,这样笔记本电脑才能承载。
换句话说,以太坊这样的高度包容性系统非常好,但是作为计算设备而言非常缓慢。我们想要的是具有包容性的系统,能够允许每个人将自己的计算机添加到这个网络中,并且对网络活动予以监督。
与此同时,能让这个系统在链下获得与大型计算机同等的规模。而连接这些不同世界的桥梁,实际上就是STARK以及相关的数学应用。
可扩展性有哪些方案可以选择呢?首先你可以让每个人买一台更大的电脑,当然有些人会被拒之门外。顺便说一下,我们也存在一些侧链,一些非常流行的侧链就是用这种做法。过去我们也存在着侧链的做法,比如EOS和BSC等等,实际上这个方案的实施就是让节点运行更大的计算机,你也可以选择购买一台大型的设备参与其中。但即便如此,它的规模也是有限的。与此同时,包容性也就丧失了。
比如说,当前最受欢迎的区块链之一,对硬件的要求是至少需要12个内核和128GB的内存,但是我的计算机没有,所以采取另外一种做法,就是要求使用称为欺诈证明的东西。比如Arbitrum和Rollup。有些硬件的要求会更大,这也就意味着我自己的笔记本电脑就没有办法加入。然而,有些人会声称存在着各种博弈论或者激励措施,将会使得这些更大的设备相互之间形成约束,到目前为止,这项技术还没有像预想的那样在任何地方开始启用。如果它确实得到应用,它的安全性应该要符合预期,但至少对于我而言,这点还不清楚,也没有得到证明。因此,这个方案会速度稍快,但是包容性稍差,有些人会拒之门外。
而我们要采用的方法是基于数学的证明,也就是有效性证明的方式,我们要实现的目标是能够让任何人运行非常庞大的计算机,并且处理相关的事情,然而做执行的一切事情都必须向L1进行证明,因为这是我们唯一信任的网络。
StarkNet很好体现了这一原则,当我们在StarkNet上运作时,安全性就是以太坊的安全性,你不用对StarkNet生态做出任何信任的假设,因为安全性的保障来自于底层,也就是以太坊,这是StarkNet能提供的,而这是来自于数学的力量。
证明商店、参观的收据,事实上餐厅的收据是一种非常古老的证明形式。如果你认为餐厅收据是一串用于声明可靠性的字串符,它是用来向顾客证明应该支付的总金额,而总和来自于一系列的算法。当我们收到收据的时候,你可以通过简单的运行这些计算来检查和验证结果的可靠性,因此餐厅收据就是可靠性的证明。
但是从数学的角度来看,它们并不是非常成熟,并且它们不支持可扩展性,因为你需要重新进行运算。而Stark证明是类似的,你可以将它看作类似于餐厅收据的东西,但是这个收据的长度以及检查该证明所需要的计算量,要比它所宣称的计算量小得多。所以使用这项技术,你可以处理数十万笔交易,而且不需要对证明器以及整个处理器做出任何信任假设,它可能是黑暗之王或者达斯维德的邪恶之王。
无论你处理这些交易提供什么,但是你可以保证所有的节点都不能作弊,也不能借,因为系统的任何更新都要有完整性证明,一起提交到L1,这就是我们所做的,对系统状态的任何更新都附有证明,没有人证明是虚假的,如果有证据那就表明是正确的执行,即使没有L1的监督,这就是STARK证明的力量。所以它不仅仅是一种理论,在以前是一种理论,但如今已经成为一种有效的系统。
想象一下,打造NFT的时候,如果你想用以太坊来铸造NFT,可以在一个区块当中放入几百个NFT。实际上,一年多以来,我们都为客户Inmiutebo X(音)提供服务,而他时不时需要铸造数十万、数百万个NFT,而我们的技术一次又一次帮助他们只需要用一个Stark证明又可以打造出来,而且执行了60万的NFT,所有这一切都可以轻松放入一个以太坊证明当中。有了这项技术之后,可以实现每个区块数百笔交易,扩容到每个区块数十万、数百万个交易。
StarkNet能够让每个开发人员、用户拥有这种非常魔力的技术,它能够增强以太坊的能力,并且为它扩容达到指数级。什么是StarkNet?它非常像以太坊,但是它是为L2。你可以把智能合约写到StarkNet上,可以向智能合约提供相关的交易,而且它支持通用的计算和可以组合。但是由于Stark证明的魔力性,可以提供更低Gas费用,你甚至可以把StarkNet看作是和以太坊非常类似的东西。从用户的角度来看,当你提供交易的时候,所有交易都进入到矿池,矿工对交易进行打包处理,写入到区块当中。
而StarkNet做的事情非常类似,在链下进行运行,也就是以太坊是作为L1底层链,不知道StarkNet上发生了什么,也不需要做任何的信任假设。但是用户可以向排序器提供数十万笔的交易,而排序器将对这些交易进行排序,一个个处理。然后这些交易被发送到证明器,证明器将会为所有交易的正确更新和执行生成一个更加严格的证明。实际上,证明要比计算和交易小几个指数级。这个证明已经提交给了以太坊,而在以太坊中有一个验证智能合约的把关负责校验和可靠性。
大家回想一下刚才提到的这张画面,一位弱小的孩子拥有巨大的魔力,通过魔力可以控制巨大的魔法生物,比如一条巨龙。而在刚才的行业当中,它指的是数学和Stark的力量,所以验证器(所谓的小孩儿)是位于L1底层的验证者,它是以太坊,但是他仍然可以使用StarkNet上非常强大的计算能力,这是属于L2层。
StarkNet自带了一种新的语言叫做Cairo ,简单和大家解释一下,为什么会有这种新的编程语言。你可能会有一个疑问,为什么以太坊会有这样一种新的编程语言,以太坊什么时候出现的?2015年左右,当时已经有了非常好的编程语言,比如Python和C语言。但是Vitalik和Gavin以及其他专家提出了名为EVM的虚拟机,和与之配套的新的编程语言。
当然有几种不同的语言,而Solidity是其中最有名的,同样现在建议用户和开发人员使用一种新的编程语言,即Cairo 。出于类似的原因,Vitalik和其他人发明了Solidity,想要运行区块链会产生新的约束系统,而且你需要一种能够满足这些约束的编程语言。
同样STARK也有许多代数和数学的限制,比如Mergen RP(音)的代数运算非常便宜,但密码的运算,比如说KACH和Digrus(音)运算非常昂贵。以太坊内存目前一些非常高效的范式,在使用StarkNet的L2上非常昂贵。
如果你想要获得最大的可扩展性,实际上你需要使用能够释放这些潜力的编程语言。对于StarkNet,其编程语言就是Cairo ,你可以用它来写各类应用。而且目前为止,开发人员已经为它编写了数百应用程序,包括用于投票、虚拟身份和游戏的应用程序,希望大家能够加入庞大且不断增长的StarkNet和用户网络,并且拥抱这一魔幻的技术。
非常感谢!
Bitcoin Exchange Reserves Surge: Are Traders Preparing For A Major Market Shift?
Bitcoin has recently shown signs of potential market shifts as key metrics reflect changing investor...
XRP News: Gasparino Calls Ripple’s SEC Regulation ‘Needless’ and Judge Torres’ Ruling ‘Idiotic’
The post XRP News: Gasparino Calls Ripple’s SEC Regulation ‘Needless’ and Judge Torres’ Ruling ‘Idio...
Dogecoin Is Observing Bullish Signals On These Indicators
An analyst has pointed out how Dogecoin has recently observed patterns in two indicators that could ...