閃電網絡的原理稍顯復雜,白皮書一共28頁,讀起來十分燒腦,本文試著用生活化的故事和通俗易懂的文字來講述閃電網絡,希望能達成所愿。當然,文中故事純屬虛構,并不能放到實際的生活場景中去一一驗證;另外,鑒于閃電網絡的復雜性和重要性,我將用一個專題系列來剖析閃電網絡的技術細節、優勢和劣勢、以及應用場景等。
為擴容而生
比特幣網絡上的每個區塊只能存儲1M左右的交易數據,由于系統規定每10分鐘左右生成一個新區塊,而這10分鐘整個比特幣網絡上會產生巨量的交易,1M容量顯然捉襟見肘,不堪重負的比特幣網絡,隨時面臨癱瘓的可能,區塊的擴容勢在必行,于是,閃電網絡便應運而生了。
什么是閃電網絡?
1、銀行開戶(建立雙向支付通道)
老張和老楊因為生意往來,經常要去銀行給對方打款,因為辦理業務的人太多,銀行系統不堪重負,經常癱瘓,這給老張和老楊帶來了不小的麻煩,后來經銀行工作人員介紹,兩人開了一個聯名卡,分別往卡里存了1萬元,余額一共2萬元,根據規定,無論是誰要動用卡里的錢,都必須雙方(老張和老楊)親自簽名同意。
有了聯名卡之后,老張和老楊生意上的資金往來,變成了這樣——
如果老張要支付給老楊1000元,則調整聯名卡上的余額比例,調整后,老張剩9000元,老楊剩11000,老張開個余額調整的證明并簽名(提現時使用),交給老楊保管(避免耍賴和作弊)。
如果老楊要轉給老張5000元,同樣調整聯名賬戶的余額比例,調整后,老張剩14000,老楊剩6000,同樣老楊也要對這個余額調整證明簽名,交給老張保管。
所有的資金往來實際上都只發生在這個聯名賬戶內部,老張和老楊只需要保管好資金往來的簽名憑證,每次交易都不需要到銀行辦理業務,而老張和老楊通過這張聯名卡相互進行支付(交易)的通道被稱之為雙向支付通道(虛擬支付通道)。
2、轉賬(閃電網絡)
老張和老楊的這張聯名卡,僅僅只能在老張和老楊雙方之間進行資金往來,很不方便,這不,今天下午,老張在隔壁老王家串門,無意中看上了他家的一臺MAC電腦,老王正好也想500元出售,可是老張的錢全都在與老楊的那張聯名卡上,要從聯名卡上提現,老王和老楊必須一起去銀行并現場簽名,很麻煩。
很巧,隔壁老王正好和老楊也開了聯名卡(雙向支付通道),于是,老張通過簽名轉了500元給老楊,老楊通過簽名轉了500給隔壁老王,老張順利買下了老王的電腦。
老張發現,只要有一個人與其他人建立雙向支付通道,理論上都可以通過這個人向其他人進行支付(轉賬),而且只需要一個簽名,不需要專門去銀行辦理業務,更便捷,聰明絕頂的老張給這種支付方式取了個很炫酷的名字——閃電網絡。
3、提現(關閉支付通道)
因為實體經濟的不景氣,很不幸,老張的公司倒閉了,他必須馬上把聯名卡里的錢提取出來支付員工工資,不巧的是老楊正好出差拜訪客戶去了,需要兩周才能回來,第二天就要給員工發工資了,老張情急之下只好抱著試一試的心態,自己拿著聯名卡到了銀行試圖提現,銀行工作人員詳細給老張講解了聯名卡提現的三種方式——
第一種:老張和老楊現場簽名,可分別提走各自的余額;
第二種:老張或老楊單方面到銀行申請提現,自申請之日起,需要凍結賬戶10個工作日,如果10個工作日內,沒有收到另一方的反對意見,則可以分別提走各自的余額;
第三種:在聯名卡開戶的時候,可以設置一個解除聯名關系的時間,比如一年,一年到期之后,可以不經雙方簽字同意,直接提走各自的余額。
聽完工作人員的講解,老張只好灰溜溜地回去了。
閃電網絡能解決什么問題?
從老張和老楊的故事中不難發現,只有在開戶(建立雙向支付通道)和提現(關閉支付通道)的時候,才會占用銀行的系統資源,而最頻繁的資金往來交易,并不需要與銀行系統發生實質關系,這樣大大減輕了銀行系統的負荷,銀行再也不用擔心網絡堵塞了,可謂把“錢”花在了刀刃上。
當然,閃電網絡的細節和原理,比故事中闡述的邏輯要復雜得多,下一篇我將詳細說明技術細節,敬請關注。