ZKEVM是一个具有可编程性,以ZK技术为基础的虚拟机,它可以为虚拟机执行的所有操作生成一个零知识证明,用来证明虚拟机执行操作的正确性。有关ZKEVM的几种实现方案介绍及优劣对比,可以参考V神的文章:ThedifferenttypesofZK-EVMs;如果你想了解更多的设计细节,你也可以阅读PSE的ZKEVM方案(native-level):privacy-scaling-explorations/zkevm-specsPolygon的ZKEVM设计(bytecode-level):PolygonzkEVMDocumentation;Sin7y的ZKEVM设计(language-level):OlaVM:AnEthereumcompatibleZKVM。\n\n无论是哪种方案,都需要用zk去约束VM的所有的行为,这些行为包括:
Uniswap关于“BSL过期后跨链部署和新uniswap.eth子域名创建”的温度检查投票已通过:4月14日消息,Uniswap社区关于“商业源代码许可证(BSL)过期后跨链部署和新uniswap.eth子域名创建”提案的温度检查投票已结束,并以100%的支持率获得通过。
根据该提案,Uniswap基金会新任治理主管Erin Koen表示,BSL到期后,为每条链确定一个官方Uniswap V3部署将是有益的,以便为用户提供安全保障并明确Uniswap治理。此外,为了与在BSL到期后推荐的治理流程保持一致。Uniswap基金会建议创建一个新的ENS子域v3-deployments.uniswap.eth,以跟踪Uniswap v3在L1和L2上的官方部署。
此前消息,Uniswap V3核心代码版权商业保护(BSL)已于4月1日到期。[2023/4/14 14:03:18]
?执行合约计算逻辑
动态 | “科技先驱在描述AI和区块链时面临困难”成11月关于AI的最受欢迎推文之一:数据和分析公司GlobalData根据其影响力平台的数据,列出了2019年11月关于人工智能最受欢迎的10条推文。其中包括Salesforce首席数字布道师Vala Afshar在推特上解释人工智能和区块链所面临的困难。Afshar在推特上分享了比尔?盖茨1995年在David Letterman主持的一个脱口秀节目上接受采访的视频,谈到了科技先锋在描述人工智能和区块链时目前面临的困难。2019年11月19日,Afshar在推特上写道:“1995年,就在万维网诞生两年后,比尔?盖茨试图向Letterman解释‘互联网’。如今,科技先驱们在试图描述人工智能和区块链时,也面临着同样的困难和嘲笑。”此条推文获得了969个赞和467条转发。(GlobalData)[2019/12/23]
?执行内存访问
动态 | 慢雾关于 BSV 区块异常的进一步说明:此前慢雾安全团队披露“昨晚 BSV 区块连续出现多次回滚(高度 578640-578645),异常区块的交易数超多,通过慢雾安全团队的持续监测与分析,虽然 BSV 主网之后恢复正常且这次回滚行为和之前慢雾安全团队披露的 ETC 51% 双花盗币攻击行为不一样,出于谨慎目的,建议对接了 BSV 的交易所暂停 BSV 充提或提高确认数。”之后,通过与 BSV 社区的沟通,BSV 社区指出这是一位开发者在主网进行的一次短时生成大量交易的压力测试,该测试导致了本次区块深度重组事件,这种事件不会导致双花攻击,不会造成交易损失。通过慢雾安全团队的进一步分析来看,慢雾安全团队倾向认同这种“区块重组”说法。[2019/4/19]
?执行哈希计算
?执行世界状态更新
动态 | Coinbase提交关于提高加密货币钱包安全性的专利:据悉,Coinbase已经提交了一项专利,涉及一项旨在提高加密货币钱包安全性的新技术。Coinbase的专利于2018年8月14日提交给美国专利和商标局(USPTO)。这样做的目的是确保用户可以在不影响其安全性的情况下,从他们的比特币钱包中直接付款。[2018/8/21]
?...
众所周知,zk在计算压缩领域,具有极大的应用的前景;无论原始的计算多么复杂,其验证过程都十分高效,这是所有zk算法的基本技能。因此,对于VM执行过程中的计算部分,zk可以很好的发挥作用;而在VM执行的过程中,除了计算本身外,还存在一些内存访问操作,我们需要把一些数据提前放在内存里,然后在执行计算的时候取出来。
而由于大部分的VM都是读写内存,因此不得不约束这些内存访问操作的正确性;对于内存访问的约束本身并不复杂,但是由于内存访问的次数很高,所以导致多项式的阶数很高,使得内存相关的约束证明耗时比较可观。
日本财务高级官员:关于数字货币的讨论未来还会继续:日本财务省高级官员称G20公报关于贸易的措辞较上次汉堡公报措辞很可能变动不大,而关于数字货币及其他“棘手问题”的讨论很可能还将在未来继续。[2018/3/20]
在ZK(E)VM的方案中,我们更应该把zk主要应用在对于计算本身的证明,对于EVM的其他行为,我们可以在VM层面去优化,以减少zk约束的规模。
Memory的设计
以EVM为例,EVM的内存是一块很简单的字节数组,可以存储32字节或者1字节的数据,也可以读取32字节的数据。
图片来源:ethereum_evm_illustrated,page51
在EVM中,和Memory相关的指令有:
?MLOAD(x):从地址x处加载32字节的数据到调用栈(stack)
?MSTORE(x,y):从地址x开始,写入32字节的y
?MSTORE8(x,y):从地址x开始,写入8字节的y(低位开始)\n有兴趣的读者可以在EVMPlayground上感受下,上述内存操作带来的内存和栈的变化。
Memory的约束
在OlaVM的5.3.5节,你可以看到关于Memory约束的设计原则(OlaVM内存相关的指令和EVM类似)。
在OlaVM中,RAM的所有操作组成一个独立的table,table里的内容由memory和storage两种类型组成。在这里,我们只关注对于memory的约束。\n内存的操作类型大体可以分为三类:
?Init操作
?write操作
?read操作
触发Init的场景有三种,分别是ctx的变换,type的变化,addr的变化;当任何一个场景触发时,需要约束,操作类型为w(write),v(value)为0。
当上述三种场景没有触发时,则需要根据当前的操作类型来约束;
?如果是w(write)操作,需要约束clk是递增的,写入的值v是对的。
?如果是r(read)操作,需要约束clk是递增的,读取的值和上次写入的值是相同的。
一些可能性提升
?对于Init操作,需要约束一个内存地址的初始化的值为0么?
我认为没有必要对初始化的操作进行约束;实际上,对于任何地址,你可以约束它的第一次访问必须是write操作,而不是read操作;而如果是write-once内存模型,这个限制将天然存在,因此,如果虚拟机的内存模型改为write-once模型,将减少对内存的访问约束。
?对于read操作,能否避免对应的约束,即避免校验读取的值和上次写入的值一致?
由于VM本身定义的memory类型的读写内存,无法保证,VM在读取这个内存地址的值之前,这个地址的值没有被修改,因此需要增加一个相等性校验,如下图所示:
由此可以看出,产生这个约束的核心原因,内存模型是读写内存,地址的值存在被改写的可能,因此,如果尝试使用只读内存,那么就不需要在memory的约束去实现上述的一致性约束。
注意:这可能会增加虚拟机的实现难度,因为这是一个不常用的内存模型;并且,我们应该不会首先在这个虚拟机上面去定义一个高级DSL,因为这个语言对Dapp开发者会有些不友好,需要在编译器层面去消除,使得这些不友好,对开发者不可见。\n\n所以,如果采用上述内存模型,内存模块的约束,将只剩下针对write操作的约束,即使用copyconstraints来保证写入的值是对的即可。无须约束:
?读取的值等于写入的值,因为内存只能被写一次
?读的clk大于写的clk,因为只能先写再读
?内存的初始化值为0
参考
ethereum_evm_illustrated,page51
关于我们
Sin7y成立于2021年,由顶尖的区块链开发者组成。我们既是项目孵化器也是区块链技术研究团队,探索EVM、Layer2、跨链、隐私计算、自主支付解决方案等最重要和最前沿的技术。
微信公众号:Sin7Y
GitHub|Twitter|Telegram|Medium|Mirror|HackMD|HackerNoon
TetherGold(XAU?)和EuroTether(EUR?)将在火币全球站上线Tether于2022年12月8日在火币全球数字代币交易所推出TetherGold(XAU?)和EuroTet.
Azuki中国社区红豆花园携手1900ArtSpace共同主办了首次国内HoldersParty/Azuki文化艺术展览.
2022波场黑客松大赛第三季获奖项目已敲定。本赛季共吸引了1185名参赛者,收到了272个团队提交的参赛作品,第三季大赛分为6个赛道:Web3、DeFi、NFT、GameFi、Ecosystem.
人工智能AI有人热情膜拜,有人畏惧如虎,AI的发展已经进入高层面的快车道,技术更新迭代日新夜异,技术无罪也无善恶,曾经科幻未来的人机交流,共生共存如今在我们的脑海中已经有了轮廓的意识感想.
各位朋友,欢迎来到SignalPlus每日晨报。SignalPlus晨报每天为各位更新宏观市场信息,并分享我们对宏观趋势的观察和看法。欢迎追踪订阅,与我们一起关注最新的市场动态.
前一天美国FOMC会议的影响继续发酵,昨天市场仍然全面下跌,S&P500和Nasdaq分别下跌1%和1.7%,2年期美债收益率逼近周期高点4.72%,10年期也升至4.15%.