最实用入门 EOS 手册,先收藏再看(附106个工具类链接)

640?wx_fmt=gif

640?wx_fmt=jpeg


本文将 EOS 分为 EOS 诞生之路、账户与钱包、BFT-DPOS 共识机制、资源分配、社区治理、DApp 生态、经济模型、智能合约、侧链与代码分叉 9 大部分,各部分均附以网站索引,将帮助大家更加了解和学习EOS。



文 | 芦荟

编辑 | 卢晓明

出品 |  Odaily星球日报(ID:o-daily)


编者按:2008 年,比特币白皮书的发布标志着区块链冒险的正式开始;2018 年,EOS 诞生,被视作继比特币、以太坊之后的第三代公链,短时间内便吸引了区块链世界中众多关注的目光,虽然一路也伴随着争议,但EOS在技术以及理念上的创新仍然值得学习。根据 EOS 的生态以及规划,本文将 EOS 分为 EOS 诞生之路、账户与钱包、BFT-DPOS 共识机制、资源分配、社区治理、DApp 生态、经济模型、智能合约、侧链与代码分叉 9 大部分,各部分均附以网站索引,将帮助大家更加了解和学习 EOS。

在进入本文之前,为帮助读者更好的了解本文,建议提前阅读《区块链 100 问》、《区块链课堂 100 问》、以太坊入门手册以及 EOS20 问。

