如果你曾经尝试在本地运行 EOS 测试节点,会发现编译、运行并不是特别复杂,但官方教程里两个概念很容易把人搞晕: Account(账户)和 Wallet (钱包)。

EOS 的 Wallet 跟其他区块链项目是类似的,都是一个基本功能:本地储存密钥,仅此而已。你可能说了不对啊,其他项目的 Wallet 不光存密钥,还存代币呢。这里就是大家的一个误区,其他项目的 Wallet 也没有存你的代币,你的代币是存在整个区块链网络里的,只是区块链网络里的代币可以由你钱包里的密钥支配,给你了“钱包存代币”的错觉。那 EOS 的代币不由密钥支配?对,应该说不直接由密钥支配,先别急,先把 Wallet 说完。

Wallet = 本地存密钥,怎么存呢?一个 eosc (eos客户端) 可以建立多个 Wallet,每个 Wallet 可以存多个密钥(公/私钥对),不管这些密钥之间有没有关系,都能直接存在一起。每个 Wallet 都可以通过密码加密。EOS 公网上线后,一定要将存有密钥的 Wallet 加密,并且将 Wallet 文件单独备份好。 Wallet 密码也要单独备份。总而言之:私钥、Wallet 文件、Wallet 密码永远都在本地,不要上网,不要跟任何人分享。

Wallet 说完了,前面说 EOS 的代币不直接由密钥(或者钱包)支配,那由什么支配呢?答案就是 Account。Account 字面意思是“账户”,但我觉得有个概念更适合:“法人”。Account 是 EOS 网络的基本单位,是保存在区块链网络上的。一个 Account 背后可能只是一个自然人,也可能是一个数千人的大公司,或者是个智能合约。EOS 代币就是由 Account 持有的。先来看看最基本的情况:一个自然人持有一个 Account。

读过上篇文章的已经了解,每个 Account 有三种权限: Owner、Active、Recovery。

只要你钱包里拥有的密钥能达到阈值要求,就能直接行使相应权限,也就是说如果本地钱包存有上述两个公钥对应的私钥,就可以行使 @Xiaodi 账户的 Owner 与 Active 权限。对于 Recovery 权限,则需要 Recovery 列表里至少两个账户的授权才能行使。

再来看看一个稍复杂的 Account:

你看的没错 EOS 是可以增加权限种类的,对于这个 @XiaodiGongZhongHao(小笛公众号)账户,增加了 Publish (发布文章权限)。

相信读者可以自己分析了:Owner 权限必须两个账号同时授权,因为阈值是2;Active 权限则只需一个账户授权;Publish 权限中,虽然第三个公钥的权重为1,但阈值是2,也就是说这个公钥签了名也是没法发布文章的,需要两个账户之一再次签名。可以直接公布此公钥的对应私钥,这是模拟网友使用对应私钥投稿,编辑审核的情况。

配合可以增加的权限种类,可修改的阈值和权重,EOS 的 Account 权限可以有无限种玩法。

圆方圆区块链汇集大批区块链名师,采取导师值班制,为学员实时解决技术疑难。请关注圆方圆区块链知识星球与导师。(培训咨询请联系船长13826054890微信手机同号)

作者小笛 ,专注于 EOS 技术研究与区块链智能合约开发.是圆方圆区块链的导师,更多小笛老师的文章和视频请关注圆方圆链圈公众号。

