老碼農眼中的區塊鏈

abel_cao發表於2018-10-16

版權宣告:本文為半吊子子全棧工匠(wireless_com,同公眾號)原創文章,未經允許不得轉載。 https://blog.csdn.net/wireless_com/article/details/83111619

大家可能已經聽說過比特幣、萊特幣、以太幣等等,以及它們作為一種新貨幣在市場上的潛力。 有趣的是,很多投資比特幣的人也提到了區塊鏈之類的東西。 顯然,這項技術是比特幣等其他東西的”基礎”。 就好像比特幣的概念還不夠混亂似的,區塊鏈計算顯然也可以”應用”到其他行業? 這是如何運作的呢?

通過首先了解區塊鏈計算是什麼,才能來開始使用區塊鏈的旅程。 

從本質上講,區塊鏈是一個平臺,旨在為一群人提供一種手段,以便在不需要集中系統的數字分類賬上建立”交易”,但同時仍然是安全和私密的,因為每個人都可以看到每個人計劃改變什麼,並且同意將交易合法化。

現實生活的基礎: 維基百科或百度百科

如果這個概念還是有點難以理解的話,試著把 blockchain 想象成維基百科或谷歌文件。

如果這個概念還是有點難以理解的話,試著把 區塊鏈想象成維基百科或百度百科。

使用區塊鏈,區塊鏈上的成員實際上可以寫入一個數字分類賬(鏈) ,同一個成員可以控制分類賬的更新和修改。 這與維基百科中的條目如何不完全來自”單一”出版商,因為沒有人真正”控制”所有可用的資訊。

  • 這是因為與”覆蓋”事務資料不同的是,分類賬中的每筆交易都被記錄下來。 類似地,在百度百科和 Wikipedia 上,每個頁面和文件的更改都會被記錄到系統中讓每個人都能看到。

  • 也許百度百科和維基百科與區塊鏈的唯一區別在於,百度百科和維基百科的使用者在訪問和修改頁面之前必須首先獲得管理員的許可。 而在區塊鏈中,每個人實際上都通過交易驗證獲得了這種”權威性”。

區塊鏈技術

也許區塊鏈如此吸引人,是因為它代表了一個全新的資訊註冊和釋出時代,從根本上消除了”集中”方便交易的必要性,這就是為什麼像尤塔實驗室這樣的公司投資於比特幣的原因。 有趣的是,區塊鏈並不是真正的”床新”,而是一個技術的組合,被證明是以各自的方式發揮作用。 當中本聰的比特幣被引入市場時,這個想法實際上具有潛力,它的原則也被應用到其他幾十種手段中,這就是為什麼我們現在有比特幣的原因。 所涉及的技術包括:

  • 區塊鏈內成員的 P2P 網路: 缺乏一個集中的權力機構來”控制”區塊鏈,從根本上將區塊鏈置於其成員的控制之下。 這實際上是非常有用的,因為沒有一個人”擁有”區塊鏈和它下面的一切 當你的區塊鏈是一個與其他行業相關的程式時,讓整個團隊控制鏈條是確保透明度和安全性的好方法

  • 區塊鏈程式設計本身,或者它工作的平臺: 當人們想要在區塊鏈中引入新的變化時,它實際上是在整個區塊鏈中引入一個新的交易。 這意味著,一旦批准,區塊鏈的所有成員將在他們自己的數字分類賬中看到這個”變化”。 這個塊環鏈的程式設計允許它是透明的,同時不能讓任何人操縱資料,因為需要”許可權”來新增交易

  • 用於驗證事務的私鑰加密技術: 在區塊鏈方面,交易實際上是經過驗證的,主要是因為信任。 當數字世界的各方必須建立關係時,數字信任現在已成為問題的一個組成部分,因為認證和授權被認為是阻礙區塊鏈效率的真正破壞者。 通過區塊鏈認證是由一個只有區塊鏈的使用者才能擁有的私鑰來表示,這使得他們能夠通過其真實性做廣泛的事情,例如廣播權交易或擁有足夠的數字貨幣。 使用穩定的加密系統,確保鏈條的成員在通過之前”批准”交易。 

