公证人机制"/>
公证人机制
公证人机制
引入一方或多方可信实体做信用背书的跨链机制
公证人机制是技术上可实现的,最简单的跨链机制
实现方式
- 单签名公证人机制,即一个节点做公证人
- 多签名公证人机制,即多个节点利用多签名机制做公证人组
- 分布式签名公证人机制,指多个公证人持有一份密钥的碎片,密钥碎片随机发给公证人
瑞典的InterLeger协议中原子模式的实现方式是典型的公证人机制
在InterLeger协议中,包括发送者,连接者,接收者,和公证人等角色。
发送者把资产转给公证人组多签地址进行资产托管
接收者确认收到转账后在收据后签名
当前账本公证人根据收据将资产转给连接者
每个账本选出各自的公证人Ni
在准备阶段,发送者p1和公证人N1在账本L1上利用多重签名锁定发送者的资产b1。
以比特币为例,p1可以构建数额微b1的Tx1,设定Tx1的输出条件需要p1和N1的签名,然后交易上链实现资产锁定。
之后p1构建一笔Tx2花费,Tx1锁定的资产,输出给连接者p2,对交易签名后把交易交给公证人N1托管,N1通知连接者p2。
连接者p2验证交易正常托管并且数额合理后,在账本L2上执行相同的操作,然后通知p3。
以此类推,直到完成最后一个账本Ln上的托管交易构建完成,并通知pn,交易的支付链完成准备阶段。
接收者pn确认公证人Nn托管了连接者pn-1发给个人的bn个代币的交易后,会在一份收据上签名并发给公证人Nn,Nn得到收据后就会签名交易使其生效,完成转账。然后把收据发送给上一轮的公证人,每一轮的公证人收到收据后会依次签名托管交易使其生效,最终完成整个链的交易。
单签公证人
Alice 通过交易所钱包将自己的比特币打入交易所地址;
Alice 在交易所上挂上卖单1个BTC卖出20ETH价格;
Bob需要将自己的ETH打入交易所的以太坊地址;
Bob通过交易所挂出购买比特币的单子 20ETH买一个比特币;
交易所将Alice的卖单和Bob的卖单进行撮合;
交易所将Alice在交易所存储的1BTC 转移给Bob的比特币地址;
交易所将Bob在交易所存储的20ETH 转移给Alice的以太坊地址;
多重签名公证人
多重签名公证人机制,由多位公证人在各自账本上共同签名达成共识后才能完成跨链交易。多重签名公证人的每一个节点都拥有自己的一个密钥,只有当达到一定的公证人签名数量或比例时,跨链交易才能被确认。
分布式签名公证人
分布式签名公证人机制和多重签名公证人机制最大的区别在于签名方式不同,它采用了多方计算MPC(Multi-Party Computation)的思想,安全性更高,实现也更复杂。
基于密码学生成秘钥(系统有且仅产生一个密钥),并拆分(公证人组中谁都不会拥有完整的密钥)成多个碎片(经过处理后的密文)分发给随机抽取的公证人(即使所有公证人将碎片拼凑在一起也无法得知完整的密钥),允许一定比例的公证人共同签名后即可拼凑出完整的秘钥,从而完成更加去中心化的“数据收集验证”过程。
缺陷
需要公证人有足够的信任
对于单节点公证人机制有很大的中心化风险
对于多签名公证人机制,需要目标链上支持多重签名机制
更多推荐
公证人机制
发布评论