EOS 上线前,先搞懂这两个基本概念的更多相关文章

  1. 搞懂分布式技术10:LVS实现负载均衡的原理与实践

    搞懂分布式技术10:LVS实现负载均衡的原理与实践 浅析负载均衡及LVS实现 原创: fireflyc 写程序的康德 2017-09-19 负载均衡 负载均衡(Load Balance,缩写LB)是一 ...

  2. 彻底搞懂Javascript的“==”

    本文转载自:@manxisuo的<通过一张简单的图,让你彻底地.永久地搞懂JS的==运算>. 大家知道,==是JavaScript中比较复杂的一个运算符.它的运算规则奇怪,容让人犯错,从而 ...

  3. 不想再被鄙视?那就看进来! 一文搞懂Python2字符编码

    程序员都自视清高,觉得自己是创造者,经常鄙视不太懂技术的产品或者QA.可悲的是,程序员之间也相互鄙视,程序员的鄙视链流传甚广,作为一个Python程序员,自然最关心的是下面这幅图啦 我们项目组一值使用 ...

  4. 每个java初学者都应该搞懂的问题

    对于这个系列里的问题,每个学JAVA的人都应该搞懂.当然,如果只是学JAVA玩玩就无所谓了.如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列.内容均来自于CSDN的经典老贴. ...

  5. 一文搞懂RAM、ROM、SDRAM、DRAM、DDR、flash等存储介质

    一文搞懂RAM.ROM.SDRAM.DRAM.DDR.flash等存储介质 存储介质基本分类:ROM和RAM RAM:随机访问存储器(Random Access Memory),易失性.是与CPU直接 ...

  6. 真正“搞”懂http协议01—背景故事

    去年读了<图解HTTP>.<图解TCP/IP>以及<图解网络硬件>但是读了之后并没有什么深刻的印象,只是有了一层模糊的脉络,刚好最近又接触了一些有关http的相关内 ...

  7. 让你彻底搞懂JS中复杂运算符==

    让你彻底搞懂JS中复杂运算符== 大家知道,==是JavaScript中比较复杂的一个运算符.它的运算规则奇怪,容易让人犯错,从而成为JavaScript中“最糟糕的特性”之一. 在仔细阅读了ECMA ...

  8. c#代码 天气接口 一分钟搞懂你的博客为什么没人看 看完python这段爬虫代码,java流泪了c#沉默了 图片二进制转换与存入数据库相关 C#7.0--引用返回值和引用局部变量 JS直接调用C#后台方法(ajax调用) Linq To Json SqlServer 递归查询

    天气预报的程序.程序并不难. 看到这个需求第一个想法就是只要找到合适天气预报接口一切都是小意思,说干就干,立马跟学生沟通价格. ​ ​不过谈报价的过程中,差点没让我一口老血喷键盘上,话说我们程序猿的人 ...

  9. 彻底搞懂字符编码(unicode,mbcs,utf-8,utf-16,utf-32,big endian,little endian...)[转]

    最近有一些朋友常问我一些乱码的问题,和他们交流过程中,发现这个编码的相关知识还真是杂乱不堪,不少人对一些知识理解似乎也有些偏差,网上百度, google的内容,也有不少以讹传讹,根本就是错误的(例如说 ...

随机推荐

  1. acdrem1083 人民城管爱人民 DP

    思路:d(i, 0)表示从节点i到达大运村的最短路径,d(i, 1)表示从节点i到达大运村的次短路径. 1.最短路:当做DAG处理即可. 2.次短路:假设当前在u点处,下一个节点是v.v到终点的最短路 ...

  2. HDU - 1430 魔板 (bfs预处理 + 康托)

    对于该题可以直接预处理初始状态[0, 1, 2, 3, 4, 5, 6, 7]所有可以到达的状态,保存到达的路径,直接打印答案即可. 关于此处的状态转换:假设有初始状态为2,3,4,5,0,6,7,1 ...

  3. (转载)SVM-基础(二)

    支持向量机: Support Vector  by pluskid, on 2010-09-10, in Machine Learning     52 comments 本文是"支持向量机 ...

  4. Linux中的DRM

    如果在搜索引擎离搜索 DRM 映入眼帘的尽是Digital Rights Managemen,也就是数字版权加密保护技术.这当然不是我们想要的解释.在类unix世界中还有一个DRM即The Direc ...

  5. php替换文件指定行的内容

    //第一种 利用file 函数 读取文件,每一行都是一个数组元素 $arr = file($file); $arr[$line] = "hello"; file_put_conte ...

  6. FusionCharts封装-Value

    Data.java: /** * @Title:Data.java * @Package:com.fusionchart.model * @Description:FusionCharts 封装dat ...

  7. C# 中 realdonly不等于只读

    Realdonly很多同学从字面理解.认为通过realdonly修饰的关键字是只读的,其实,并不完全是这样. 如int.string.bool等基本数据类型一旦赋值后,确实就不可以更改了. 但是如果是 ...

  8. js实现内容点击复制

    <!DOCTYPE html><html> <head> <script type="text/javascript"> funct ...

  9. Dynamics 365中审核用户权限变化的一种方法

    摘要: 本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复268或者20180311可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyon ...

  10. Servlet程序

    编写: (1)搭建javaweb项目: 1,创建一个java项目:HelloServletWeb 2,在HelloServletWeb中创建一个文件夹webapp表示Web的根 3,在webapp中创 ...