當涉及到區塊鏈”關係”時,重要的是要記住,鏈條中的成員實際上有兩個金鑰——一把私鑰和一把公鑰。 這些方法建立一個數字”簽名”,因為它們的組合需要一定程度的認證努力,這反過來又在你的末端建立一個強大的所有權。 這些元素是如何相互作用的,使得區塊鏈發揮作用:

  • 分散式網路確保每個人都知道數字分類賬的情況。 “Validators”使用數學驗證來達成共識,即他們看到的是相同的交易請求,並且鏈條的成員貢獻處理能力來做到這一點。 這就像一組攝像機看到房間裡發生了什麼一樣。 當然,這也意味著網路的大小是網路安全的一部分。

  • 比特幣迅速流行起來,因為一個龐大的網路為比特幣的驗證提供了巨大的計算能力。 對於區塊鏈來說,當使用者A宣佈對其私鑰進行更改並將其鎖定到使用者B的公鑰,並將在系統中傳播。

  • 然後,區塊鏈使用一個特殊的協議開始驗證變化。 一個塊被廣播到網路中,並由相關資訊、時間戳和數字簽名組成。 對該塊的驗證是通過採礦來完成的,在這裡人們提供他們的計算機處理能力來驗證交易。 然而,人們並不是完全免費的。 開採的獎勵那些實際上積極參與採礦過程的人。 通過這個過程,每個成員的系統都記錄了區塊鏈的歷史。

去中心化 與 分散式

去中心化經常被視為區塊鏈的全部存在理由,但它也是可能被定義為最糟糕的詞之一。去中心化和傳統的分散式計算有什麼區別和聯絡呢?如圖1所示:

640?wx_fmt=png

圖1 中心化、去中心化和分散式

分散式手段並非所有交易的處理都在同一地點進行,而去中心化是指沒有一個實體控制所有的處理。 

去中心化的三種型別

去中心化涉及三個獨立的方面:

  • 架構的去中心化:一個系統是由多少物理計算機組成的? 這些計算機中有多少個可以容忍在任何一個時間內崩潰?

  • 策略的去中心化:有多少個人或組織最終控制了系統由其組成的計算機?

  • 邏輯上的去中心化:系統呈現和維護的介面和資料結構看起來更像是一個單一的整體物件,還是一個無定形的群? 一個簡單的啟發式的觀點是: 如果你把系統切成兩半,包括供應商和使用者,兩個部分都將繼續作為獨立的單位全面運作嗎?

區塊鏈在策略上是去中心化的(沒有人控制它們),而且在架構上的去中心化(沒有基礎設施中心點的故障) ,但它們在邏輯上是中心化的(有一個共同商定的狀態,系統的行為就像一臺電腦),如圖2所示:

640?wx_fmt=png

圖2 去中心化的三種型別

架構的中心化往往導致策略中心化,但不一定。 在計算機系統中,如果有一個線上社群使用一個集中的論壇來提供便利,但是如果有一個廣泛認可的社會契約,即如果論壇的擁有者存在惡意行為,那麼每個人都會轉移到另一個論壇(圍繞論壇的審查制度而形成的社群很可能在實踐中擁有這種財產)。邏輯中心化使得架構的去中心化更加困難,但並非不可能。在邏輯中心化的系統中,策略去中心化變得更加困難。

去中心化的三個原因

去中心化有哪些主要的優勢呢?主要有三個:

  • 容錯

  • 攻擊阻力

  • 合謀抵制

容錯

去中心化的系統不太可能意外地失敗,因為它們依賴於許多不太可能失敗的獨立元件。

對於容錯而言,有多個相互競爭的實現是至關重要的。關於協議升級背後技術考慮的知識必須民主化,以便使更多的人能夠感到舒適地參與研究討論,並批評明顯不利的議定書變更。核心開發人員和研究人員應該受僱於多個公司或組織。採礦演算法的設計應該儘量減少中心化的風險。

