对于扩容方案,状态通道可以算是最容易实现的了。它可以完成小额支付,区块链游戏和代币兑换,确保交易所安全以及很多其他的事情。
shutterstock_1044056869-e1523904713468
广义的状态通道就是对于应用通道的统一化框架。可以让系统构建的时候更加容易。只需要把逻辑合约加到框架上,就可以完成。而且更新是免费的。
现在我们有两个非常有趣的问题出现了。其中一个是专注于支付通道,状态通道的一个分支专注于支付。这个设计提供了和哈希时间锁定的支付,即闪电网络的整合。你真地需要这个来支付咖啡费用吗?也许我们可以通过现在使用TCP/UDP/IP传输数据那样,来进行货币转账。
另一个问题是就是通用性问题。我们现在有状态通道系统了,并且想要升级一个子通道合约。用户怎么才能相信一个新的合约呢?
广义的状态通道架构,是构建用户间链下资产转移的方式。人们可以很安全地进行转账,而不是使用同样的区块链转账。我们现在已经整理好代码,并且添加了一些测试,现在可以来展示我们的框架部署。
代码是在machinomy/mc2 数据库。它是标准的合约部署,其中有相似的布局:/build, /contracts, /migrations以及其他代码。其实,它是支付通道合约的一个分叉。主要内容是在 /contracts和/test的文件中。
状态通道的构建首先要从Multisig合约的部署开始。这就说如果大家都同意,那么在区块链上就能完成一笔转账。我们的Multisig合约只限于两个人。对于复杂的案例,也了可以使用更加高级的多重签名合约.
http://www.8btc.com/code-walkthrough-for-generalised-state-channels