聊聊闪电网络

  比特币作为一种电子加密货币实现了货币流通的去中心化,但存在交易速度的巨大瓶颈,每秒约7笔左右,极大的限制了利用比特币进行的流通,远远比不上现有的传统支付方式。闪电网络的出现让这一切有了转机。

  闪电网络提供了一个可扩展的微支付通道网络。交易双方若在区块链上预先设有支付通道,就可以多次、高频、双向的实现瞬间确认的微支付;双方若无直接的点对点支付通道,只要网络中存在一条连通双方的、由多个支付通道构成的支付路径,闪电网络也可以利用这条支付路径实现资金在双方之间的可靠转移。

  了解闪电网络之前需要先理解闪电网络的两个核心概念:RSMC(Recoverable Sequence Maturity Contract)和 HTLC(Hashed Timelock Contract)。RSMC类似于准备金机制,建立了支付通道的两个人之间的交易可以直接在链下完成,只有在取现等时才会公布到链上;HTLC 保障了任意两个人之间的转账都可以通过一条“支付”通道来完成。这两个类型的交易组合构成了闪电网络。

  RSMC,定义了该双向微支付通道的最基本工作方式,通道刚设立时,初值可能是Alice: 0.5 BTC,Bob: 0.5 BTC,即总的资金共有1.0 BTC。通道的设立会记录在比特币区块链上。

  如果Bob现在需要向Alice支付0.1个BTC,双方无需上链只需要在链下对通道的资金分配做如下更新即可,Alice:0.6BTC,Bob:0.4BTC,根据时间戳的不同,前一个资金分配方案自动作废,类似的资金变动在双方之间发生都在链下完成,无需上链,一直等到一方需要将通道中的资金取出用作它途时,只需要将最新的资金分配方案公布上链即可,一段时间内对方无异议该资金分配就会生效,也许Alice和Bob之间交易了一万次,但实际对区块链更新的操作只有一次,大大降低了链上的处理压力。如果对方能在这段时间内提交证据证明一方提出的是一个双方已同意作废的余额分配方案,则通道内的资金将全部被罚没并分配给对方,这也就是闪电网络的罚没机制。同时,RSMC对主动终止通道方给予了有相应的惩罚机制,即主动提出方其资金到账将比对方晚,因此谁发起谁吃亏。

  如果说RSMC属于一种无条件的支付方式,而HTLC(Hashed Timelock Contract)实现了有条件的资金支付。HTLC相比RSMC的不同在于HTLC含有一个哈希值,支付的前提是提取资金的一方需要提供一个字符串,该字符串满足哈希值等于HTLC的哈希值,这里利用了哈希函数的不可逆性,匹配的哈希值也即意味着提取方得到了被提取方的授权。

  理解了上述概念,再加上一个六度分隔现象,“闪电网络”的实现就好理解了。

  六度分隔现象指的是最多通过六个人你就能够认识任何一个陌生人,运用在闪电网络中即虽然你和任意一个陌生人之间没有建立支付通道,但是可以找到相应的路径仍然建立起支付关系。

logo

  如上图所示,Alice如果想支付给不认识的Dave一笔资金,但相互间没有建立通道,但存在这样一条路径,Alice→Bob→Carol→Dave,Alice和Bob之间、Bob和Carol之间、Carol和Dave之间为完成此次支付分别依次在各自的通道建立一个有条件合约,这里分别命名为HTLC1、HTLC2和HTLC3,HTLC3的执行将连锁执行HTLC2,HTLC2执行后连锁执行HTLC1,这些完成之后Dave通过一串字符串R生成一个哈希值H(R),并将H(R)提供给Alice,R提供给Carol,Carol生成匹配的H(R)后HTLC3执行,并连锁执行HTLC2,Bob得到R生成H(R),匹配Alice处的哈希值后从Alice那里获得一笔支付,执行HTLC1,Alice通过这种方式实现了支付给Dave一笔资金,当然,在支付过程中,Bob和Carol会收取部分佣金。上述过程中的全部动作都发生在比特币区块链之外。在实际演进过程中,Bob和Carol扮演的角色逐渐被各大交易所所取代,形成了一个部分中心化的机制,闪电网络在帮助比特币获得极大的扩展性的同时牺牲掉了部分分布式的优势,是工程实现过程中的一种妥协与平衡。

我的BTC地址:1K8ni4mnQn7VjFZKjHJHLPWZ55owG9J1jd
我的邮箱:mch200610@163.com,欢迎批评指正

  

您的支持将是我最大的动力!