理想情況下,使用權益證明可以完全擺脫硬體中心化的風險(應該謹慎地對待由於證明利害關係而冒出的新風險)。需要注意的是,幼稚的容錯要求主要集中在架構去中心化上,但是一旦你開始思考社群的容錯性,那麼策略的去中心化也是很重要的。

攻擊阻力

去中心化系統被攻擊、破壞或操縱的成本更高,因為它們缺乏敏感的中心點,難以用比周圍系統的經濟規模低得多的成本進行攻擊。

首先,由於計算機硬體易於檢測、調節或攻擊,它強烈支援證明利害關係而不是工作證明,因為計算機硬體易於檢測、調節或攻擊,而硬幣可以更容易地隱藏(證明利害關係也有很強的攻擊阻力,因為其他原因)。 其次,這是一個有利於擁有廣泛分佈的開發團隊的觀點,包括地理分佈。 第三,它意味著在設計協商一致議定書時,需要考慮經濟模式和容錯模型。

合謀抵制

去中心化制度的參與者很難串通起來,以犧牲其他參與者為代價,以有利於他們的方式行事,而公司和政府的領導人則一直以自己受益的方式串通起來,但卻一直傷害不太協調的公民、顧客、僱員和一般公眾。

串通是很難定義的; 也許唯一真正有效的方法是簡單地說,串通是”我們不喜歡的協調”。 在現實生活中,有很多情況下,即使每個人之間有完美的協調是理想的,但是一個子群體能夠協調而其他人卻不能,這是危險的。

就區塊鏈協議而言,協商一致意見的安全性背後的數學和經濟推理往往主要依賴於不協調的選擇模型,或者假設遊戲由許多獨立做決定的小角色組成。 如果任何一個成員在工作證明系統中獲得超過三分之一的採礦能力,他們就可以通過自私的挖掘獲得鉅額利潤。 

許多社群,包括 Ethereum 的社群,常常因為擁有強大的社群精神和能夠迅速協調執行、釋出和啟用一個硬叉,以便在六天內解決協議中的拒絕服務問題。 但是,如何能夠促進和改善這種良好的協調,但同時又能防止”糟糕的協調”,這種協調包括礦工通過反覆協調51% 的攻擊來欺騙其他人?

回答這個問題有三種方法:

  • 不要費心去減少不想要的協調; 相反,嘗試建立可以抵制它的協議。

  • 試著找到一種快樂的媒介,使協議能夠進行足夠的協調來進化和前進,但是不足以使攻擊成為可能。

  • 努力區分有益的協調和有害的協調,使前者更容易,後者更難。

區塊鏈應用

任何人都可能會覺得,如果真的依賴這種新技術來滿足他們的需求,可能會讓任何人感到奇怪。然而,在其業務流程中,它實際上可能對許多行業中採用區塊鏈方法非常有幫助。 

“紙上得來終覺淺,絕知此事要躬行。” 這裡列舉了兩個老碼農自己有實際感知的兩個區塊鏈應用。

面向社交的區塊鏈TTC

在社交⽹絡中,每個⽤戶作為社交⽹絡中的節點,聚集度較⾼,通過社交分享機制進⼊⻔檻低,具有快速擴散、快速聚集的特性,很容易形成⽹絡效應。社交⽹絡的特性和去中⼼化的理念⼀致性很⾼,是區塊鏈技術極佳的應⽤場景。

作為當今主流前沿技術,區塊鏈技術快速應⽤到⾦融、保險等領域,但⽬前還沒有被⼴⼤⽤戶認可的基於區塊鏈的社交⽹絡。社交⽹絡對於⽤戶的進⼊⻔檻較低,⽤戶可以在不需要特別注意的情況下體會到區塊鏈的價值,是最有機會讓區塊鏈技術被⼴泛應⽤的領域。

640?wx_fmt=png

圖3 TTC區塊鏈的價值鏈

如圖3所示,這就是基於區塊鏈技術的社交⽹絡的未來場景。優質內容的創造者被平臺獎勵,⽤戶可以選擇觀看⼴告或參與第三⽅⼴告公司發起的活動,⼴告的獎勵將直接分給參與⽤戶。不同的社交DAPP(Decentralized APP)基於區塊鏈技術組成產品矩陣,為⽤戶提供多維度的產品體驗和價值。

