區塊鏈有兩個明顯特點,一個是區塊,另一個就是“鏈”,即“鏈式結構”,在“鏈式結構”下,它衍生出:鏈/Chain、鏈上/On-chain、鏈下/Off-chain、分叉/Fork、軟分叉/Soft Fork、硬分叉Hard Fork系列概念,
鏈/Chain
鏈是由區塊按照發生的時間順序,通過區塊的哈希值串聯而成,是區塊交易記錄及狀態變化的日志記錄,
鏈上/On-chain
on-chain是區塊鏈網路上最基本的交易方式,以位元幣為例,鏈上交易的流程是甲方給乙方-個位元幣地址(公鑰) ,乙方用客戶端創建交易發送位元幣給甲方,這筆交易在全網廣播,并且被確認,隨后打包進區塊,顯然,這個交易是直接發生在位元幣網路.上的,相對來說比較安全,需要注意的是,由于位元幣網路區塊確認時間較長所以交易程序會比較耗時,
鏈下/Off-chain
從功能角度講,區塊鏈系統是一個價值交換網路,鏈下是指不存盤于區塊鏈上的資料交方式,例如我們在交易所里進行的交易就是ff- chain交易,在交易所中進行的鏈下交易是如何運作的呢?A用戶和B用戶分別在某交易所開戶,交易所會分別為A用戶和B用戶生成-對公鑰私鑰,但是A和B都不知道平臺給他們生成的私鑰,只知道自己的公鑰,然后, A和B用自己的錢包往平臺給他們開的公鑰地址里沖值位元幣,注意這個操作依然是onchain的,再然后, A通過交易所轉了0.5BTC給B ,但由于A沒有私鑰,所以需要交易所拿A的私鑰去簽名并廣播這個交易,然而交易所真的需要去廣播這個交易嗎?不需要的,交易所只需要在自2的資料庫里,將A的賬戶余額-0.5BTC ,將B的賬戶額+0.5BTC.這-步,只是交易所自己維護的資訊在更新,沒有上鏈,所以這個操作是off chain的,最后,當A、B從交易所取現時,交易所將他們線上賬戶的位元幣轉給他們自己的此特幣地址時(AB自己擁有私鑰的地址) ,這個操作才會重新onchain, 與on-chain相比off-chain交易可以很快,但是由于交易資料放到交易所的資料庫里了,所以安全隱私又打了點折扣,不過本文只探討原理,對利弊就不做過多評論了,
分叉/Fork
在區塊鏈中,由礦工挖出區塊并將其鏈接到主鏈上,一般來講同一時間內只產生-個區塊,如果發生同-時間內有兩個區塊同時被生成的情況,就會在全網中出現兩個長度相同、區塊里的交易資訊相同但礦工簽名不同或者交易排序不同的區塊鏈,這樣的情況叫做分叉,
軟分叉/Soft Fork
指在區塊鏈或去中心化網路中向前兼容的分叉,向前兼容意味著,當新共識規則發布后,在去中心化架構中的節點不定要升級到新的共識規則因為軟分叉的新規則仍舊符合老的規則,所以未升級的節點仍舊能接受新的規則,當新共識規則發布后,沒有升級的節點會因為不知道新共識規則下,而生產不合法的區塊,進而產生臨時性分叉,對于軟分叉,運行舊版本軟體就好比出門坐地鐵,而運行新版本就像是坐飛機,在地鐵站安檢的時候(8版本) ,拿著打火機,可以進站,可以上車,按照日常規程,基本沒人攔你,而在機場安檢時(新版本) ,你的打火機只能丟棄了,換句話說,有些在地鐵上能做的事情,在飛機上就不能做(舊版本支持的事情,新版本不支持),反過來看,因為坐飛機的安檢更為嚴格,所以如果你滿足了坐飛機的要求,坐地鐵自然沒有任何問題(新版本支持的事情, 1舊版本也支持),
硬分叉Hard Fork
指在區塊鏈或去中心化網路中不向前兼容的分叉,區塊鏈發生永久性分歧,在新共識規則發布后,部分沒有升級的節點無法驗證已經升級的節點生產的區塊,通常硬分叉就會發生,硬分叉對數字貨幣使用的技術進行永久更改,這種變化使得所有的新資料塊與原來的塊不同,舊版本不會接受新版本創建的區塊,要實作硬分叉所有用戶都需要切換到新版本協議上,如果新的硬分叉失敗,所有的用戶將回到原始資料塊,對于硬分叉,我們也可以用”地鐵和飛機”形象化,硬分叉中的舊版本軟體就好比開地鐵,而新版本則是開飛機,顯然,能開地鐵,不代表你能開飛機(舊版本支持,新版本則不支持) ;反過來即使你有飛機駕駛證,也不能拿著它直接坐進地鐵駕駛室里把車開走(新版本沒問題,舊版本卻不支持),
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/399626.html
標籤:區塊鏈
