为以太币引进 KZG 承诺:技术工程师角度(下)_日内
为以太币引进 KZG 承诺:技术工程师角度(下)
干货知识 | 为以太币引进 KZG 承诺:技术工程师角度(上)
(续前)什么叫 KZG10 承诺?
注 3.6:假如启动设置所计算的 [s],[s^2]…[s^d] 只计算到指数值 d,这一组值是不可以用于转化成一切级别超过 d 的多项式的承诺的。相反也是。
由于在安全性的曲线图上,没有办法用两个点乘积来得到第三个点,因此 [s^(d k)] 是一个(始终!)没法算出的值,因而可以说,随意的承诺 c(f) 都只有表明一个级别不大于 d 的多项式。
注 3.7:应用 KZG10 承诺的直接证据大部分便是在证实 f(x) - 一些余数 的結果能够 按特殊的方法来溶解,但这就需要有一种方法能够 乘积 这种因素,并与初始的承诺相较为 C(f)=f([s])。
因此,大家必须 “匹配方程组”,便是一种可以把曲线图上的两个点乘积并与另一个曲线图点较为的加法,由于我们无法立即让这两个曲线图点立即乘积来获得生成的曲线图点。
注 3.8:以上2个特性,能够 进一步用于证实某一承诺 c(f) 所意味着的多项式 f(x) 的级别 k 低于 d。
综上所述,KZG10 承诺能够 有非常好的特性:
认证承诺的全过程是:(由区块链转化成者)给予最底层多项式在随意点 r 上的值 y=f(r) ,及其除法多项式 q(x)=(f(x)-y)/(x-r) 在 [s] 点的值(即 q([s])),并且用 匹配方程组 来比照以前所给予的承诺 f[s]。这就叫 打开 在 r 点的承诺,而 q([s]) 便是直接证据。非常容易看得出,q(s) 便是 p(s)-r 除于 s-r ,正好便是大家用匹配方程组来查验的物品,即查验 (f([s])-[y]) * '= q([s]) * [s-r]' (译员注:这里疑似 f(s)-r ,但全文便是 p(s)-r)。
在非互动且可预测性的版本号中, Fiat Shamir Heuristic 给予了一种方法来得到 相对性任意的点 r:由于偶然性只跟大家试着证实的键入相关,即,只需早已拥有承诺 c=f([s]) ,r 就可以用hach全部键入(r=Hash(C,..))来得到 ,而 承诺的明确提出者 要承担给予 打开点 和 直接证据。
应用事先计算好的拉格朗日多项式,f([s]) 和 q([s]) 都能够在 求值方式 下立即计算。要计算 r 处的打开值,就必须把 f(x) 变为 f(x)=a0 a1*x^1.... 的指数方式(也即提取出 a0、a1、…)。能够 根据 反方向迅速傅里叶变换 来完成,复杂度为 O(d log d),但乃至这儿也有一种可以用的取代优化算法,在 O(d) 的复杂度内进行计算,而不用应用反方向迅速傅里叶变换。
你能应用单独打开点和直接证据来证实 f(x) 的好几个值,也就是好几个数据库索引值相匹配的标值, index1=>value1、index2=>value2 …
(用以计算直接证据的)除法多项式 q(x) 如今变成了 f(x) 除于零多项式 z(x) =(x-w^index1)*(x-w^index2)...(x-w^indexk) 的商
余数为 r(x) ( r(x) 是一个较大 级别为 k 的多项式,由 index1=>value1, index2=>value2 … indexk=valuek 插值法而成)
查验 ( f([s])-r([s]) )* ' = q([s]) * z([s]')
在 PoS 链的一同发展设定中,共享资源的数据块会被表明为低级的多项式(并为了更好地 纠删码 而应用一样的 线性拟合 多项式拓展为二倍大),KZG 承诺能够 用于查验随意 任意 分层并认证和保证 数据可得性,而不用得到 弟兄数据点。这就打开了随机抽样的概率。
如今,针对一个较大 很有可能包括 2^28 个帐户键的情况,你需要最少 2^28 阶的多项式来搭建 平扁的 承诺(flat commitment)(事实上的帐户键总室内空间会大得多很多)。在升级和插进的情况下,会出现一些不便捷。对任一帐户的随意变更,都是会开启承诺(及其更不便的,印证数据/直接证据)的再次计算。
升级 KZG10 承诺
对任一 数据库索引值 => 标值 点的一切变更,例如变更了 indexk,都必须应用相对应的拉格朗日多项式来升级承诺。复杂度约为每一次升级 O(1)。
可是,由于 f(x) 自身也更改了,因此 全部的印证 q_i([s]) ,也即全部对第 i 个键值对的印证,也必须升级。总复杂度约为 O(N)
如果我们沒有维护保养事先计算好的 q_i([s]) 印证,一切一条印证数据都需要重新开始计算,都必须 O(N)
一种复杂度为 sqrt(N) 的升级 KZG10 承诺的结构
因而,为了更好地实现梦想承诺计划方案的第四点,大家必须一个独特的结构:Verkle trie。
必须表明的以太币的情况大概有 2^28 等于 16^7 等于 2.5 亿 个键值对。如果我们只应用平扁的承诺(那麼大家必须的级别就最少是 2^28)。尽管大家的直接证据始终是 48 个字节数的椭圆曲线原素,但随意的插进或升级,都必须 O(N) 次实际操作来升级全部事先计算好的印证数据(也就是全部点的 q_i(s) ,由于 f(x) 自身早已更改了);甚至是,要是没有事先计算好的印证数据,则一条印证数据都必须花 O(N) 来再次计算。
因而,大家必须把平扁的构造换为称为 Verkle 树 的构造,跟默克尔树一样是树形结构。
即,像默克尔树一样,搭建出一棵承诺树,那样大家就可以确保级别 d 较为小(但也必须达到约 256 或是 1024)。
每一个父节点都编号对他的儿子连接点的承诺,子连接点便是一个投射,其数据库索引值都存有父亲连接点内
事实上,父节点的承诺编号了hach后的子连接点,由于承诺的键入是规范化的、32 字节数的值(见上文的 注3.0)。
叶子节点编号了对其所储存的数据的 32 字节数哈希值的承诺;或是立即自动跳转到数据,倘若其 32 字节数的数据的使用方法与下一章提及的 情况树 建议使用方法一样得话。
要给予对一个支系的直接证据(类似内塔尼亚胡支系直接证据)时,一个多值证实的承诺 D、E 能够 紧紧围绕应用 fiat shamir heruristic 造成一个相对性任意的点 t 来转化成。
复杂度
这儿是一份对 Verkle 多值证实的剖析
升级/插进 叶子节点 index=>value 必须升级 log_d(N) 个承诺 ~ log_d(N)
为转化成直接证据,证实者必须
计算 f_i(X)/(X-z_i) 在 [s] 处的值,用以转化成 D ,复杂度累计 O(d log_d N),但能够 在 升级/插进 时调节以节省预计算,复杂度会变为O d log_d(N)
计算 m 个 ~ O( log_d(N) ) 个 f_i(t) 来计算 h(t),累计为 O (d log_d N)
计算 π, ρ ,必须对 m~ log_d N 个指数值多项式的和做除法。必须约 O(d log_d N) 来得到 分子结构的求值方式,以计算除法
证实的经营规模(包含用以计算 E 的支系承诺)再加上认证的复杂度 ~ O( log_d(N) )
被建议的 ETH 情况 Verkle 树
单一的树形结构,储存帐户的 header 和 编码分层,也有 储存项分层,连接点的承诺为级别 d=256 的多项式
把详细地址和 头/储存空挡 融合起來计算出一个 32 字节数的 storageKey,实质上便是元组 (address,sub_key,leaf_key) 的一种表明
所计算的键的前 30 个字节数用以搭建一般的 verkle 树连接点 pivots
后 2 个字节数是一个树高为 2 的子树,表明数最多 65536 个 32 字节数的分层
针对基本上的数据,这一树高为 2 的子树数最多有 4 个叶片承诺,来遮盖 haeader 和 code
由于一个分层为 65536*32 字节数的分层表明为单独的篇幅,因此 主树枝很有可能有很多子树来储存一个帐户
Gas 标价计划方案
浏览种类 (address, sub_key, leaf_key) 的事情
每一个专业的浏览事情都扣除 WITNESS_CHUNK_COST
每一个专业的 address,sub_key 组成都扣除附加的 WITNESS_BRANCH_COST
编码内塔尼亚胡化
编码会全自动变成 verkle 树的一部分(做为统一的情况树的一部分)
一个区块链的 header 和 code 都做为一个树高为 2 的承诺树的一部分
单独分层数最多有 4 条印证数据,各自扣除 WITNESS_CHUNK_COST,浏览帐户必须扣除一次 WITNESS_BRANCH_COST
ETH PoS 的总体目标之一是可以递交约 1.5CB/s 的数据量(把这个货运量了解为情况变动的货运量,因而是 L2 rollup 能够 运用的买卖货运量,最后是 L1 EVM 的货运量)。要完成这一点,很多并行处理的区块链建议要能传出并在给出的 12 秒内认证;也就是要存有好几条分片(约 64),每一个分片在每一个 slot 都需要公布自身的数据块。若有超过 2/3 的网络投票适用,信标链区块链将包括分片数据块,分岔挑选标准也将依据信标链区块链内全部数据块以及先祖的数据可得性明确它是不是能变成 碳链区块链。
注 3:这时的分片并不是链,一切暗含的次序都需要由 L2 协议书来表述。
KZG 承诺还可以用于搭建数据实效性和可得性计划方案,手机客户端不用浏览分片提议者公布的详细数据就可以校检其可得性。
分片数据块(没有纠删码)是 16384 个样版(每一个 32 字节数),约为 512 kb;也有数据头,关键由这种样版相对应的较大 16384 阶的多项式承诺构成
但多项式求值方式 D 却有 2^16384 的经营规模,即,1,w^1,…w^,… w^32767,而 W 是 32768 的模块根(并不是 16384 的)
我们可以为数据(f(w^i)=sample-i for
注 3.6:假如启动设置所计
他还表明,自身只在以太坊工作中了6个月,而他的许多精力都花在IOHK。先前,他近期变更了Reddit登录名,之前应用ethereumcharles的呢称,新呢称是IOGCharles。( Cryptopotato)[2020/6/15]
阿里巴巴参谋长:不觉得以太坊早已取得成功:阿里集团公司参谋长曾鸣今日在“三点钟难眠区块链”群发布了自身对区块链的观点。他表明,假如有一个新运用充足大(例如做到干万客户),其不仅会发布自身的交易中心,并且会推自身的基础设施建设平台,乃至自身的币,它是生态的规范玩法;因而恰好是在这个实际意义上,分辨区块链处在哪一个发展趋势环节是十分关键的。他认可BTC是区块链第一个取得成功运用,并且因为其贷币特性,很有可能会十分取得成功。殊不知他并不认为以太坊早已取得成功,由于其还并不是真真正正的生态,只有算作一种平台。假如一个大运用成功了,毫无疑问会发布自身的智能合约平台,假如这件事情在未来三年上下产生,对以太坊的严厉打击可能是极大的。根据这一分辨,他觉得区块链生态现阶段更相近上世纪的92年,而不是99年。[2018/2/2 声音 | V神:以太经典成为以太坊2.0的分片链在技术上可行的:Vitalik Buterin回答了 Reddit 论坛中关于「如果以太坊 1.0 可以成为以太坊 2.0 的一条分片链的话,那以太经典是不是也可以成为以太坊 2.0 的一条分片链」的问题,他明确表示从技术上很有可能,并解释到,可以使用同样的合并流程将 ETC 的状态导入 ETH 2.0,然后 ETC 的执行环境代码将会根据合并时的汇率(或事先约定的汇率)强制执行与信标链 ETH 不同的汇率。这就是重新合并两者代币的办法。[2020/1/23]
动态 | Kakao称其区块链平台Klaytn挖矿用时仅为以太坊的十五分之一:据Korea Herald消息,在首尔举行的新闻发布会上,Kakao的区块链子公司Ground X表示,其区块链平台Klaytn挖矿只花费了以太坊十五分之一的时间。以太坊挖矿时间为15秒,而Klaytn只需一秒即可完成。Ground X表示,区块开采时间的缩短使得Klaytn每秒能完成300笔交易,而以太坊每秒只能完成20笔交易。[2019/7/9]
声音 | 以太坊在线社区成员: 2019年将成为以太坊第2层扩容的一年:据bitcoinexchangeguide报道,分析师、以太坊在线社区成员Eric Coner发布推文称, 2019年将成为以太坊第2层扩容的一年。他认为,以太坊区块链网络上的大多数活动都将关注第2层扩容解决方案。[2019/1/9]
标签:
区块链热门资讯
e":"200107","errmsg":"服务器 LAVAswap总锁定价值突破1200万美元:据官方消息,LAVAswap上线1小时,链上TVL (总锁定价值)突破1200万美元。目前有三个活跃的空投池,包括HUSD、HBTC & HPT。HT单币质押矿池将于北京时间今天晚上10点开启。
2021/6/18 17:43:43靴子终落地。 继新疆、内蒙古、青海、云南相继出台针对虚拟货币挖矿的监管政策后,比特币挖矿大省四川终于出手。这也是自6月2日国家能源局四川监管办公室召开关于虚拟货币“挖矿”有关情况的调研座谈会后的进一步动作。 据澎湃新闻报道,6月18日,四川省发改委、四川能源局正式下发《关于清理关停虚拟货币挖矿项目的通知》。
2021/6/18 17:43:35灰度在其考虑的资产清单中增加了13种新的加密货币,再次表现出对DeFi的极大兴趣。 机构资产管理公司灰度宣布,目前正在考虑将另外13种加密货币资产增加到其加密货币投资信托产品中。
2021/6/18 17:31:35高盛:比特币并不是股民玩得起的项目投资? 伴随着比特币过去一年中飙涨至新纪录,很多人都是在考虑到是不是应当进场项目投资。殊不知近日,高盛ISG团队却警示称,针对大部分投资者,投资组合中配备虚拟货币是没有意义的。在一份给个人资产管理顾客的新汇报中,高盛指出,比特币和别的加密货币无法达到项目投资规范。
2021/6/18 16:52:13金色沙龙第64期线上版:联盟链-自主创新场景运用的不经意与必定 由金色金融举办金色的沙龙第64期线上版:“联盟链-自主创新场景运用的不经意与必定”将要于6月23日 14:00在金色财经直播服务 金色沙龙 | 田琪:隐私币是货币类里面刚需:在今日举行的《隐私计算——区块链信息安全守护者》为主题的金色沙龙中,Grin古灵阁社区核心成员田琪表示。
2021/6/18 16:52:01挪动出行区块链平台变成 将来挪动出行服务项目的技术骨干技术性 假如挪动出行不那麼繁杂、不那麼分散化会如何? 如果我们能够 根据 1 次点一下和 1 张火车票为大家提供一次详细的旅途会如何? 这个问题并不新鮮,bloXmove 的解决方法是机构和推动区块链技术的 MaaS 生态体系,提供公平的市场竞争自然环境并能够 推动公共性使用价值。
2021/6/18 16:24:58