TTC 協議

TTC協議是基於區塊鏈技術的社交⽹絡,旨在為全球⽤戶提供全新的社交體驗。TTC協議為TTC⽣態系統的成員建⽴標準貨幣體系和技術體系,以⽅便各個成員在良好有序運⾏的同時,能夠相互連線傳遞價值。TTC代幣是TTC協議中流通的貨幣,⽤來激勵TTC⽣態系統中的各⽅成員。

TTC協議總共包含如下⼏個層⾯:共識體系決定了TTC協議中的資訊如何記錄和同步,其上的DAPP為參與的社交⽤戶提供社交服務,⽤戶通過在DAPP內作出貢獻獲得來⾃TReE(TTC獎勵引擎)的TTC獎勵,並通過跨鏈技術在不同DAPP之間同步和轉移TTC,這構成了TTC協議的價值體系。

作為基於區塊鏈的社交⽹絡協議,交易速度是最重要的考量因素之⼀。在TTC協議中,記錄在區塊鏈上的交易不僅侷限於資產交易,也包括⾏為交易。在社交平臺⾥,每秒鐘的交易量可能達到上百次,因此吞吐量對於TTC協議是⾄關重要的。

共識機制是交易速度的核⼼,以⽐特幣為代表的PoW(Proof of Work)共識機制所能達到的交易速度有限,並且耗費⼤量算⼒。TTC協議採⽤多層BFT-DPoS作為共識機制模型。

DAPP鏈

基於社交⽹絡的平臺都有機會加⼊TTC⽣態系統,TTC⽣態系統中的社交平臺包括但不限於個⼈動態分享平臺、圖⽚及視訊分享平臺、直播平臺、社群論壇等等。

在TTC協議中,有⼀條TTC核⼼鏈和若⼲條DAPP鏈,每⼀個DAPP都有⼀條DAPP鏈。TTC核⼼鏈主要處理資產交易,DAPP鏈則處理DAPP的⾏為交易。資產和⾏為交易的分割,能提升TTC協議的效能,確保資產安全,⻓期來看能實現不同DAPP的獨⽴治理。TTC協議上 的交易記錄可以在TTC區塊瀏覽器上查到。

TTC協議採⽤跨鏈智慧合約實現不同鏈之間的資產轉移。初期我們主要關注同構鏈之間的跨鏈交易,後期將逐步擴充套件跨鏈的相容性,以實現異構鏈之間的跨鏈交易。 

使用者、錢包與代幣

⽤戶通過TTC錢包管理他們的TTC資產。通過單點登入(SSO),⽤戶可以使⽤⼀套賬戶系統管理所有DAPP獲得的資產,在TTC⽣態系統的不同社群之間互動。TTC錢包的主要功能如下: • 同步不同DAPP獲得的TTC資產 • 與其他⽤戶或交易所進⾏TTC資產轉移 • 進⾏超級節點投票,參與共識機制治理 TTC錢包是⽤戶同TTC協議之間互動的最簡潔有效的⽅式,構建起⽤戶和TTC⽣態系統之間的橋樑。

TTC代幣(TTC)是TTC協議的通⽤貨幣,⽤來激勵TTC⽣態系統中的各個成員。當前,TTC基於ERC-20代幣標準發⾏,⻓期將逐漸切換成TTC協議⾃⼰的獨⽴代幣。

TReE(TTC Reward Engine)是TTC協議中激勵為TTC⽣態系統作出貢獻的參與者的獎勵引擎,以天為單位發放給各參與⽅。在TTC協議中,有兩種型別的挖礦:共識挖礦和社交挖礦。作為針對社交⽹絡的區塊鏈協議,TTC協議將⼤部分獎勵分配給為平臺作出貢獻的社交挖礦者,即DAPP⽤戶。與傳統的挖礦機制不同,算⼒不再是⽤戶⽐拼的要素,真正為平臺作出貢獻的⽤戶得到了更多獎勵。

總體來說,建立優質內容、同優質內容互動以及維護社群環境的⽤戶將獲得獎勵。獎勵配置如圖4所示:

