领略闪电网络:构建比特币的双向付出通道

闪电网络(Lightning Network)大概是比特币区块链上最受等候的创新(编者注:原文撰写于 2016 年)。这种付出方案最早由 Joseph Poon 和 Tadge Dryja 在一年多以前提出,号称能支持用户之间在链下发送无限次的生意业务,并且本钱极低 —— 还能借用比特币网络提供的安详性。

至少有三家公司 —— Poon 和 Dryja 的 Lightning、Blockstream 和 Blockchain 正在开拓这种技能的实现。但在技能人员的小圈子之外,很少有人领略 “微付出的将来”如何能引爆比特币的潜能。

在本系列文章里,Bitcoin Magazine 实验罗列闪电网络最基本的砖石,并展示这些对象如何能组合出闪电网络这种即将到来的协议。

本系列的第一篇文章将罗列须要的模块并展示这些模块如何能组合起来建设 “智能合约”;这个观念可以用来领略闪电网络的第一个前提:双向的付出通道。

(提示:很是熟悉比特币的读者可以跳过对这些模块的先容。)

模块 #1:未确认的事务(Unconfirmed Transactions)

比特币协议的焦点是所谓的 “事务” 的观念;一般来说,一笔事务老是关联着另一笔前序事务,而且可以用在将来的事务中。每笔事务都包罗 输入,指向 转出 比特币的地点;以及 输出,指向 收到 比特币的地点。另外,为了发送比特币,输入还必需满意一些条件,好比要提供数字签名来证明发送者具有输入地点的 “所有权”。同时,输出也会确立这些比特币在日后利用时候的新条件,在 后序事务 发出的时候必需满意。

(译者注:把比特币想象成一张张有面额的支票,在利用时,支票自身给出了资金的来历,而在利用后又会形成新的支票。所以对每一张支票来说,都有形成这张支票的事务,也等于前序事务;而当这些支票被再次花用时,那笔事务就可称为后序事务。)

闪电网络的一个要害特性是,它是由或多或少的通例比特币事务构成的。只是,这些事务一般不会在比特币网络里流传。相反,这些事务都是用户生存在节点当地的 —— 只不外,它们随时可以放到比特币网络中流传。

译者注:如图所示,比特币就像支票一样可以拆分,且其流转会形成清晰的链条

模块 #2:杜绝多重付出(Double-Spend Protection)

闪电网络所需的第二个模块大概不需要太多表明,因为它可以说是比特币协议自己的存在来由:多重付出的防御法子。假如两笔事务(可能说输入)依赖于同一个输出,那只有个中一笔才会获得整个网络简直认。

服膺:纵然尚未确认的事务之间产生了斗嘴,最终也只有一笔会获得确认。

模块 #3:多签名(Multisig)

闪电网络的第三个模块也很好领略:多签名地点。(可能更广义地说:P2SH 地点(剧本哈希值地点)。)

顾名思义,多签名地点就是需要多个私钥来 “解锁”、利用比特币的地点。多签名地点的条件可以配置得许多样。好比,可以要求在 3 把私钥中要有 2 把参加,才气转出比特币;可能是其它的数量要求(好比 2/5,3/4,等等)。

闪电网络一般利用 2-2 的多签名要求。要从这样的地点中转出比特币需要提供跟这两把私钥相关的两个签名,少一个都不可。

模块 #4:时间锁(Time-Locks)

第四个模块是时间锁。时间锁成果可以在一个输出中安排一个锁定条件,让这些比特币仅在将来某个时间之后才气花用(也即被用作一笔事务的输入)。

有两种范例的时间锁:1)绝对时间锁,叫做 CheckLockTimeVerify(CLTV);2)相对时间锁,CheckSequenceVerify(CSV)。CLTV 会锁定比特币直至将来某个(可以说是)详细的详细:一个详细时间和日期,可能一个详细的区块高度;而 CSV 只会利用相对时间。当一个 CVS 输出上链之后,就要期待必然数量的区块后,这笔输出才气花用。

模块 #5:哈希值和奥秘值

第五个,也是最后一个模块 —— 暗码学 —— 也是比特币自己最基本的模块。但在闪电网络中,用法有所差异。


免责声明:数字资产交易涉及重大风险,本资料不应作为投资决策依据,亦不应被解释为从事投资交易的建议。请确保充分了解所涉及的风险并谨慎投资。OKEx资讯站仅提供信息参考,不构成任何投资建议,用户一切投资行为与本站无关。