跟比特币、以太坊单纯的分布式账号不同,EOS拥有自己一套完整的账户体系。这套账户体系到底是怎样的,很多人并不知道。本期主要围绕EOS账户体系中的默认权限以及权重、阈值两方面进行简要的介绍。
默认权限
Owner 和Active
在EOS账户体系中,默认两种权限,即Owner 和Active 。
Active是操作权角色,可用于平时的转账、投票等日常操作。
Owner 是所有权角色,具有Active 私钥所有权限,以及具有重置 Active, Owner等更高权限。
所以建立EOS账户时应该将Owner与Active使用不同的公私钥对, 并将Owner私钥放入冷钱包中, 平时的操作都应使用Active进行操作, 以保证账户的安全, 当Active出现意外泄漏时, 可以通过使用冷钱包的Owner权限重置Active。
权限的分配
基于这两种权限,账号的拥有者可以进行权限的控制和自定义。授权涉及个人或群体,并且往往是分门别类。EOS.IO软件提供了一个声明式权限管理系统,可以对帐户进行细化、高级别的控制,以确定谁可以做什么。
比如我们可以将账号类比为一家公司,老板拥有最高权限,可以自定义财务部、设计部、运营部等各种职能的部门,同时他给每个部门的人赋予不同的权利,类似经理和员工等不同身份的权利给予, 即权限的控制。这样做的好处就是权限可以足够细化且方便控制和检查。
EOS的权限分配的组合方式可以是多重多样的,具体可以根据用途来定义。
企业智能合约
权限的控制是通过智能合约来实现。一般来说,需要进行权限控制的操作,都来源于企业, 例如公司的对公转账, 决策投票, 资产处理, 直接编写智能合约进行处理, 由智能合约判断当前处理交易是否满足需要的权限。
与现今公司的各项操作流程相比,智能合约颠覆性提升了公司的效率和执行成本。基于智能合约运行的金融产品具有高透明度、高安全性、高效率的显著特征。
目前,瑞士联合银行、英国巴克莱银行以及美国摩根大通等金融机构都在研究把智能合约用于自动化交易结算,这种方式能大大降低成本。
权重、阈值
EOS账户有权重
在EOS里,账户有权重。比如在重大事务的抉择中,公司需要超过五位股东的同意才能执行的设定。这就涉及到权重和阀值的意义,不同的名称其实也就代表不同的权限分类,这样可以灵活的用于不同场景,不同用途。
通过权限的分配来使其他用户共同维护一个账户,多用户控制可以提升账户的安全性,如果你是账户的唯一用户,黑客只要黑了你就可以获得账户的控制权,但是通过账户和私钥加权组合,设置权重和阀值让多个用户来控制。
如此降低了高权限组(如Active, Owner)的使用频次, 降低了私钥泄漏风险, 就算某个独立的角色私钥泄漏, 也不会影响到整个账户被盗。
场景举例
Actions的执行,需要满足一个阈值。比如要完成一个转账操作,设定的许可阈值是2,则一定要达到这个阈值,才能转账。Bob、Stacy的权重都是1,因此要获得Bob和Stacy的授权才可以完成这个操作。
基于以上所讲,我们以企业账号的结构设计为例。老板具有最高级的权限,对各项事务进行决策,同时他可以给不同的事项和不用的人员赋予不用的阈值。
例如老板给投议案设置的阈值是 5 ,CMO、CTO、CCO的权重分别为3、3、3。这就意味着要通过投议案至少需要两个人的票权。
又如在资金处理上设置的阈值是 5 ,财务经理、职员A、职员B的权重分别为5、3、3。这就意味着在资金处理上财务经理一人可以决定,或者职员A、B两个人共同协作才能对资金进行处理。
= END =