EOS生态

作者: 陈鲁勇 | 来源:发表于2018-05-11 13:49 被阅读257次

    ● EOS为什么被称为区块链3.0,和被称为2.0的以太坊有什么区别?
    ● EOS基础——账户概念
    ● EOS的共识机制——什么是DPOS,为什么采用这种共识机制
    ● EOS生态——什么是EOS宪法
    ● EOS生态——持有EOS的意义,EOS能用来做什么
    ● EOS生态——什么是DApp


    特性 参数 信息来源 备注
    共识算法 BFT-DPOS / /
    产块速度 0.5秒/块 consensus-algorithm-bft-dpos 会出现空白块,即在预定时间没生成出对应的块
    产块原理 多人协作 顺序产块 / The selected producers are scheduled in an order agreed upon by 15 or more producers.
    产块周期 126/轮(待确定) / 126 (6 blocks each, times 21 producers).
    每年增发 总量5%(最多增发) Block Rewards /
    不可逆转确认 1秒 Transaction Confirmation /

    简介

    Dan Larimer EOS 首席技术官,也是比特股(去中心化的交易所)、Steamit社区联合创始人。

    基本概念

    EOS 超级节点是指使用 DPOS 机制,实现股份授权证明。利用投票机制选出超级节点进行挖矿,EOS 每年会增发总量(首发 10 亿)的 5% 的 EOS,而这些超级节点会获得增发的一部分。

    EOS为什么被称为区块链3.0,和被称为2.0的以太坊有什么区别?

    区块链进行了几个阶段
    第一阶段. 初级共识阶段,第一个落地应用数字货币
    第二阶段. 建立在共识基础上的智能合约、初级 DAPPICO 风暴
    第三阶段.

    来说说 EOS 使用这些技术特性,引出了哪些值得一提的内容

    免费的基础服务

    现在大部分区块链数字货币在转账方面需要手续费,这已经是举世皆知的事情了。
    EOS 中,将消除这个恶瘤,提供快速免费的转账服务。
    其实这也是历史发展的必然,历来都是由企业为办公空间、计算电力以及运营业务所需的其他费用买单。客户从企业购买特定产品,而这些产品的销售收入将用于支付企业的运营成本。同样,没有任何网站要求访问者为维护服务器而支付小额费用。因此,去中心化应用程序不应该强迫它的客户为使用区块链而向区块链支付直接费用。

    百万级处理速度

    区块链应用受限的巨大原因之一 —— 交易请求处理速度。
    这点,我们在以太坊的加密猫中,已经见识到了。
    单单一个 DAPP 应用就已经让整个以太坊造成网络拥堵。
    根据现在的 EOS 超级节点的竞争策略,以分配的方式处理数据请求,21 个节点为 1 轮,每轮每个节点连续处理 6 个请求(白皮书:6 次,实际测试节点测试:12 次),据官方计算,将拥有百万级的处理速度,这必然可以扩大区块链的应用场景。

    跨链交易

    比特股就是最完美的解释,比特股实现了一个去中心化的交易所完成了币币交易。

    轻松升级和故障修复

    基于区块链构建应用程序的企业,需要区块链平台具备灵活性,可以为其应用添加新特性来增强完善。区块链平台必须对软件和智能合约的升级提供支持。

    所有的非小型的软件都可能会有缺陷,即使是用了最严格的形式验证也是如此。当bug不可避免出现时,区块链平台必须足够健壮,能够修复这些bug。

    延迟低

    及时的反馈是良好用户体验的基础。延迟时间如果超过了几秒钟,会大大影响用户体验,严重降低基于区块链的应用相对于现有的非区块链应用的竞争力。区块链平台应当支持低延迟的交易。

    自产自销的EOS生态

    这里我们分享关于持有 EOS 的价值、本身的功用以及 EOS 基础生态。

    • 内存市场

      EOS dawn 4.0 @Daniel Larimer 介绍中,已得知该版本推出了内存市场,内存交易将收取 1% 的手续费。

      作者也做了一个大胆的假设:
      如果 RAM 的年度交易量等于令牌供应量,则不存在通胀。从中可以看出 Daniel Larimer 或者说 EOS 团队 还是极度看好 RAM 市场的。

    • DAPP开发商主动稀释

      DAPP 运营商为要将应用搭建在 EOS 链上,必须持有 EOS Token (EOS可以冻结抵押,以置换网络资源)或者购买网络资源(EOS可以冻结出租本应有权拥有的网络资源)。当 DAPP 的应用到达一定的量级时,为满足运营需求,运营商不得不继续囤积 EOS Token 或购买资源,以满足应用所需的网络资源。
      无论是囤积 EOS Token用于投资或者出租算力,还是购买网络资源或者其它,这都赋予了 EOS Token 一些价值。
      原来的货币只能用于交易、交易所投机,使用范围很局限,而现在 EOS 赋予了 EOS Token 使用价值、囤积价值、持有价值。

    最后我们总结知道:持有 EOS 就持有 EOS 网络资源,而网络资源可以抵押置换和出租。这是 EOS 内在的价值。

    账户概念

    插播一条消息: 白皮书上明确,账户名将不超过12个字符,据主网启动时,可能只接受 12 个字符串的账户申请,信息摘自:《Introducing EOSIO Dawn 4.0》

    EOS 致力于建立所谓的操作系统,操作系统的管理员大家肯定不陌生,EOS 建立账户的概念,是为了拥有了宿主的概念,将地址、操作行为、资产形式确定到账户。账户是关联的基础,是业务扩展的重要前提之一。

    • 角色权限
      为了保障账户的多样性,应对不同的需求,角色的概念应运而生。创建子账户为子账户定义不同的权限,以应对不同的业务场景,是账户的重大扩展之一。
      在EOS中,假设主账户 @bepal, 我们可以为 @bepal.dev 角色组 定义 DAPP 开发部门将使用到的权限,例如 EOS 质押权。我们也可以为 @bepal.hr 角色组定义符合实际的角色创建权。@bepal.acct 角色组定义 EOS 的交易权限。
      一个账户将有哪些权限,哪些权限可由角色继承,从概念的角度而言,扩展性还是极强的。

    • 账户冻结(世事无常,难免有 BUG )
      区块链上最重要的始终是数据,所以 BUG 一般体现在不合理的数据成功广播出去,并按着非预期的方式执行。这个时候 121 个生成者可以站出来指正哪些数据是不合理的,错误的,从而将这些数据剔除,不将其写在区块里。
      这一行为的先决条件是:21个超级节点中有15个赞成了这一行为。
      如果这些超级节点滥用自己的权利,他可以会被投票出去,账户也将被解冻。

    • 被盗钥匙恢复
      在EOS中,可指定一部分账户拥有恢复账户秘钥的权限,在账户所有者的配合下,提供这一部分好友的私钥,即可重置所有者的密钥。 而这些账户的权限仅限于恢复账户,无权参与日常交易。

    什么是DPOS,为什么采用这种共识机制

    • POW 代表 - 比特币
      比特币是目前最具去中心化特性的一款数字货币,高冗余高可靠的信息网络,以至于根本不惧怕目前最无解的分布式拒绝服务(DDoS:Distributed Denial of Service).
      比特币是 POW 共识机制的缔造者,但他的高性能问题、扩容问题、迭代升级、灰尘交易问题、能源过度浪费问题都阻止了他的脚步。

    • POS 代表 - 量子链 以太坊
      量子链声称自己是 POS,但是从实际的开发运行来看,他所谓的 POS 与实际概念中的 POS 共识机制,相距甚远。
      而以太坊仍在进行POS的开发。

    • DPOS代表 - EOS

      DPOS 机制,中文名叫做股份授权证明机制(又称受托人机制),它的原理是让每一个持币的人进行投票,由此产生 21 位代表 , 我们可以将其理解为 21 个超级节点或者矿池,而这 21 个超级节点彼此的权利是完全相等的。从某种角度来看,DPOS 有点像是议会制度或人民代表大会制度。如果代表不能履行他们的职责(当轮到他们时,没能生成区块),他们会被除名,网络会从备选节点中选出新的超级节点来取代他们,直到他通知区块链自己要重新加入产块为止。

      1. DPOS 属于协作产块,不会把资源浪费在不必要的计算上,这有助于整体的网络优化与设施设备的扩展。

      2. 因为节点总是具名的有身份的且数量固定统一的,所以对于后期的迭代升级也便利了许多,官方的基础宪法中也阐述了关于节点主动迭代升级的解决方案。

      3. 当超级节点产生后,会有专门的人建造自己的社区、协会,维护自己的用户群体。建造更完善的社区再也不是某个固定组织的义务。让 EOS股东 选择,他们认为最优秀的服务商。

    个人认为选择 DPOS 一个重大原因是:EOS 本身对未来的规划(社区的发展,平台的建立,基础服务的供应,DAPP 的运营等),以及 DPOS 的特性,再加上原本在比特股中 DPOS 共识机制的取得的成功。DPOS从形式上讲有点中心化了,但是 EOS 要在安全、效率、维护成本、去中心化这无数个点中找到平衡,而不是把某个方面做到极致。

    EOS宪法

    摘自:《宪法修订案》

    宪法及其下属文件:《区块生产者协议》和《仲裁员协议》不得被修订,除非 token 的持有者发起了投票,这个投票的参与人所持有的 token 数量不少于符合条件的 token 的数量的10%,并且赞成票数要比否定票数多 10%,并且要在 120 天的时间段内持续 30 天, 根据当前的系统合约的条款(满足以上条件,才可以修订宪法、《区块生产者协议》和《仲裁员协议》)。

    摘自:《白皮书》(Upgrading the Protocol & Constitution)

    EOS.IO 软件定义了如下过程,借助于此,可以对由源代码和宪法所定义的协议,进行变更:

    1. 区块生产者提出变更宪法的动议,获得出块者中 15/21 的投票通过。
    2. 区块生产者对新 宪法的赞成态度,需要维持持续30天。
    3. 所有的用户都需要表示接受新的宪法,作为未来的交易能够处理的条件。
    4. 区块生产者采纳对源代码的变更以反应宪法的变化,并用新宪法的哈希值将变更提交到区块链上.
    5. 区块生产者对新代码的赞成态度,需要维持持续30天.
    6. 代码的修改7天之后生效, 源代码通过后,给非出块的全节点一周的时间进行更新。
    7. 所有未升级代码的全节点,会自动关闭。

    根据EOS.IO 软件的默认配置,更新区块链增加新特性的过程往往耗时2~3个月,而只需要进行非关键问题的修复却不需要修改宪法的更新,需要1到2个月时间。
    Emergency Changes 紧急情况下的变更
    如果需要进行软件变更,以便修复正在损害用户利益的有害漏洞或安全漏洞,区块生产者可以加速这一变更过程。通常而言加速新特性更新过程或修复无害的bug,都是违反宪法的行为。

    EOS 宪法 就是 EOS 的根本法是 EOS 的宗旨,他们的发展与规划总是不会脱离自己宗旨。

    宪法还在逐一追加完善当中,这里主要分享一下我们需要特别关注必须要了解的内容。

    节点选举机制与分红机制。

    • 节点选举制

      目前EOS的节点投票,采用的是持币人按持币数量投票的机制,1币30投。

      题外话:21 个超级节点,根据目前的投票机制,总结比特股的竞选经验,可能要达到 10% 左右的投票总量才可以成为超级节点。
      摘自:《HelloEOS》

      这样的投票机制,依然容易导致 卡尔特垄断联盟,即持仓大户通过相互投票可以保证自己一直做节点,从而形成垄断。
      目前最优的解决方案还在讨论中,现在最具备执行意义的方法是制定合适的宪法,例如: 《条款6 - v0.3.0版EOS.IO宪法草案 - 10%所有权上限 》


    从代码的角度来看投票的权重也与时间有关系。
    EOS选民 每 7 天要更新一次自己的选票,否则 EOS 选票的权重降低,即因逾期未重新投票,导致 X 分的选票投出了 X - |N| 分的作用, N 还会因为时间的推移而继续增长。
    在官方来看 EOS选民 定期重新投票,可以保证投票实际的力度。而每次投票的行为将以合约的方式进行,这必然需要私钥的签署,这样的行为就如同当事人的确认行为。
    • 分红机制


      这张图是Daniel Larimer,介绍了 EOSIO 4.0 的主要升级内容。

    通胀总量 5% ,1% 块奖励交由节点,在 Dawn 4.0 中提出将 1% 继续进行分割。将 0.75% 奖励给选民,以促进 EOS选民 的积极性。

    DApp

    DApp(Decentralized Applications)就是在去中心化的应用,因为区块链是去中心化的,所以在区块链上的 App 应用都属于 DApp

    超级节点与备选节点

    超级节点:21 个超级节点
    备选节点:100个备用节点 | 流言:49个备用节点

    节点必须遵守《区块生产者协议》 否则不配有成为节点的资格。

    从 1 投 30的角度而言, 备选节点还是有望成功的。

    我们分享一下,超级节点中几个关键的比例参数
    15/21 :意味着超级节点绝对的权利

    拜占庭行为

    超级节点被允许签署区块,在 DPOS 共识机制中也添加了传统的拜占庭容错行为,一旦 15 个超级节点签署了一个区块,该区块被认为是不可逆转的。
    任何拜占庭式的制作人都必须通过以相同的时间戳或高光标签签署两个方块来产生他们背叛的密码证据。在这种模式下,不可逆转的共识应该在1秒内到达。

    图表简介


    注意,上面所讨论的所有情况里,还有一个假设:所有传递的消息都是口头消息。意思就是,A告诉B下午1点进攻,B可能告诉C说“A命令我下午2点进攻”。如果采用了书写的消息,那么情况是不一样的。A派传令兵给B一张纸,A将军用自己独特的笔迹写的“下午1点进攻”,然后要求B把这张纸传给C,B在纸上用自己独特的笔迹签名表示同意,然后B传给C,C也签名表示同意,然后D也同意,最后签过所有名的纸再给每个人看一眼,就可以让所有节点一致了。这种采用书面签名消息的情况,对算法要求简单得多。但是,采用书面消息的前提是:每个将军都知道其他将军的笔迹是什么样的,并且无法模仿其他将军的笔迹。

    摘自:《区块链研习 | 看懂“拜占庭容错”,也就看懂了区块链的核心技术》

    相关文章

      网友评论

      本文标题:EOS生态

      本文链接:https://www.haomeiwen.com/subject/emanrftx.html