(Odaily星球日报注:本文带有下划线的部分以及网站均有相关链接,请点击阅读原文浏览

目录:

一、EOS 诞生之路

二、账户与钱包

三、BFT-DPOS 共识机制

四、资源分配

五、社区治理

六、智能合约

七、经济模型

八、DApp 生态

九、代码分叉与侧链


640?wx_fmt=png

一、EOS 诞生之路

EOS 是什么?可以说有两个含义,可以指 EOSIO 软件,即我们常说的 EOS 主网或 EOS 主链;也可以指用于 EOS 平台上的流通媒介,即 EOS 通证/Token/代币。

  • EOSIO

EOSIO 是一个叫 Block.one 的技术团队开发的一个平台软件,它构建一个区块链底层的技术架构,类似区块链中的操作系统,开发者能够基于 EOS 快速方便的构建分布式应用软件 DApp。

EOSIO 的技术白皮书 V2.0 这样形容该软件:“这个软件提供账户、身份验证、数据库、异步通信、以及分布在多个 CPU 内核或集群的程序调度。由此产生的技术是一个区块链架构,这个架构的性能可以扩展至每秒处理百万级交易,消除用户的手续费,并且允许快速和轻松的部署去中心化的应用。”通俗的说,EOS(Enterprise Operation System),是一个为商用分布式应用设计的区块链操作系统。

在公链 EOS 之前,主要的公链有比特币、以太坊,这两条公链面临着低吞吐量与手续费高昂的难题,对此,EOS 采用并行链和 BFT-DPOS 共识机制的方式致力于改善以上问题。EOS 主网于 2018 年 8 月正式上线。

  • EOS 通证

EOS 通证(也叫“柚子”)则是 EOS 上的价值载体,是获取网络资源、进行用户投票的重要工具,作为 EOS 生态中各个角色互通串联的角色存在,在 EOS 主网上线前,EOS 曾为基于以太坊的 ERC20 代币,2018 年主网上线后,这些 ERC20 代币通过映射成为真正的主网原生通证。映射相当于在以太坊与 EOS 之间搭建一座桥梁,在主网上线前,需要生成一个主链的 EOS 原生币地址,并通过一系列操作将其与以太坊钱包相关联,在 6 月 2 日前,需要将临时 EOS 代币转入以太坊钱包,之后的 23 小时内,EOS 将对钱包中的 EOS 代币进行快照,并在之后以空投的形式将 EOS 平台通证发到你的 EOS 地址上,48 小时后,以太坊上的临时 EOS 代币将被冻结无法使用。

EOS 通证有两种不同的发行方式:众筹和增发。在主网未上线前指代基于以太坊 ERC20 发布的临时 EOS 代币,通过众筹方式发行 10 亿枚,众筹在 2017 年 6 月 23 日开始,并于 2018 年 6 月 1 日结束,这场 ICO 维持了 341 天,融资额达到 40 亿美元,成为当时史上最大金额的 ICO。在 EOS 主网上线后,将每年增发 5% 的 EOS,其中 1% 将奖励区块生产者和备选节点。

  • BB 与 BM

EOS 是如何诞生的?离不开一个叫 Block.one 的公司,该公司有两个核心人物,一个是首席执行官 Brendan Blumer(简称 BB),一个是首席技术官 Daniel Larimer(网名为bytemaster,人们习惯叫他 BM),曾创立 Bitshares 比特股(去中心化交易所)、Steemit(去中心化社交媒体),被视作天才程序员,EOS 是他的第三次区块链创业。

有一个有趣的故事值得分享,2010 年 7 月,BM 在 Bitcointalk 发帖说,比特币 10 分钟一次的交易确认时间显得太长了,而改变共识机制可以实现这一点。中本聪说:If you don't believe me or don't get it, I don't have time to try to convince you, sorry。

  • 网站索引

1、重要网站

Block.one 官网、EOSIO 官网:读者可对 EOS 以及 EOS 背后团队有个大概的了解,同时也可轻松链接到一些重要网站:比如说 EOS 风投网站 EOSVC、开发人员门户 EOSIO Developer Portal(EOS 官方提供的一个开源的开发者工具平台,包括高级文档、SDK 参考资料、基础和高级引导资料以及教程)、EOSIO 博客(可追踪 EOSIO 最新动态、版本更新)、2018年路线图(英文版)(中译版本)。

如果对 EOS 有更多问题或者想得到更多开发资源,可以访问 StackExchange 问答网站、EOS中文社区,这是关于 EOS 各种问题的汇总论坛。

2、必须要看的白皮书

2017/5 - EOSIO 技术白皮书V1.0(中英版本),中文译者为 Harvey 老狼 @OracleChain、谭智勇 @OracleChain、 宋承根 @OracleChain、梓岑 @HelloEOS;2018/3 - EOSIO 技术白皮书V2.0(英);EOSIO 技术白皮书V2.0(中译):荆凯 @EOS42 在第一版 EOS 技术白皮书译本基础上修订增改而成。

3、主要领袖言论

BM: 推特、medium 账号、github博客(2017年前的博客文章)。

BB:推特、medium 账号(通过 EOSIO 的官方博客发声)。

4、推荐阅读

《EOS 生态研究报告》

《EOS 前传:生逢其时的“骗局”与区块链的蒸汽朋克》


640?wx_fmt=png

二、账户与钱包

  • EOS 账户

EOS 账户可视为 EOS 持币者在线访问 EOS 系统的一张凭证。拥有了一个 EOS 账户,即可以在 EOS 公链上进行转账、投票、使用网络资源以及使用 DApp。

就像一个支付宝账户,在比特币和以太坊中,账户由一个私钥和公钥地址对组成。公钥可以理解为账户地址,可以理解成支付宝号码,私钥可以理解成账户的密码、钥匙,也就像支付宝密码;公钥和私钥是系统生成的一长串的字符串。

而在 EOS 中,公钥账户地址为 12 个自定义字符,从而方便用户记忆,用户之间的转账是通过账号来进行操作的。

私钥也有不同,权限更加细分,天然对应两个秘钥:1、Owner key;2、Active key。Owner key 可以理解成账号的所有控制权限,有了 Owner key,你可以对这个账号的任何东西做任何的事儿,这是它的最高权限,比如修改 Active key,新建或删除一个权限等;Active key 可以理解成账号资金的管理权限,如果有了 Active key,用户仅仅可以对这个账号的资金进行转移,没法做其他事。

另外值得注意的是,创建一个 EOS 账号需要付出额外的成本。为什么呢?账号的创建需要保存在 EOS 主网中,需要占用区块链生产节点(BP)的内存资源,一般为 4K 大小。而内存资源是有限的宝贵资源,因此账号创建是有成本的,内存价格和 EOS 价格随市场变动,因此 EOS 主网账户注册价格也是变动的。(内存资源详见资源一章)

EOS 账号不像以太坊账号,无法自己生成,需要由一个已存的 EOS 账号才能注册 EOS 账号。

  • 钱包

钱包是用来管理数字资产的工具。但实际上,数字资产存储在 EOS 公链上,钱包的主要功能就是生产或存储私钥,从而在交易的时候可以进行签名(类似于输入支付密码)。它一般是一个运行在你本地机器的程序,PC 端和移动端均可。

EOS 官方钱包的名称是 keosd,它负责管理你的私钥,并且帮你进行交易的签名。但 keosd 钱包对普通用户并不友好,它是一个命令行程序,目前还没有像以太坊的 mist 那样的图形化界面,而且还只能运行在 linux 或 mac 操作系统下,适用于开发人员,目前已有节点与钱包商提供用户友好的钱包。

  • 网站索引

1、EOS 账号注册平台

目前来看,EOS 账号注册有四种渠道:

浏览器插件注册:以 Scatter 插件为代表,是一个基于浏览器插件式的 EOS 钱包,需要基于chrome浏览器运行。为了 EOS 资产及私钥的安全性,用开源的、安全的 Scatter 是当下最好的选择,但操作较为繁琐,且需已有 EOS 账户的朋友帮助。网络教程在此。

轻钱包注册:EOS 钱包服务商们通常会推出 EOS 账号一站式注册服务,用户可以支付宝即法币购买激活码,便可一键创建,步骤更为简单快捷,适合 EOS 小白用户。举例来说:TokenPocket(注册成本 4.9 RMB)、Morewallet(注册成本 9.9 RMB)、虎符钱包( EOS 账号疑似抛锚无法操作,这里提供 EOS 币与资源的紧急救援)、EOSVibes(为用户提供了数个安全使用的密钥对生成器)EOSnameswaps(一个提供 “靓号” 交易的中介平台)。odaily教程在此。

交易所注册:拥有其他币种的读者可以采用交易所一键式创建的方式,以 TOP.ONE 交易所为例, EOS 钱包自助创建支持 ETH、BTC、USDT、EOS 四种代币支付。

命令行注册:也就是 EOS 官方钱包 keosd 注册账户,属于高端玩法,此类注册方法多见于EOS主网刚刚上线、周边工具尚未完善之际,早期用户抢注“靓号”。根据 Keosd 概述,keosd位于 eos/build/programs/keosdEOSIO / eos 存储库中的文件夹中,命令行注册需要在docker环境下创建本地钱包,再注册账户名。教程可见《 5 分钟学会注册 EOS 主网账户、投票和发币》、《手把手教你搞定 EOS 靓号抢注》。

2、钱包:作为 EOS 生态的入口, EOS 钱包数量众多,主要分为冷钱包(硬件钱包)、移动端钱包、Web 钱包、浏览器插件钱包,另外,在 GitHub 还可以找到很多开源钱包。

(1)冷钱包:Ledger Nano S、Trezor(Trezor Model T 即将支持 EOS)、Bepal Pro S、Cybex、库神钱包、Memory Box 冷钱包(Starteos 团队出品)

(2)移动钱包:功能大同小异,一般具备多签、创建账户、转账、投票页面、资源买卖、DApp 门户等功能,包括支持多链的钱包商和节点出品的 EOS 专用钱包。

EOS LIVE( SuperONE 团队开发)、MEET.ONE(MeetOne 开发)、TokenPocket、HaloWallet(EOS 引力区出品)、imToken(知名以太坊钱包,目前已支持 EOS 生态)、麦子钱包、比特派(老牌比特币钱包,目前已支持 EOS 生态)、币信 EOS 钱包(Bixin 出品)、PocketEOS(OracleChain 出品)、ONE(OneChain 出品)、币通(BitPortal 出品)、虎符钱包(多链钱包,带理财功能)、Cobo Wallet(多链钱包,支持 EOS)、斑马钱包(多链钱包,支持 EOS)Starteos(Starteos 团队出品)、MoreTop(IMEOS 出品)、番茄钱包(团队创始人为搜狗输入法之父马占凯)。

(3)web钱包:bloks(EOS CAFE 出品)、EOSX(EOS Asia 团队出品)、starteos,(Starteos 出品)、EOSlynx

(4)浏览器插件钱包:Scatter 插件

(5)开源钱包:EOSPortal、EOSWallet、eos4j,更多开源钱包详见《 EOS 钱包》

总之选择钱包的重要因素为安全(冷钱包>热钱包)、交互体验(热钱包>冷钱包)、团队,视个人而定,在选择EOS钱包前,读者可参考公链数字钱包排行榜,选择公信力高的钱包。

EOS 钱包开发可推荐阅读 Chaindesk 的专栏《 EOS 钱包实战开发》


640?wx_fmt=png

三、BFT-DPoS 共识机制

  • 共识机制概述

区块链本质是一个账本,数据以链式结构存储,共识机制决定如何出块,是区块链网络用来达成交易、确认共识的协议,也是降低区块链中各个分散节点信任成本的协议,目前在区块链世界中,包含 POW、POS、DPOS、PBFT、DAG 机制。共识机制详细阅读推荐《八大区块链共识机制综述》。

EOS 在第一版白皮书中采用的是 DPoS 共识机制,该共识机制在比特股、Steemit 被 BM 实践成功过,在最新一版的白皮书中,其做了一些改进,现为 BFT-DPoS 共识机制。改进内容推荐阅读《 EOS 技术白皮书 V2 修改了哪些之- 共识机制 ( BFT-DPOS ) 篇》

DPoS(Delegated Proof of Stake),即授权权益证明共识机制。DPoS 机制通过赋予 EOS 通证持有人投票权,选出 21 个 “超级节点” (也就是区块生产者 block producer,简称BP)来担任记账人的角色,保证整个网络的正常运行。21 个超级节点轮流负责记账,每一个区块产生后,会按照顺序传递到下一个超级节点中,第二个超级节点要负责打包新的区块,同时确认上一区块的内容,当某一区块被超过 2/3 的超级节点确认后,该区块将被确认为不可逆区块。

BFT(Byzantine Fault Tolerance),意思是拜占庭容错算法,DPoS 共识加上 BFT 算法后,验证时不再按照出块顺序由超级节点一个个验证区块内容,而是让出块节点成为主节点,出块后同时向剩下 20 个节点进行广播,并获得节点的验证反馈,如果有超过 2/3 的节点验证通过,则该区块成为不可逆区块。BFT 可以使得 EOS 的区块确认速度显著增加。

BFT-DPOS 机制由于减少了记账节点的规模,从而也提高了效率,加上并行链,在最理想的状态下,EOS 声称可以达到百万级 TPS。但在区块链去中心化的原教旨主义下, DPOS 机制由于节点太少而遭受集中化的质疑,这种质疑仍旧存在。

  • 超级节点

在 EOS 中,目前存在 300 + 候选节点,这些候选节点的参与方通常包括矿池、加密货币交易所、区块链咨询公司和 EOS 发烧友团队。票选出来的超级节点们,将按照区块产生顺序(首字母排序)打包交易,获得区块生产奖励;除此之外,EOS 白皮书中提到,EOS 的每年会增发代币的 5% 给维持节点的人,EOS 总量为 10 亿,5% 也有 5 千万代币,结合 EOS 代币价格,对于 BP 来说,这都是一笔不小的收益。

在 Thomas Cox 的 EOS 宪法草案(此处链接到社区治理)的摘要中,第四条规定:“任何成员不得以任何形式提供或接受任何有价物品,包括超级节点候选人,修正案或 worker 提案,也不得过分地影响另一个人的投票。“在 EOS 中买票、贿票无论如何都是不允许的。

除了 21 个超级节点之外,EOS 生态中还有 49 个备选节点。这些备选节点的存在,是顶替一些面临问题或者受到干扰的超级节点,以维持好系统的稳定性。

另外,设置备选节点的另一个用处即为权力的制衡。首先,若某个超级节点作恶,其他超级节点可以通过投票取消作恶节点的地位,并且备选节点会一直监督超级节点的行为,若出现非法行为,备选节点将通过民主的方式吸引选票,替换作恶节点,以此实现监督的作用。

EOS 的备选节点随时准备着替补已有的超级节点,他们需要保证和超级节点一样的硬件设施,使得节点替换时不对 EOS 网络造成影响。

为保证备选节点的积极性,EOS 规定,每年分配给节点的 1% 的通证奖励,只有 0.25% 是分给超级节点的,剩下 0.75% 将按照收到投票数按比例分给所有的超级节点和备选节点。

关于超级节点的更多解读,推荐阅读《如何成为 EOS 超级节点?》、《什么是 EOS 的超级节点?它为什么需要竞争?》《熊市下的 EOS 节点:我们根本赚不回服务器钱》、《超级节点的困境,社区治理的尴尬》、《房间里的 EOS 大象》。

  • 投票

由于 EOS 为 DPOS 共识机制,每个 EOS 持币者都拥有投票权,作为持币者,投票是一项十分重要权利,需要每一位投票员珍视并妥善的行使这项权利。目前,EOS 超级节点竞选和 2019 年 1 月开放的公投系统(具体详见治理一章)均需要投票。

加拿大节点 EOS Cafe Calgary 的创始人 Syed 在一封电子邮件中写道 “如果你在网络上持有金融股份并希望保护它,那么决定系统未来的最好方式就是参与投票过程。” 投票是没有直接收益的,但是在超级节点竞选中,当持币者选出足够优秀靠谱的超级节点,以保证 EOS 网络的稳定运行;而在公投中,对于提案的投票将在 EOS 生态特定问题上发出社区的声音,甚至更改主网设定和 EOS 宪法,有利于 EOS 生态的繁荣长治,只有当以上两者得到实现,那么随着 EOS 的发展,持币者手中的 EOS 也会随之升值,这也算是投票的间接收益。

那么如何投票呢?开发 EOS.IO 的 block.one 软件公司已经表示,他们只会释放一个 EOSIO1.0 版本的命令型工具,这就需要用户在 github 代码库中抓取一段出来,到自己的本地电脑上运行,一些节点已经设置了用户友好界面,在一些节点官网网站、区块浏览器、钱包、交易所均可实现一站式投票服务。

另一种方式则是通过代理式投票,将投票权利交给代理人,让投票代理人代替我们进行投票。投票代理对那些想要投票,但无法了解全部节点候选人的用户来说是非常有用的。

投票的规则为由 EOS 持币用户以每个代币最多 30 票的方式选举出前 21 个超级节点;投票的方式为质押 EOS,获得等量投票权,质押期间,EOS 将为锁定状态,不能转账也不能交易,从用户取消抵押开始,锁定期为 72 小时。

投票可以随时进行,并且随时更改。投票结果每 126 秒会记录一次,这也是完成一轮出块所需要的时间。每一轮出块中,每个超级节点都会生成 12 个区块,每个区块的生成时间是 0.5 秒。这意味着超级节点选举每 2 分 6 秒就会进行一次。每个 EOS token 最多可以投给 30 个不同的节点候选人。你所投的每个节点候选人都会一致获得你所拥有的选票。

但一票 30 投的规则截止目前已经受到质疑,会迅速使头部超级节点联合投票,控制整条链,进而增加了产生双花的可能性。目前已有公投提案提出一票一投。

为了确保用户经常更新他们的投票设定,Block.one 引入了一个时长为一年的投票权重半衰期。这个半衰期将从投票一周后开始。如果一个用户在一周后不重新投票,选票权重就会衰减。一年后,选票权重会降到原来的 50%。如果用户重新投票,选票权重就会完全恢复。

  • 网站索引

1、区块浏览器(查询搜索工具,可以查询到 EOS 的相关信息,包括 TPS、交易数量、账户数量、资源价格、EOS / 资源供应量、最新区块、EOS / 资源富豪榜、投票率、超级节点竞选实况等等,也可查询账户信息、以及投票超级节点或者公投,通常由节点们组建,数量众多)

推荐几个常用且清晰度易懂的浏览器 :eosflare.io(EOSFlare出品)、eospark.com(EOSPark出品)、bloks.io(EOS Cafe以及EOS HK出品)、 eosx.io(EOSAsia 出品)。

另外也收纳了几个包括一些特殊参数的浏览器:eosnetworkmonitor.io(区块信息面板较为常用)、eostracker.io(主网信息面板与 EOS 价格面板较好用)、eosq.app(EOSCanada出品,交易区块信息详细清晰)eostree.io(一个可视化的浏览器,数据很有趣)、eosblocksmith.io(一个英文网站,但包括了一些 EOS 新闻、EOS 行程、教育视频、工具网站整理)、cypherblock.io(包含了 EOS 区块链上数百个去中心化代币的市值排名与交易行情)、eosindex.io(EOS Canada 出品,包括了一些区块链职位招聘信息)

2、节点情况

由 EOS Asia 出品的 eosgo.io 网站以及 IMEOS 出品的 imeos.one 收纳了数百个候选节点的信息。

如果想在全球地图上预览所有的 EOS 节点,可以点开 cypherglass.com,可以看到前 10、前 50、前 100以及全部节点的全球驻点;

EOS 节点投票结果一直在变,blockproducers.info 提供了节点排名变动一览。

3、超级节点投票网站

超级节点投票结果展示网站除以上区块浏览器之外,还有一些包括了自助投票渠道的网站:alohaeos.com、eosphere.io,火币矿池,以及以上提及到的部分轻钱包也是自带投票门户的。

在 eostoolkit.io 上可找代理投票渠道,教程可见 medium 文章《 EOS Proxy Voting: Everything You Need To Know》。

除此之外,另有一些投票分析网站,对于投票的结果有进一步的数据整理和结果分析。

eosauthority.com:EOSAuthority出品,呈现投票率、投票图表、投票分析、代理投票分析、选民地域分析等图表,也可查询投票权重的衰减程度。

eosbeijing.one:EOS Beijing 出品,统计了变化超过 20W EOS 的账号、节点背后投票账号的大户排名、投票账户数量、节点投票占比等数据。

dapptools.info :EOSTitan 出品,以可视化图片为特点。

alohaeos.com:依据 EOS 代理投票总额、账户数量、代理人数提供了代理投票排行榜。


640?wx_fmt=png

四、资源分配

在 EOS 资源分配的核心思想中,token 代表系统资源的使用权。EOS 用户或者 DAPP 开发者需要购买 token,并将其抵押到 EOS 的系统账户,用以获取网络带宽资源和 CPU 计算资源的使用权。在 EOS 系统中,存在三种资源分别为: 网络带宽资源(NET)、 CPU 计算资源(CPU)、 运行内存资源(RAM)。

1、网络宽带资源(NET)

当用户发送一笔交易信息后,区块生产者需要将这笔交易打包生成区块,然后将区块通过网络同步给其它生产者,这个过程需要消耗一定网络带宽资源。

2、CPU 计算资源(CPU)

当用户发起调用智能合约这个动作时,区块生产者需要根据智能合约地址查找合约代码,然后将代码加载到内存中执行,这个过程需要消耗一定的 CPU 算力。CPU 通过抵押 EOS 免费获取的,抵押的 EOS 越多,获得的 CPU 比例也就越多。但比例越多并不代表算力越多,因为 CPU 算力多少取决于抵押 EOS /质押池 EOS 总数的比例,也就是说,随着抵押池 EOS 数量的不断增加,老用户原先拥有 CPU 的比例也会随之缩水。

但该机制的消极效应在于,负反馈很容易失效,CPU 价高,全网的抵押量也跟着涨,然后 EOS 变的更贵,形成了一个恶性循环。加上部分 DApp 占用过多的主网 CPU,导致用户资源紧张,甚至无法转账。对此,2018 年 10 月,EOS 将主网的全局参 TARGET_BLOCK_CPU_USAGE_PCT 从 10% 提升到 20%。在 Kylin 测试网络上的结果来看,保守估计,这一改动将至少提升 2 倍的可用 CPU 资源。另外,为降低资源使用成本,BM 发布了 有关 EOS 资源租赁及租金分配的提案,为去掉 EOS 随意抵押和不理性抵押行为,只保留那些真正需要使用 CPU 的 EOS 抵押行为。

3、运行内存资源(RAM)

EOS 系统中的帐号信息、智能合约执行信息的当前的状态都是存储在内存中的,这些信息的储存就需要长期占用内存资源;RAM 的总量由超级节点共同投票决定,一旦确定之后,短时间内不会发生大幅的扩容;一般是 DApp 开发、EOS 持币者创建账户需要 RAM;合约规定 RAM 买卖 EOS 主网系统会收取 0.5% 的手续费,RAM 不可转让与租赁,只能够和系统交易。

为了实现 RAM 的市场配置,RAM 的价格采用了 Bancor 算法(这里推荐阅读《深入浅出讲解 BANCOR 算法》、《 Bancor 协议研究报告》),由市场的供求关系决定 RAM 的价格,买入的人越多,价格越高,以保证 RAM 资源的流动性。但由于 RAM 资源的稀缺,RAM 在 2018 年中旬一度暴涨,引发投机行为。

对于 RAM 价格炒作的愈发火爆,7 月 11 日,BM 情绪化退出了 EOS RAM 电报群,并在随后提出了 3 项提议,1、增加 RAM 的供应(扩容),建议节点以每年 64GB 的速度增长 RAM,如果价格仍然过高可以根据社区需要进行调整 2、降低每个账户内存的使用率 3、Block.one将开发 iOS 钱包,将为用户免费创建账户。随着 7 月 26 日 RAM 扩容提案投票的通过,RAM 已经在当前 64GB 的基础上,每出一个区块增加了 1KB RAM,由此 RAM 价格回归平稳。

简单来说:CPU 和 NET 通过抵押 EOS 获得,属于可恢复资源,用于交易的计算和带宽;RAM 需要向系统购买,属于固定资源,用于存放账户相关的数据,包括账户名、授权信息、合约代码、合约 abi 和智能合约的数据。

4、REX

为了“降低在基于 EOSIO 的区块链上使用 NET 和 CPU 资源成本”,2018年3月,BM 发布了 有关 EOS 资源租赁及租金分配的提案,IMEOS 给出了中译本,即 REX 交易所(EOS Resource Exchange。),主要解决资源不对称的问题(部分投资者有大量的 EOS 闲置,另一方面,很多开发者又面临资源匮乏的问题。)

在该交易所当中,REX token 为资源代币。出租者可将其 EOS 质押给 REX,以换取 REX token(T-Rex),比例为 1:1,作为凭证待租期过后可可拿回本金并获得租金,同时也可按比例获得 REX 分红的权利;而承租人需要支付一定量的 EOS 作为租金(采用 Bancor 算法计算租赁资源的多少),获得 30 天里 EOS 的资源使用权,到期可续租。

购买 REX 代币的前提是必须给 21 个 BP(超级节点,可以理解为比特币里的矿工)投票才能获得购买权。

目前,REX 提案仍然在测试与更新中,尚未面世,EOSIO github 上可以追踪更新代码、修复漏洞;EOSAuthority 官网上也将公布测试进度以及下一轮的计划。

  • 网站索引

EOS 资源规划师:EOS NewYork 出品,包括 CPU 与 RAM 行情、CPU 租赁、RAM 计算器,一个比较全的网站。

1、CPU 租赁平台

CPUemergency:每 48 小时可有机会获得一次维持 8 小时的免费 CPU;另外,某些与其合作的 DApp 玩家也可在游戏中免费租赁。

Chintai:提供 7 天、14 天、21 天、28 天不等租期的 CPU 租赁交易。

YOURtoken:EOS 转账救急,提供一次维持 24 小时价值 10 EOS 的 CPU,其他价格从 1-99 不等。

Bank of Staked:EOS LaoMao 出品,提供 1 个免费的救急计划和 6 个付费计划。

EOSBank:一个开源的租赁平台。

ZKS:一个类似于 REX 模式的资源交易所,购买其代币便可租赁。

2、RAM 工具网站

Tokenpocket:实时价格行情表、大单记录、大户排名、交易记录。

Chaince:一个去中心交易平台,可交易 RAM。

RAMDEX:RAM 交易网站。

MarketstackD:RAM 富豪榜,附加 RAM 价格计算器。


640?wx_fmt=png

五、社区治理

治理是共识算法之外,需要人们在主观问题上达成共识的过程,具体表现为社区民众通过投票等方式表达意愿,执行决策;同时通过公约修正提案,来变更治理规则。

在 EOS 的社区治理中,治理的权力掌握在 Token 持有者手上,Token 持有者可以将自己的权利代理给区块生成者(超级节点投票),这样区块的生成者就有了相应的权限(冻结账户、更新有缺陷的应用程序、提出对底层协议硬分叉的改变等)。当权限代理出去后,权限是受限的、被监督、被检查的。

在 EOS 治理体系中,存在立法、执法和司法三大支柱。

  • 立法

EOS 宪法 / 公约是 EOS 社区治理依据的原则,这里以公约的表达形式更为恰当。在 BM 看来,“宪法是一种和平条约,作为一个社群,我们就在制定最基本的规则,既然是基础性的规则,就必须阐明清楚。最好采用非暴力的方式进行自我治理,如果我们不能用非暴力的方式自我治理,那么将会有人以暴力的方式治理我们。”

目前公约由 BM 以及超级节点们起草,当前,按照时间线已有三版公约:Thomas Cox 带头起草的 V1 版本/中译本;BM 不久前拟定的 V2 版本(主张代码的意图即法律)/中译本;以及由 EOS 阿姆斯特丹起草的 V3 版本/中译本。V1 与 V2 公约之间条款的对比可参考何德林的《两个已有 EOS 公约版本的对比分析》。

由于初始公约并未得到足够的共识,2019 年出现了新的立法系统。1 月 11 日,由 EOS Canada 在 3 天前发起的公投相关智能合约 eosio.forum,得到了 16 个 BP (超级节点)的表决通过。这意味着,自此以后,EOS 持币者能够自由创建对 EOS 事项表达意见的提案,也能用抵押的代币来对提案发表 Yes or No 的建议,参与投票的 EOS 需要达到 EOS 总量的 15%,投票结果才能生效。

在发起的诸多提案中,REX、ECAF、EOS 通货膨胀用途、公投投票建议以及 BP 是当前提案聚焦的五大话题。

  • 司法与执法

在司法上,EOS 也建立了一套基于 EOS 公约的程序和职权基础。其中仲裁作为司法中的一个主要的部分,是一种无需诉诸法庭就能解决争端的方式。争议双方将自己的立场提交给专业仲裁员,由专业仲裁员全面审查争议并作出合理的解决。

ECAF 是一个为 EOS 提供服务的独立自治仲裁机构,包括以下三个组成部分:

1. 管理员:分配仲裁员给案件;仲裁员的招聘、审查、培训、替换;联络 BP 实施裁决;2. 仲裁员:仲裁纠纷;3. 仲裁基础:EOS 宪法;EOS 争议解决规则(RDR);EOS 仲裁手册。

在主网上线至今,EOS 网络中设计争议和仲裁常见的问题是:当 EOS 账号的所有者因为遭遇诈骗 / 黑客攻击等行为,导致密钥被盗,而进行的追索资产的争端。

当 ECAF 仲裁结果出来后,EOS 超级节点就是工作人员和执法者。

目前来看,ECAF 与 EOS 超级节点的仲裁权和执法权执行的并不理想,新的公投系统也正在考虑是否推翻 ECAF。推荐阅读《集权还是分权,21 个超级节点会执行 EOS 紧急措施保护令吗?》《EOS 公投进行时,这里有 5 大关注点》。

  • 网站索引

公投网站

EOSAuthority:提案有中文版本。

eosx.io:EOS Asia 出品,清晰详细,提供投票与提提案渠道。

bloks.io:EOS CAFE 出品,提供投票与提提案渠道。

eosdac.io:EOSDAC 出品,以提案人为主体呈现提案,提供投票与提提案渠道。

eosalliance.io:EOSAlliance 出品,提供了公投投票步骤,投票网站超链接。

EOSforum:按时间线排序提案。



640?wx_fmt=png

六、智能合约

  • EOS 智能合约

智能合约(Smart Contract)是什么?简单来说,智能合约是写在区块链上的代码/程序,在特定条件下会被触发自动执行,对于普通人来说可以理解为公开透明、即便是编写人也不可篡改的程序。它允许我们在不需要第三方的情况下,执行可追溯、不可逆转和安全的交易。

EOSIO 开发者文档这样形容 EOS 智能合约:“真实世界的合约,简单来说,是一组协议,给予其输入一定的行为,它会产生相应的结果。从正规的法律合同(如金融交易)到简单的游戏「规则」都属于合约的范畴。典型的行为可以是转账(金融合约)或玩家的移动(游戏合约)。EOSIO 智能合约软件注册在区块链上,并在 EOSIO 节点上执行,它实现了「合约」的语义,并将合约的请求行为存储在区块链上,即请求账本。”

EOS 定义的智能合约包含两个要素:代表合约的程序和执行合约时的行为。它不仅支持转账合约, CPU、Bandwidth 抵押、RAM 人机交易市场、投票等都在其范畴之内。

EOS 的智能合约基于 WebAssembly(WASM) 技术,因为使用了 WebAssembly,目前的 EOS 智能合约只支持 C/C++ 语言,简单的智能合约由 3 种文件组成:.hpp 文件、.cpp 文件、.abi 文件,关于 WebAssembly(WASM),推荐阅读《EOS智能合约为何选择Web Assembly(wasm)》。

目前,随着智能合约安全事件频出,智能合约安全性问题迫在眉睫。成都链安科技 CEO 杨霞表示,在审计客户合约时发现:EOS 代币合约存在整型溢出等问题,部分合约实现不够严谨。具体包括:整型溢出错误;权限检查不严谨;API 函数的不规范使用;常规代码错误。(详情可见《链安科技漏洞分析连载》、《EOS 智能合约的一些问题总结和建议》)

目前智能合约安全审计平台有 Certik慢雾成都链安知道创宇HackenZepplin 。

  • 李嘉图合约

根据 EOS 宪法 第 7 条,EOS 区块链上的所有智能合约也必须有李嘉图合约。

李嘉图合约由 Ian Grigg 在 2000 年提出,最早用于 Ricardo 支付系统中,最初的应用是债券交易系统。它是一种清晰定义、不可篡改的可读文本,主要用作交易中明确双方的意图。

举个特别简单的例子,智能合约写的是“ A 给 B 一个 EOS,B 返还给 A 一个 EOS”,这个合约只保证让 A、B 双方完成给与还的动作,但是返还的 EOS 真假难辨,质量难辨,即使是假的,合约也可以执行。当李嘉图合约加上智能合约时,如果 B 返还的不是 EOS,即不是代码意图,合约就无法执行。这个例子当然十分简单,但真实情况会复杂地多(已更正请见评论区)

简单来说,智能合约本质是一套代码,是基于区块链的,并且会在区块链检测到特定条件 / 事件下触发,用于保证让参与方执行承诺;而李嘉图合约可以列出代码全部的意图,对代码的输出流程做了约束。在区块链世界里,有时存在一些概念的理解和厘清,仅仅靠智能合约无法完成。这时候,李嘉图合约会给每一笔转账定义一些更为清晰的条款,用于确保转账的意图,能给智能合约的执行带来更多的准确性,实现人类意图与机器执行更好的融合。

在 EOS 的 github 代码库中,提供了关于李嘉图合约的实例,位于智能合约 hello 之中。

关于李嘉图合约的更深层次了解,推荐《李嘉图合约 ( The Ricardian Contract ) 中英译文对照版》《李嘉图合约究竟讲了什么》。

  • 主网与测试网

EOS 有两种网络——主网以及测试网。测试网络(Test net)与主网(Main net)是相对而言的,主网是指正式上线的、可以独立运行的区块链网络,在主网流通的数字货币具有真实的经济价值。测试网络是未来公链的测试版,与主网功能相似,是为了在不破坏主网的情况下尝试新想法而建立的,只作为测试用途。

EOS 主网版本一直在更新,已经从 dawn-v1.0.0 迭代至 EOSIO 1.6.1。如果想知道 EOS 的版本更新历史,可进入 github 的 Release、Tag页面,可查阅从 2017 年起更新的数十个版本文件以及更新内容。

测试网推荐丛林测试网 Jungle Testnet 与麒麟测试网 CryptoKylin,推荐阅读测试网络使用指南 EOS Debug。

  • 网站索引

EOSIO 的源代码库: 可追踪最新的代码修改。

EOSIO 中文文档:开发者指南以及智能合约工具,EOS 开发者必读。

EOSIO Developer Portal:EOS 官方提供的一个开源的开发者工具平台,包括高级文档、SDK 参考资料、基础和高级引导资料以及教程

开发者资源大全整理原文@Steve Floyd 译@EOS42 荆凯):包括开发者社群、开发者文档/工具、开发工具、浏览器、测试网络、基础运维工具/插件、不同语言的 RPC 封装,网站齐全。

