请选择 进入手机版 | 继续访问电脑版
开启辅助访问
链路首页链路财经目前收录 币种 : 4908 交易所 : 310钱包 : 17 24H 交易量 : $43,403,137,051 总市值 : $245,388,183,835
2019
05/16
21:00
分享
评论
  • 可能是最靠谱不忽悠的区块链资讯平台


    作为发展和加强EOSIO软件的贡献者,我们高兴地宣布我们已经完成了EOSIO的升级候选发布版本。您可以在GitHub存储库找到更多关于EOSIO v1.8.0-rc1的细节。详细文档将在稳定版发布的时候在EOSIO Developer Portal上更新,如果您在EOSIO区块链网络上运营节点,您可以在上GitHub找到我们的建议。


    这次候选发布版本标志着EOSIO软件平台的一个重大升级:共识协议的升级,这次版本将对协议规则进行调整,要成功部署,它首先的需要区块生产节点的合作。请注意,这只是一个候选发布版本,主要用以收集反馈,社区内审核和测试升级版本几周之后,官方才会发布正式版本。目前最新的正式版是v1.7.3。


    当本版本升级成正式版后,我们将会介绍一些根本机制来激活共识协议升级。在EOSIO软件的GitHub存储库#6429, #6431, 和 #6437 三个部分中,您可以看到这些机制的细节。本次共识协议升级旨在修改协议规则,而这些机制允许EOSIO区块链上2/3活跃的区块生产者去激活共识协议升级的独立功能。所有的节点需要进行本地设置才能接受这些升级,而升级的过程非常简单,和安装新的节点软件版本没有太大的差异。基本上每个功能都可以按需激活,即,每个功能可以独立于其它功能被激活,但是,正如以下每个部分会提到的,某些功能可能需要依靠其它功能存在。


    EOSIO平台用户的影响:


    EOSIO v1.8.0-rc1候选发布版本协议升级特性:


    (#6431)启用协议功能预激活


    Codename: PREACTIVATE_FEATURE


    该功能实际上是激活共识协议升级的基本机制的一部分,所以,它应该是最先被激活的功能。为了在区块链上实现预激活,有些功能应该首先被设定好。这就让我们能够通过智能协议提出客观的链上政策来决定什么时候激活某个特定功能,而不是依赖于区块生产者们主观的想法。一般来说,这种客观的链上政策的形式是要求至少2/3活跃的区块生产者同意一个链上多重签名认证交易提议,而该提议能执行一个特殊的系统合约动作来预激活该特定功能。在带有该特定动作的系统合约版本被部署之前,PREACTIVATE_FEATURE功能必须已经被激活了,因为采用该行动需要在PREACTIVATE_FEATURE被激活之后才能使用的特权内在函数的支持。


    (#6333)不允许连接到不存在的权限


    Codename: ONLY_LINK_TO_EXISTING_PERMISSION


    不允许把一个动作(通过eosio::linkauth native action)连接到一个不存在的权限中。未做该检查不会产生任何安全问题,只是为了避免不方便用户。


     (#6672)修复对eosio::linkauth的过多限制


    Codename: FIX_LINKAUTH_RESTRICTION


    修复了无意中限定动作必须连接到最低权限要求的限制。主观减少不能修复该漏洞。但是,该漏洞不是安全问题。这是说,在该功能激活前,合约开发者不能把动作命名为updateauth, deleteauth, linkauth, unlinkauth, 和 canceldelay,以免用户对合约动作设定客户最低权限要求时遇到任何问题。


     (#6458)不允许提出空生产者调度


    Codename: DISALLOW_EMPTY_PRODUCER_SCHEDULE


    不允许合约提出空生产者调度。本漏洞不需要主观减少,因为:提出空生产者调度不会产生问题;且只有特权合约,如系统合约,才能提出生产者调度变化。


     (#6705)向自己发送动作时限制权限检查


    Codename: RESTRICT_ACTION_TO_SELF


    当合约向自己发送内联网动作或只发送只包含对自己动作的延期交易时,应用的授权检查绕过被移除。限制授权绕过的主观减少已经被释放了。但本功能在限制上更进一步,将其设定成客观要求,这样不管是在输入交易的原始动作、合约产生交易中的动作或者合约发出的内联网动作,所有的动作都需要进行授权检查行为。区块生产者应该要意识到,激活该功能会解除依靠其余激活授权绕过的合约,因为本功能会移除这些授权绕过。


     (#6103)修复了和取代延期交易相关的问题


    Codename: REPLACE_DEFERRED


    现在的机制在使用send_deferred内部函数取代已有的延期交易存在一个问题。首先,用来储存初始延期交易的RAM不会回到初始支付方。其次,初始延期交易的交易ID一直存在,这就意味着新的延期交易会使用错误的交易ID退回区块中。修复这些问题需要共识协议升级,这就是本功能要做的事情。本功能还会修改任何已经受到该漏洞影响的账户的RAM使用。目前,EOSIO软件已经不允许利用send_deferred内部函数取代现存延期交易来主动减少问题。但当本功能激活时,我们就会移除该机制。


     (#6115)避免延期交易的交易ID冲突


    Codename: NO_DUPLICATE_DEFERRED_ID


    过去取代延期交易额能会导致延期交易停止时的交易ID重复之前已停止的交易,但在使用现在EOSIO协议规则的时候还会出现其它情况导致延期交易和链上其它交易的ID相同。如果我们能保证区块链上任何两个不同的交易都几乎不会拥有相同的交易ID,那么大量的持币者,尤其是区块探索者,都能从中获益。本功能主要依靠REPLACE_DEFERRED功能,它会做出必要的调整保证我们实现上述目标。区块生产者应该注意,激活本功能会适当调整提供给合约的错误句柄的延期交易结构。对于本次调整的细节和它可能对现存合约产生的影响,详见评论。


     (#6105)修改对RAM计费的限制


    Codename: RAM_RESTRICTIONS


    先前发布的主观减轻的措施不允许动作通知背景下执行的非特权合约对除自己以外的其它账户RAM计费。本功能不单让该限制变成客观执行方法,同时它还采取了更加灵活的方式实现不让通知背景下执行的非特权合约在动作最后增加任何其他账户的RAM使用。但是,它还允许非特权合约执行动作(不管是不是在通知背景下)实现对另一个账户RAM计费的数据库操作,只要在动作最后该账户的RAM使用不增加即可。


     (#6332)只向交易的第一授权方收取CUP和网络带宽费用


    Codename: ONLY_BILL_FIRST_AUTHORIZER


    本功能改变了EOSIO区块链的CUP和Net使用收费行为,只收取交易第一授权方的费用。该变化让企业应用开发者能够建立其它模型,用以支付交易占用区块链网络产生的CPU和Net资源费用。比如说,他们可以设定应用支付其用户的CPU和Net费用,但只限于用户只使用该应用服务的交易。


     (#6988)把setcode动作转发到在eosio账户上部署的WebAssembly代码


    Codename: FORWARD_SETCODE


    本功能改变了eosio::setcode动作的分派方式,激活本功能后,WebAssembly系统合约代码哪怕没在合约设定在某些账户中都有机会执行。允许WebAssembly代码运行有利于加强执行关于合约部署的链上政策。


     (#7028)允许合约判定某内联网动作的发出者账号


    Codename: GET_SENDER


    本功能增加了一个新的内部函数,其名称是get_sender,它能允许合约判定哪个账户是某内联网动作的发出者。这给合约提供了更灵活的方式,通过发送内联网动作而不是使用require_receipient通知另一个合约事件的发生,同时,因为这个新的内部函数,合约还可避免遭遇欺骗攻击。


    请注意详细查阅EOSIO v1.8.0-rc1储存库,获得本次发布所有功能的完整解释。


    推荐所有基于EOSIO的区块链网络的升级过程


    在GitHub,我们向每一个运营EOSIO区块链网络节点的人提供了推荐详情,让大家可以合理地测试和升级系统,获得各个待安装功能。所有的节点运营商(包括非区块生产的节点)应该尽快阅读建议的指导方案,因为升级到EOSIO v1.8.0需要从头反复测试,这也需要一定的时间。这些步骤将在另一个节点上获得,您可以将来在一段时间内脱机使用这些步骤。


    在向任何非测试网络部署升级之前,协议升级应该在测试网络部署和测试。现在的EOSIO测试网络可以使用今天发布的EOSIO v1.8.0-rc1使用和测试升级过程。


    本次测试升级过程能够让相应EOSIO区块链网络的区块生产者练习采取必要的步骤,以成功地完成第一个功能的激活,该功能将剔除激活时还未升级到新版本节点的所有节点。这个过程我们也会通知区块生产者我们要求把节点从V1.7.x及之前的版本升级到v1.8.x,从而帮生产者决定什么时候最终通知持币人第一个功能激活的时间。


    免责声明


    Block.one是作为EOSIO社区的一员志愿对其做出贡献,但是并不能保证软件的整体性能和应用的性能。我们不代表、保证、确保或执行这里描述的任何版本、GitHub上发布的文件、EOSIO软件或者先前提到的,不管是明确说明或者暗示的,任何文件的发布,包括但不限于承诺书、商业性、为某个目的的实用性、不侵权性等。在任何情况下,我们都不对任何说法、损失或责任负责、不管是涉及合约、侵权或被侵权的情事件,不管这是因为软件或文件或使用或软件和文件中涉及的其它事宜导致,还是和这些情况相关,我们都不对此负责。测试结果或者性能数据都是有指示性的,不可能反应所有情况下的性能。任何关于第三方的引用、第三方产品、资源和服务都不是Block.one背书和支持的。第三方产品可能在任何时间被升级、改变或暂停,所以这里提供的信息可能会过时或不准确。任何使用本软件提供的关于第三放软件、产品和服务的个体应该建议这些第三方提供执照有效期、免责声明和免责条款。Block.one, EOSIO, EOSIO Labs, EOS, heptahedron和相应的图标都是Block.one的商标。这里提到的其它商标都是他们相应持有人的产权。


    来源:http://eos.wiki

    图片来源:http://eos.wiki

    EOS.Wiki是EOS主网超级节点. 

    EOS Wiki为社区提供最新的EOS双语资讯和技术文章.

    请为EOS Wiki投票. EOS Wiki的账号为eosdotwikibp

主题帖 256 关注 0 粉丝 0
情感指数

链路大数据分析置信度 4.23 %

TA的主题帖
主题相关
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表