640?wx_fmt=png

圖4 TTC中的激勵配置

TTC的生態系統

TTC⽣生態系統中有很多成員,包括超級節點和投票⽤使用者、DAPP開發者、DAPP應用的使用者、第三⽅方開發者、⼴廣告商等等。圖5展示了TTC生態系統的成員和價值鏈。

640?wx_fmt=png

圖5 TTC區塊鏈的生態系統

關於TTC的具體技術實現,將來另行分析,具體參見:https://github.com/ttceco/gttc

一句話總結TTC

TTC協議是基於去中⼼心化和代幣激勵的新一代社交⽹網路協議,通過生態系統為使用者提供了更有價值且全新的社交體驗。

DxChain

人工智慧(AI)離不開大資料和機器學習,不幸的是,市場上沒有現成的解決方案提供去中心化的平行計算環境,來支援大資料分析和機器 學習。DxChain 通過將 Hadoop 整合到區塊鏈來填補這個空白。DxChain 是一個提供資料儲存,資料 交換,以及為系統中資料進行大資料計算的綜合平臺。

在功能上,整個系統被設計成一個平臺,在去中心化的資料儲存服務支援下,提供大資料分析和 機器學習相關的計算服務。資料庫查詢和商業智慧的任務在不由任何商業公司擁有的資料之上執行, 但這些資料可以在 DxChain 中進行交易和儲存。這個平臺將連線個人電腦,以及專門設計的礦機,以促進資料計算更加容易,並降低成本。

DxChain 提供了兩個基本功能:計算和儲存。目前,只有大公司才有能力執行大資料分析任務, 因為這些公司不僅可以負擔昂貴的硬體,而且也擁有大部分消費者資料。例如,谷歌擁有谷歌地圖用 戶的導航資料。如果谷歌地圖使用者可以找到一種方法來銷售他們的導航資料,那麼他們就會出於經濟 原因而這麼做。使用者不會擔心他們的隱私,因為這些資料已經被谷歌看到和使用。如果第三方可以銷 售導航資料,再加上其他商業資料,那麼廣告宣傳活動將更加準確和定製化。最重要的是,像谷歌, Facebook 這樣的大公司不能壟斷這些資料的使用。這將是去中心化的夢想。

DxChain的基礎架構

DxChain 的架構設計借鑑了 IPFS, Hadoop HDFS, GFS, FileCoin, IOTA, IoTeX, Plasma, TrueBit, morpheo和 Golem。根據經濟激勵的原則設計了整個系統,使礦工能夠最大限度地利用閒置的儲存資源,並以低成本和便利性促進去中心化的大資料計算。

圖6顯示了 DxChain 的高層次基礎架構。從圖中可以看出主鏈、儲存鏈和計算側鏈是如何協同工作的。

640?wx_fmt=png

圖6 DxChain 的基礎設施示意

三鏈結構具有兩個獨特屬性:

  1.  主鏈結構和側鏈結構, 

  2. 不可變主鏈和彈性側鏈。

屬性 1 根據功能對鏈進行拆分。屬性 2 解決區塊鏈的可伸縮性、吞吐量和延遲問題。主鏈負責維護交易,DxChain 的側鏈負責儲存和計算。這兩個側鏈功能是有時間限(time-bounded)的,因此區塊不需要無限期地儲存過期的資料。DxChain設計了一種鏈縮短演算法,它可以刪除未使用的資料,節省寶貴的區塊空間。

DxChain 的區塊鏈架構

在 DxChain 網路中,主鏈負責管理整體交易和兩個側鏈。資料側鏈(DSC)和計 算側鏈(CSC)通過 DxChain 智慧合約與主鏈通訊。此外,資料側鏈和計算側鏈可以通過三鏈合一的微服務相互操作,這些服務包括資料和訊息,如圖7所示:

640?wx_fmt=png

圖7 DxChain中的三鏈合一

主鏈和兩個側鏈執行不同的功能。儘管這些鏈是通過智慧合約和微服務相互連線的,但從物理上來說,這些鏈仍然是獨立和隔離的。即使側鏈斷裂,主鏈也完全不受影響。側鏈的損害完全侷限於自身。