EOS 区块链开发指南:包括开发文档、测试网、环境配置、Scatter 接口开发。

慢雾安全开发指南:旨在为 EOS 智能合约开发人员提供一些智能合约的安全准则及已知漏洞分析。

在线 EOS 智能合约编辑器:https://dev4eos.com/#/:EOS Mediterranean 出品,支持 EOS Mainnet、丛林测试网和麒麟测试网,鼓励用户在 Github 上提交 issue。

开发者 telegram 官方群。


640?wx_fmt=png

七、经济模型

与目前大多数公链为通缩的经济模型,发行总量恒定不同的是,EOS 代币采用了通货膨胀的发行模式,每年增发总量的 5%。

EOS 代币采用通胀的模型主要有以下两个原因:  

①在 EOS 系统中,区块生产者的激励并不通过收取手续费,而是每年增发 EOS 代币用于激励超级节点。通过增发 EOS 代币,用于激励来实现免除用户手续费的目标。  

②由于 EOS 系统的资源是按照 EOS 代币的持有量进行分配,那么现有的 EOS 代币,必定无法支持更多的商业级应用的运作。所以 EOS 代币需要不断增发,以应对长久的发展需求。


640?wx_fmt=png

八、DApp 生态

自 EOS 主网上线以来,EOS 已逐渐成为以太坊的有力竞争对手,吸引了一批 DApp 入驻。截止目前,EOS 上已经入驻了 300+dapp,目前,DApp 类型主要包括竞猜类(Gambling)、游戏类(Games)、去中心化交易所(Exchanges)、收藏品类(Collectibles)、高风险类(High Risk)、市场行情类(Marketplaces)和其他。(Others)。

