http://www.7klian.com

通过钻石尺度办理以太坊合约巨细限制

[24]Nick Mudge: https://dev.to/mudgen

钻石尺度越来越受接待

[8]Codefi: https://codefi.consensys.net/
[21]领略以太坊的钻石尺度: https://dev.to/mudgen/understanding-diamonds-on-ethereum-1fb
Ronan Sandford (wighawag[14])是一位精巧的智能合约开拓人员,也是ERC-1155尺度的作者,他公布[15]他正在致力于在buidler-deploy[16]中增加对钻石的支持,从而使钻石的陈设/切割变得很是容易。buidler-deploy是一种将合约陈设到任何网络、跟踪它们并复制沟通情况举办测试的机制。
[3]Tiny熊: https://learnblockchain.cn/people/15
[12]Diamond Setter: https://github.com/lampshade9909/DiamondSetter
[6]领略以太坊钻石尺度: https://dev.to/mudgen/understanding-diamonds-on-ethereum-1fb
[14]wighawag: https://twitter.com/wighawag
[17]Nayms: https://nayms.io/
有人提议增加或打消合约的最大局限
限制。但维塔利克.布特林(Vitalik Buterin)出于技能原因阻挡该协议,并保卫利用“署理合约”和“委托合约”的做法。署理合约是指通过利用称为“delegatecall”的低层操纵通过挪用其他合约成果来保持当前合约较小局限的合约。
[16]buidler-deploy: https://github.com/wighawag/buidler-deploy#readme
[7]ConsenSys Diligence: https://diligence.consensys.net
不行不提的是钻石尺度包罗一个建设可进级钻石合约的机动而透明的要领。实现钻石尺度的合约可进级是可选的,但有些人大概正是冲着可进级成果而建设钻石尺度合约的。
ERC-1155多代币尺度提到[10]了进级合约的钻石尺度(EIP-2535)。
基于以上分歧,我认为把如何操纵举办尺度化会是一个好主意。如何建设署理合约来模仿大概高出24kb
巨细限制的大型合约。
[9]发起: https://diligence.consensys.net/audits/2020/06/codefi-erc1400-assessment/#diamond-standard
VolleyFire[11],一个分手式生意业务所的活动性供给商正在利用钻石尺度。
[5]钻石尺度: https://github.com/ethereum/EIPs/issues/2535
[2]will: https://learnblockchain.cn/people/617
执行钻石尺度的合约称为钻石。“钻石”一词用于将钻石与只能从单个合约借用代码的通例合约和署理合约区分隔来。
[13]Diamond Setter,以太坊智能合约打点器: http://joeyzacherl.com/2020/06/diamond-setter-ethereum-smart-contract-manager
[15]公布: https://twitter.com/wighawag/status/1280992800545349644
[22]Discord论坛: https://discord.gg/kQewPw2
Nayms[17]在出产情况中利用钻石。Ram[18]写了一篇关于其实现的博文:利用钻石尺度的可进级智能合约[19]

[1]登链翻译打算: https://github.com/lbc-team/Pioneer
钻石尺度利用类比的方法扩展了“钻石切割”的成果 ,用于增加,替换,或删除切面和成果。这雷同于给以一个真正的钻石新切面,而是通过合约来切割。
[11]VolleyFire: http://joeyzacherl.com/2018/10/volleyfire-liquidity-provider-for-decentralized-exchanges/
纵然不是实现大型尺度合约,一些开拓人员也会但愿开拓大型合约,以便将相关代码放在同一个以太坊地点下。并且,,假如状态和成果一起生存在同一个以太坊地点下,那么会见和修改合约存储就更容易、更机动。
[19]利用钻石尺度的可进级智能合约: https://hiddentao.com/archives/2020/05/28/upgradeable-smart-contracts-using-diamond-standard
怎么办呢?
我最近写了一篇关于钻石的更深入的文章,个中包罗如何开始实现钻石尺度:领略以太坊钻石尺度[6]
这就是为什么我拟定了钻石尺度[5]。尺度类型如何去建设一个小合约,这个合约可以像利用当前合约的代码一样利用任何数量的其他合约的代码。
[18]Ram: https://twitter.com/hiddentao

参考资料

合约包括太多函数和代码,将会到达合约24KB巨细的最大限制。对付某些范例的合约来说,这是一个真正的问题。
VolleyFire的开拓人员乔伊·扎克尔宣布了一个名为Diamond Setter[12]的Python东西,它是钻石合约打点器。以下是他的博客文章:Diamond Setter,以太坊智能合约打点器[13]
[20]受接待的帖子: https://www.reddit.com/r/ethereum/comments/gze6k3/a_diamond_is_a_set_of_contracts_that_can_access
上个月,ConsenSys Diligence[7] 对Codefi[8]的合约举办了一次民众安详审计。ConsenSys Diligence发起[9]Codefi利用钻石尺度来
办理合约最大局限限制问题。
钻石尺度中界说的新术语与真钻石的类比是一致的。这用于界说和区分钻石和其他范例的合约。不幸的是,新的术语大概会成为一些人进修该尺度的障碍。可是新的术语很少,我们在本文中已经先容了这些新术语。术语是:钻石(diamond),钻石切割(diamondCut),切面(facet)和放大镜(The Loupe)。

在Reddit上关于钻石尺度第一个受接待的帖子[20]。

一些合约尺度需要很多成果。譬喻,ERC1400安详代币尺度需要27个函数和13个事件。ERC-998可组合不行替换代币[4]尺度指定了31个函数。通过实现这些尺度的其他特定于应用措施的代码合约,可以很容易地超出24KB的限制。
[10]提到: https://eips.ethereum.org/EIPS/eip-1155#upgrades
另外,术语“钻石”用来成立一个形象的观念,用于相识其如何事情。真正的钻石有差异的侧面,叫做切面(facet)。可以设想,一个在以太坊钻石合约也有差异的切面。每一个钻石借用成果的合约都是差异的侧面或切面(facet)。
很多小我私家和公司接洽了我,汇报我他们正在利用钻石尺度或正在为他们的系统实现钻石尺度。以下是一些果真颁发过相关文章的人提供的一些信息:
[23]Cell Network: https://www.cellnetwork.io/?utm_souce=learnblockchain
另外,钻石尺度提供了称为“放大镜(The Loupe)”的成果,返回关于切面的信息和钻石存在的成果。在钻石行业,“放大镜”是一种用来查抄钻石的东西。
[4]ERC-998可组合不行替换代币: https://eips.ethereum.org/EIPS/eip-998

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

相关文章阅读