当前位置:网站首页>一张图理解EOS是什么
一张图理解EOS是什么
2022-08-05 11:08:00 【智慧浩海】
从比特币到以太坊,再到 EOS,它们背后的组织渐趋复杂。比特币处在完全自运转的状态。以太坊由以太坊基金会开发软件和运转该区块链网络。出于各种原因,EOS 显得更为复杂。初看,它至少包括以下三个部分。
- 第一,EOSIO 软件。这个开源软件是由 Block.one 公司开发的。当然严格来说,这是一个社区开发的开源软件,任何人都可以参与开发、提交代码。
- 第二,EOS 币(EOS 通证)。EOS 币由 Block.one 公司在以太坊上按 ERC20通证标准发售。按发售条款,发售获得的 ETH 资金归属 Block.one 公司。历时一年的发售于 2018 年 6 月 2 日结束,之后,EOS 币被映射到上线的 EOS 主网上,它现在是 EOS 主网的原生数字货币。
- 第三,EOS 主网。通过竞选,一批区块生产者(BP,超级节点)被选出来,它们启动 EOS 主网。EOS 主网于 2018 年 6 月初由 EOS 社区上线。但可以合理地推测,在 EOS 社区中,Block.one 公司有着非常大的影响力。
在主网之外还出现了一些未获得 EOS 社区广泛认同的,可视为 EOS 替代网(altnet,这是我们造的一个与之前的替代币(altcoin)、替代链(alt chain)相对应的词)。
EOSIO 是一个开源软件,Block.one 公司也支持各方使用这个开源软件来架设自己的区块链网络。不过也出现了一些有争议的替代网,比如有的替代网试图混淆自己与 EOS 主网。开发者还可以用 EOSIO 软件建立单节点测试网、多节点测试网。
到此我们可以看到,EOS 的组成部分与多数基础公链项目一致,包括三个部分(一条链、一个通证、一个软件):EOS 主网、EOS 通证、EOSIO 开源软件。EOS 主网也是由分布式账本和去中心网络组成的。与其他基础公链的一个较大不同是,它鼓励更多的人在主网之外使用和运行 EOSIO 开源软件。
如图 1 所示,EOS 的主网包括三层:最核心层是由区块生产者(BP)组成的 EOSIO 核心网,中间层是 EOSIO 接入网,外层是 EOSIO 用户。
EOSIO 开源软件包括一系列软件,其中主要有三个:nodeos、cleos、keosd。
- nodeos:即 EOS 的核心程序,它是 EOS 节点的后台程序。
- cleos:管理 EOS 区块链和钱包的命令程序。
- keosd:管理 EOS 钱包的程序。
EOS 主网的账户包括两种:外部账户(由私钥控制的外部账户)和合约账户。和账户相关的概念是钱包与权限,钱包是保存密钥的客户端,而权限包括两个基础权限类别(owner 与 active),应用可自定义各种权限。

图1:一张图看懂EOS区块链与EOSIO开源软件
EOS 的智能合约
EOS 的智能合约是关联在各个合约账户上的。在 EOSIO 系统中,“合约”是沿用了区块链的专业术语,但其含义非常接近于 Linux 操作系统的后台应用,比如节点在启动时会包括四个缺省合约,如 eosio.bios、eosio.token 等。
EOS 的智能合约可以通过两种方式调用,一是用户通过命令调用,二是通过 EOSIO 软件的 send 方法调用。一个账户通过转账等动作触发另一个合约账户中的合约运行之后,这个合约可以通过软件代码调用其他的合约(见图3-11)。
EOS 智能合约现在是用 C++ 语言编写的,文件格式分别为.hpp/.cpp,编译后变为 WebAssembly 格式文件 WASM(.wast)与应用头文件(.abi)。
边栏推荐
- STM32 entry development: write XPT2046 resistive touch screen driver (analog SPI)
- 如何用Golang来手写一个Blog - Milu.blog 开发总结
- 双因子与多因子身份验证有什么区别?
- 【MySQL基础】-【数据处理之增删改】
- 发现C语言的乐趣
- MMDetection in action: MMDetection training and testing
- Student Information Management System (first time...)
- 金融业“限薪令”出台/ 软银出售过半阿里持仓/ DeepMind新实验室成立... 今日更多新鲜事在此...
- shell编程流程控制练习
- STM32入门开发:编写XPT2046电阻触摸屏驱动(模拟SPI)
猜你喜欢

Android 开发用 Kotlin 编程语言 二 条件控制

012_SSS_ Improving Diffusion Model Efficiency Through Patching

解决2022Visual Studio中scanf返回值被忽略问题

SQL Outer Join Intersection, Union, Difference Query

.NET in-depth analysis of the LINQ framework (6: LINQ execution expressions)

化繁为简!阿里新产亿级流量系统设计核心原理高级笔记(终极版)
![智源社区AI周刊No.92:“计算复杂度”理论奠基人Juris Hartmanis逝世;美国AI学生九年涨2倍,大学教师短缺;2022智源大会观点报告发布[附下载]](/img/e7/df5a17d372a4324d1a2120829d03e9.png)
智源社区AI周刊No.92:“计算复杂度”理论奠基人Juris Hartmanis逝世;美国AI学生九年涨2倍,大学教师短缺;2022智源大会观点报告发布[附下载]

巴比特 | 元宇宙每日必读:中国1775万件数字藏品分析报告显示,85%的已发行数藏开通了转赠功能...

Four, kubeadm single master

Opencv图像缩放和平移
随机推荐
Four, kubeadm single master
5G NR system messages
如何测试一下现场的备机失败,转发主机的场景?
数据可视化(一)
gradle尚硅谷笔记
反射修改jsessionid实现Session共享
Opencv图像缩放和平移
并非富人专属,一文让你对NFT改观
MMDetection实战:MMDetection训练与测试
结合“xPlus”探讨软件架构的创新与变革
Letter from Silicon Valley: Act fast, Facebook, Quora and other successful "artifacts"!
hdu2097 nyoj414 sky数 (进制转换)
flutter 服务器返回数据判断是否为空
【OpenCV】-仿射变换
微信小程序标题栏封装
Three methods for extracting facial features
Opencv算术操作
Import Excel/CSV from Sub Grid within Dynamics 365
Detailed explanation of PPOCR detector configuration file parameters
安全软件Avast与赛门铁克诺顿NortonLifeLock合并获英国批准