Post
闪电网络承载复杂互动的合约问题
支付网络一旦承载游戏和状态机,它就不再只是支付网络,而会变成更一般的执行基础设施。
推特支持比特币闪电网络打赏了,我想起两年前团队尝试的一个小项目,在闪电网络上支持智能合约,让用户可以通过闪电网络玩游戏。智能合约用 WebAssembly 做虚拟机,游戏逻辑编译成 WebAssembly 的合约。
玩游戏的时候双方的客户端选择一个仲裁节点,然后通过闪电网络抵押 btc 给对方,但提款的一个随机数在仲裁节点,双方都无法直接提款。然后双方通过 p2p 网络通信进行游戏,客户端内的虚拟机运行智能合约,校验对方的操作,一旦发现一方作弊,则提交给仲裁节点进行仲裁,仲裁节点会将作弊一方的解锁随机数发给另外一方,另外一方则可提走作弊方的押金。这个过程中虽然包含了对仲裁节点的信任,但仲裁节点无法直接提走双方的抵押物。
当时做了一个闪电网络上的五子棋,五子棋的逻辑用的 WebAssembly 实现,界面也用 WebAssembly 画出来,两个 WASM 虚拟机之间通信。 http://t.cn/A6MbI8k2
可惜当时闪电网络确实没啥用户,也就没有继续搞了。不知推特这波能不能带起来闪电网络上的应用。
原微博中的媒体