据 dapp.com 2018 年报告,在 2018 年的两个季度内,EOS 已成为交易金额和交易量方面都最大的公链。其中,97% 的交易来自博彩,75% 的交易量来自投注游戏。 其中,EOS 节点 对于扩展 EOS DApp 生态系统,正在发挥关键作用。他们开发了各种工具来方便帐户的设置、以及借出资源。并且 主要节点 对很多 EOS DApps 都有投资或者作为顾问提供建议。

但随着 dapp 的繁荣,EOS 也渐渐成为黑客的天堂。据区块链数据与安全服务商 PeckShield 的统计,去年 7 月至 12 月间,EOS 链上的 DApp 共发生 49 起安全事件,波及 37 个 DApp,导致项目方共损失近 75 万枚 EOS,按照攻击发生时的币价折算,总损失约合 319 万美元。

推荐阅读《2018 年 11 月以太坊、EOS 平台及 DApp 数据分析报告》、《继 Fomo3D 之后的 EOS Pixel Master,为何 9 天之内吸金 80 万美元 ?》、《研究了 EOS 体系 224 个 Dapp 后,最大赢家还是超级节点》。

  • 网站索引

dapp 门户网站:dapps 收集及更新;数据分析(包括日活、交易笔数、交易总额等数据)

imeos.one:IMEOS出品,一个囊括 EOS 生态工具、dapp 项目信息平台、EOS 空投信息平台、钱包、交易所等各类网站的大百科。

