...
1、总体架构
...
Settlement Chain: 支持结算的链,可以是Starcoin、AptOS、Sui 支持结算的链,可以是AptOS、Sui 或者 RoochRooch。
蓝色的P2P Node: 状态通道的Leader 节点,所有对状态通道的写操作,都需要转发给Leader节点
白色的P2P Node: 状态通道的Follow 状态通道的Follower 节点,从Leader 节点同步最新的交易并验证执行。
...
2、如何防止P2PNode作弊
所有参与状态通道的P2P Node 需要抵押一定的原生代币,如果P2P 需要抵押一定的虚拟资产,如果P2P Node 作弊或者不合作。将扣除抵押的原生代币。为了防止每次进入状态通道都质押币,用户可以选择将币质押给状态通道共享质押合约。这样用户进入状态通道时,指定使用共享质押合约作为抵押就可以。当用户的P2P Node出现作弊或者不合作将从共享质押合约中扣币。作弊或者不合作。将扣除抵押的原虚拟资产。为了防止每次进入状态通道都质押资产,用户可以选择将资产质押给状态通道共享质押合约。这样用户进入状态通道时,指定使用共享质押合约作为抵押就可以。当用户的P2P Node出现作弊或者不合作将从共享质押合约中扣出资产。
作弊的场景:
场景 | 1人状态通道 | 两人状态通道 | 三人状态通道 | n人状态通道 |
---|---|---|---|---|
Leader 修改MoveVM实现/合约代码 | ? | Follower 本地运行立即可以发现,然后举报,合约强制Leader退出通道,5分钟内不许再次进入,不罚款 | 任何Follower 本地运行立即可以发现,然后举报,两票赞成后,合约强制Leader退出状态通道,5分钟内不许再次进入,并罚款 | 任何Follower 本地运行立即可以发现,然后举报,两票赞成后,合约强制Leader退出状态通道,5分钟内不许再次进入,并罚款 |
Leader 丢弃/延迟对手的交易 | Follower发现Leader没有回复自己的交易,可以举报,合约关闭状态通道,不罚款 | Follower发现Leader没有回复自己的交易,可以举报,合约关闭状态通道,不罚款 |
...
Steam模块,维护和SDK的双向流连接,并转发SDK的请求给对应的状态通道实例。
2.2.1
...
启动服务
命令:state_channel.join
参数:
参数 | 类型 | 描述 |
---|---|---|
sender | string | 用户钱包地址 |
state_channel_id | string | 状态通道ID |
...
https://cookbook.starcoin.org/zh/docs/concepts/multisig/
https://wiki.biligame.com/mc/%E5%AE%9A%E5%88%B6%E6%9C%8D%E5%8A%A1%E5%99%A8 《MineCraft定制服务器》
https://www.zhihu.com/question/24459078