2020-11-07 EOS 体系下钱包实现Multisig 多签的方法。

EOS体系下的多签Multisig 实现。

首先我们需要知道EOS的账户体系 是由钱包地址与对应的权限表组合而成的。

例如一个普通的地址 eosalice 对应了2个不同的密钥对, 一个是 owner ,一个是active , 分别对应了类似 EOS8gywijiNKo75ZkXYKW4LiavJjz3VxDpfL7r6C9fSkpbjzrQnuZ 这样格式的一个公钥,权重Weight 分别是1 , 然后这个账户的所有者能够通过set account 指令(updateauth) 将 权限表做变更(转移),如果新的权限表也是单一的公钥,那么仅是更换了一个密钥对 (Key pairs ) 而已;如果新的权限表(permission table) 是总权重>1 ,例如由2个账户组合而成的 active 2 : (alice@active 1,  bob@active 1 )  那么这个账户新的active 权限表对应的action 执行的时候需要用到eosio.msig 合约,  举个例子, 这是一个众筹的地址 kol.crowd , 它对应的权限表是 ( alice@active1 , bob@active 1 ,victor@active 1 ) , 现在kol.crowd 的余额是 1000.0000 EOS, 需要转账到一个地址 teacher ,金额是100.0000 EOS , 那么需要用到多签合约的流程, 先做提案proposal , 之后由权限表里的各个用户执行签名approve , 签名收集齐了后,由任意一个地址再发起一币交易exec 这个提案, 这个时候账户kol.crowd 才会真正执行一个transfer 交易,转账到teacher 账户,金额是按照提案里设定的100.0000 EOS.

这里前后需要用到的cleos 指令包括: 

cleos

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值