LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资产 > 技术篇|EleChainV3.0中的多重签名算法

技术篇|EleChainV3.0中的多重签名算法

2020-02-13 象链科技 来源:区块链网络

1.概念

多重签名就是多个用户对同一个链信息进行数字签名,可以简单理解为一个公链地址的多个签名。

“用N把钥匙生成一个多重签名的地址,需要其中M把钥匙才能”拥有“这个地址上的通证或者数据的权限,N>=M,这就是M/N的多重签名”。

签名标定的是通证或数据的所属及权限,多重签名预示着资产可由多人支配与管理。拿EleChain来说,如果要动用一个地址的数据或者Token,那么需要多个私钥才能进行。

(2/3模式的多重签名)

2.EleChainV3.0中的多重签名方案

多重签名账号有自己的Role,独立于原有的Account。多重签名账号属于Account,所以多重签名账号创建的时候,也会在Account表中有一条记录。只是多重签名账号自己的Role维护的是多重签名账号的权重授权及阈值的情况。

在任何权限访问控制时,需要先check本账号账号是否存在,然后check是否多重签名账号,如果是走多重签名。否则走普通账号流程。

多重签名结构体:

多重签名账号创建:

账户在创建时,默认是单一签账户。也就是一对公私钥对应一个账户。原有创建账号流程不变。

创建多重签名账号使用独立的命令创建。

多方签名签署提案智能合约:

多重签名账号要执行相关业务,都是以提案的方式发起

1. 匹配proposer,proposal-name提案名称,确认是已经存在的提案

2. 验证签名是author_account_name发送的签名

3.?验证author_account_name是在MsignTransfer的requestList表中

4. 执行成功后,就将isApproved置为true

3.作用

多重签名的作用意义非常,如果采用单独的私钥,尽管以目前的密码学可以保证无法被暴力破解,但是这个私钥不保证会以其他方式(如黑客通过木马,自己不小心暴露等)暴露出去的话,那么对应的数字资产也同时暴露无遗。

此时如果公钥是由多重签名方式生成,那么即便被盗取了其中一个私钥,盗取者也无法转移对应的通证或者数据。

即多重签名使资产更加安全和多样化管理,尤其在需要暴露私钥的交易过程中,这一点优势体现的尤为明显。

4.应用

1.电子商务

较常见的是2/3的多重签名方式。例如一笔交易,由买家,卖家,平台各持有一份私钥对应该笔交易的地址,这个地址先有买家转入这笔交易所需的比特币数额,后续的交易确认,退款等流程就需要三方中2方才能转出这些比特币。无纠纷时,买家卖家双方确认即可。产生纠纷时由平台做出2/3的仲裁。

2.财产分割

比如合作团队管理一笔共有资金。可以使用1/N的模式,即这个账户谁都可以支配。好处是清晰忠实地记录了每个用户(对应私钥)的支出明细,方便清算。

3.资金监管

比如数字钱包,交易所,类似电子商务的2/3模式。比如家庭子女教育基金管理,使用2/2模式,不仅限制夫妻两房,也给黑客攻击增加了难度。

5.结语

多重签名技术使得以区块链在金融领域甚至其他数据交互领域可以做更多传统架构下难以实现的革新,对于多方参与形成了天然信任。相信对未来尤其在跨境电子贸易、资金合作等将产生深远影响。

- END-

—-

编译者/作者:象链科技

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...