spiderdata.com:Spiderstore 出品,除了 24h 与 7 日日活、交易量排行榜之外,还有 EOS 新增用户、新增合约的可视化图像。

dapptotal.com:Dapptotal 出品,排行榜移除机器人的干扰,且很贴心的标注了涨跌幅度。

eosindex.io:聚焦对更新 dapp 的信息收集。

dapp.review:囊括 dapp 数量多。

dappradar.com:清晰详细。

dappx.com:一个 dapp 应用商城

EOS 空投信息收集网站

imeos.one:IMEOS 出品,以排行榜的形式呈现空投项目及空投日期。

airdropsforeos.com:信息面板大,视觉效果好。

eostoolkit.io:需安装 Scatter 软件,可一键领取空投糖果。


640?wx_fmt=png

九、代码分叉与侧链

在 DPOS 机制下,一个 DPOS 区块链不会经历分叉,因为区块生产者是通过合作而非竞争的方式来生产区块。所以目前并不存在因共识分叉因而导致链分叉的情形。 即便真的出现了分叉,共识也将自动的切换到最长的链上。

当前 EOS 存在代码分叉与侧链两种形态。推荐阅读《EOS 主链、侧链、分叉链》。

1、代码分叉(code forks)

代码分叉意味着用 EOSIO 的代码,创建一条新的,独立的区块链。可能带来的优势在于,可以在新的这条链上,去对一些特殊的需要进行优化,当然,也有一些改动并不一定就带来了改进。code forks 的情况下,项目方可以对这一条链有完全的控制权。推荐阅读《Everything you wanted to know about EOS forks but were afraid to ask》/中译本。