主鏈使用相容以太坊的資料結構,這種結構由雜湊連結的區塊組成。區塊是相關元資訊的集合,也包括交易、狀態和收據相對應的組合資訊。這些區塊通過雜湊指標連線。

兩個側鏈的設計是為了解決資料儲存和計算的效率問題。我們擴充套件了區塊結構,將更多的資料存 儲在區塊中,並減少了整鏈載入的頻率。每個側鏈都有自己的共識方法,計算側鏈(CSC)使用可證 明資料計算(Provable Data Computation,PDC)和驗證博弈(verification game),資料側鏈 (DSC)使用時空證明(Proof of Spacetime,PoSt)。

圖 8說明 DxChain 跨鏈通訊協議,展示了跨全網交易的概況。 通過在主鏈、資料側鏈(DSC)和計算側鏈(CSC)之間跨整個系統的交易流,可以在高層次上審視通訊協議。

640?wx_fmt=png

圖8 DxChain的跨鏈通訊

關於主鏈、資料側鏈、計算側鏈以及資料安全與隱私的具體實現,將來另行擇文分析。

DxChain 賦能的生態系統

DxChain 區塊鏈支援多種機器學習和資料探勘演算法、資料儲存、音樂/視訊流和許多其他應用程式。來自不同行業的開發人員可以用不同的方式使用 DxChain,構建自己的機器學習Dapp,實現自動資料樣本收集和人工智慧模型:

  1. 定製的資料模型通過它的惡意軟體檢測Dapp定義資料收集格式,從而實現完全自動化的資料 收集。移動使用者可以定義智慧合約引數,比如將哪些樣本資料傳送到區塊鏈,以及使用者想要交 易的價格。每個裝置自動收集的可疑樣本資料也將被髮送到 DxChain 區塊鏈。

  2. DxChain 將資料塊儲存在每個區塊鏈礦工的磁碟上,每個礦工共享自己的網際網路頻寬。這樣可 以極大地減少資料儲存和網路流量成本。

  3. 去中心化的機器學習演算法每日進行訓練,在鏈中訓練Trust-look的人工智慧模型。這就像共 享經濟一樣,可以幾乎免費使用共享礦工未使用的 CPU 時間。

  4. 在區塊鏈中,不可變的加密資料保護使用者的資料儲存和服務,無需擔心資料洩露或隱私資料洩 露。

  5. 每個裝置使用者利用DxChain的智慧合約以信任的方式進行交易和交易資料。

DxChain 在物聯網(IoT) 上同樣有著廣泛的應用場景。DxChain 使用者可以直接在感測器每天生成的資料集上執行機器學習和資料分析,並生成可操作的商業智慧報告來指導他們業務的日常決策。圖9是一個智慧城市的示意:

640?wx_fmt=png

圖9 DxChain的智慧城市示意

智慧城市的感測器資料採集是通過啟用開發者的Dapp中相關的智慧合約自動化實現的。智慧合約基於周圍環境智慧控制各種智慧城市感測器的執行,如空調溫度動態控制,以節省電力。區塊鏈資料購買者可以利用裝置資料來開發機器學習模型來診斷裝置執行狀態,並預測裝置故 障並通知供應商提前安排維修服務。區塊鏈開發人員可以開發機器學習模型,通過生成電力消耗報告和預測用電高峰時間優化電力 排程模型來幫助 PGE 等電力公司。

一句話總結DxChain

DxChain是一種可伸縮的、私有的、可擴充套件的、用於大資料和機器學習的區塊鏈。

640?wx_fmt=jpeg

(此圖來自百度百科)

參考資料:

  • http://www.embedded-computing.com/iot/what-is-blockchain-computing

  • https://medium.com/@VitalikButerin/the-meaning-of-decentralization-a0c92b76a274

  • https://www.quora.com/Whats-the-difference-between-distributed-and-decentralized-in-Bitcoin-land

  • https://www.ttc.eco

  • https://dxchain.com/static/assets/docs/DxChain-白皮書中文版.pdf

 


相關文章