Trust Wallet这一官方的多签机制, 其核心要点是怎么样把私钥这个东西进行拆解。它会拆分成若干个不同的份额, 把这些份额分散去存储在完全不同的设备里面, 或者去存放在不同的人员手中。这就意味着任何一种单独的份额都无法具备独立完成一笔交易的能力,这是不可行的。

在创建多签名钱包这个操作进行的时候, 系统是使用一种叫Shamir秘密共享算法的东西来把密钥拆分成m份文件的, 而且这里面是需要任意k份文件合在一起才能够恢复出来那个完整的密钥的。

按照默认的TP配置来说的话, 通常会设置为2-of-3这种模式, 这意味着就是在总共有三把钥匙的情况下, 随便拿出任何两把钥匙来就能够得到授权来进行签名操作了。

在进行转账操作的时候, 必须让交易哈希在多个设备里面分别完成签名工作, 这些工作总共需要在k个设备上执行, 等到所有签名都聚合起来以后, 才可以把数据放到大脑链条上去。

Shamir秘密共享算法_Trust Wallet多签机制_TP官方是怎么被多签的

每一份签名都是独立进行校验的, 其中任何一份签名发生泄露, 最多只会暴露出一小块信息, 这样的情况不会直接导致完整的私钥被人发现或者是被拿到手上面去。

多签的份额要放到物理隔离的那些硬件设备里边去, 千万千万不要把多份的份额都存在同一台手机里面, TP的这个后台会记录下每一次执行签名操作时候的设备指纹还有那个时间戳的, 就是用来方便在出现异常情况的时候进行追溯排查的。

在完成配置操作之后, 建议对其中某一份份额进行定期的轮换处理, 以此来降低在长期使用过程中出现单一节点信息泄露的风险。