现在 Worbli(服务金融行业平台)、 EOS ForceTelos、 OnoWax 等项目,可以看作是属于 code fork 类型。

2、侧链(sidechian)

侧链,是一条独立的区块链,是主链的辅助组建。侧链通过双向锚定的方式与主链连接,意味着,主链与侧链的代币价格是维持了一个固定的兑换比例的。侧链可给主链增加更多的额外性能和特征,比如,用作运行 DAPPs 或者对整个网络进行横向扩容。BM 认为,高效的跨链通信是可扩展性和协议演进的关键。当我们学会如何扩展时,一个代币可以轻松地从一代链转移到下一代。当代链和后代链可以同时并排运行。推荐阅读《侧链(Sidechain)白皮书笔记》、《主链和侧链有什么关系?》、《目前正在开发的侧链技术包括哪些?》、《小明学习笔记 | 一文看懂区块链跨链机制》、《EOS 侧链上线第一天,老猫隔空对呛背后团队与节点》。

目前,Fibos、BOS 属于 EOS 当中的侧链。

  • 其他网站

1、https://eosprojects.org   一个集合及更新 EOS 生态各类项目的网站,包括区块浏览器、社区网站、游戏、开发工具、钱包、交易网站等工具,另外,每个项目都包含创始与开发团队信息、时间线。

2、https://eosindex.io   聚焦项目的更新

3、http://allthingseos.com/    一个 EOS 工具与项目列表

4、http://blocktivity.info/    区块链活跃度矩阵

5、https://www.pixeos.io/   EOS 艺术网站

640?

推荐阅读


640?wx_fmt=jpeg


640?wx_fmt=jpeg


640?wx_fmt=jpeg

优质的推送带来深刻的思考

给 Odaily 标星,让你先与众不同

640?wx_fmt=gif


640?wx_fmt=gif

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值