我们想要恒星成为世界数字支付轨道。我们是主要的几大平台中部署最完善的平台(请看下面的图表),但是考虑到未来恒星的应用规模,我们知道我们需要继续推动我们的技术进步。
可扩展性—即如何最好地实现它—已经成为一些区块链平台最痛苦的分歧中心。我们试图以开放的心态来解决这个问题。在某种程度上,一个想法改善了我们用户关心的速度、吞吐量、隐私问题,我们将探索它,从一个典型的闪电支付开始:
—可以立即确认
—可以忽略不计的费用
—不必公开
这个协议一直引起我们的兴趣。正如我们在2018路线图上说的,很明显,闪电网络是恒星前进的正确方向。
闪电网络如何工作
闪电网络是分布式支付网络的一种扩展解决方案,最初在比特币上被提出。闪电被设计成允许用户通过Routers和Hubs进行链外支付。闪电甚至有潜力支持跨协议支付,例如发送者在比特币网络上发送比特币,接收者在恒星网络上接收流明币,而不必信任任何一方。
闪电网络由被称为支付渠道的砌块构成。支付渠道背后的概念很简单,但很强大。它们允许用户打开一个链外渠道,在那里进行交易,而不是在公共分类帐上。因为它们是外链,在渠道中的交易可以非常快速和便宜,但类似于链上交易,没有交易对手方风险。
当渠道参与者准备分道扬镳时,他们关闭通渠道,回到公共总帐。不管渠道里发生了什么,全世界的人都只看到最后的交易。这就像给某人看电影的最后一帧一样;从那一帧,没有办法解开电影的其余部分。
开发者已经着手集成支付渠道到除了比特币的其他链和分类账上,包括以太坊和Zcash。每个平台的渠道都是独一无二的,这取决于平台的细微差别,但作为一项规则,任何实现都将支持一些基本需求:
—没有提交给网络的事务,除非参与方分开
—没有欺诈方造成的资金损失
—不受第三方干扰
—无渠道方速度瓶颈
恒星支持更灵活的通用支付渠道被称作state channels(状态渠道),意味着您可以在恒星网络上执行任何操作(例如,不仅是支付,还可以是创建、删除或更改帐户权限),您都可以在支付渠道中执行。
恒星状态渠道的实现依赖于这样的事实,每一个恒星的事务指定一个源帐户和一个序列号。我们已经找到了如何使用这些序列号作为一种自然版本控制机制来进行链外支付;它类似于你的银行如何收到不定期支票。做版本控制,我们利用新的操作,BUMP_SEQUENCE,我们将在下面详细描述完整过程。
我们对恒星闪电网络的时间安排是:
4月1号 | BUMP_SEQUENCE在测试网络上线 |
8月1号 | 状态渠道Beta版实施 |
10月1号 | 恒星主网状态渠道和闪电网络Beta版上线 |
12月1号 | 恒星闪电网络正式部署 |
恒星创始人,Jed McCaleb在2015年第一次探索闪电网络;我们2018年的实施仍然体现了他聪明的原计划,但是Jeremy Rubin和SDF的Nicolas Barry,David Mazières一起增加了必要的改进,使闪电网络对我们来说是正确的。下面是他们的解释。
State Channels on Stellar
Update Rules
Example Using JavaScript SDK
Informal Proof
Future Work
恒星上的状态渠道
这篇文章描述了如何在恒星上实现状态渠道。在以后的文章中,我们将展示如何使用哈希时间锁合约(HTLCs)将这些状态渠道链接在一起,允许在其他链上实现多跳支付和与闪电网络实现的互操作性(例如,允许比特币和流明币之间的原子跨链交易)。这个设计还没有定案,我们强烈鼓励来自其他研究人员和社区的反馈,因为我们正在为一个生产就绪的规范与实现工作。
一个状态渠道是N个用户之间的排列,u1…un,谁希望执行作为side-effects返回的链外事务(净付款,但也有帐户创建/删除等)。用户协作创建一系列“快照事务”。side-effects的序列,T1,T2…,Tk,只有最后一个序列,Tk,将被执行在公共分类帐上。为确保一旦用户创建Tj+1时Tj不被执行,该协议实施了同步假设:它假定所有参与者都可以观察和响应分类账—包括克服任何停机时间或DoS攻击—还有一些延迟限制D,如一周。我们利用每笔恒星事务指定源帐户和序列号的事实在恒星上实现状态渠道。事务的序列号必须与源帐户的单递增序列号相匹配。我们的方法将分配更大范围的序列号在一个托管账户 R 在每个序列 TJ的交易。序列 TJ 因为其序列号太高而不能执行。然而,一旦所有的用户都签署了 TJ,他们将继续去签一个第二套“棘轮交易,”Vj,提高账户 R的序列号在这个点的 TJ 可以执行。提高 R的序列号快照事务Ti如果i小于j将永久失效?这就是同步假设发挥作用的地方。
未来的工作
这是恒星上的一个简单的支付渠道设计,但仍有许多工作要做。
我们目前正致力于支持多跳支付,增加隐私和可扩展性,与闪电网络渠道对其他区块链如比特币的互操作性。如果你有兴趣帮助我们建立我们的协议,加入我们的 GitHub 或 StackExchange。