HitChain是面向開發(fā)者的開放型DAO(Distributed Autonomous Organization,分布式共治組織),致力于構建一個全球化的開發(fā)者共有、共建、共享的共治社區(qū)。HitChain代表全球開發(fā)者的全體利益,將逐步解決現(xiàn)有開源生態(tài)在開發(fā)者產(chǎn)出物安全管理、能力合理度量、價值及時兌現(xiàn)、創(chuàng)意快速實現(xiàn)、權利真實擁有等挑戰(zhàn)性問題。
這里特別說明,參與HitChain的所有用戶都稱為開發(fā)者。雖然HitChain中活躍的用戶可能是技術產(chǎn)品的消費者,也有可能是企業(yè)和組織,他們也被視為廣義上的開發(fā)者。
HitChain借鑒開源理念,基于區(qū)塊鏈技術打造一個去中心化的全球開源軟件新型社區(qū)系統(tǒng)。HitChain社區(qū)通過獨創(chuàng)的核心底層架構技術和共識機制,由全世界開發(fā)者參與并完全共治, 社區(qū)收益完全由社區(qū)用戶共享。開發(fā)者勞動產(chǎn)出物通過HitChain開源托管協(xié)議Hit協(xié)議實現(xiàn)共享存儲、瀏覽、分發(fā)、有償使用等。在HitChain社區(qū),每個開發(fā)者的勞動成果都將得到尊重并自動版權保護,通過代幣得到量化回報。
HitChain創(chuàng)始團隊均來自于知名技術公司和開源組織如Redhat、Google、Apache基金、Linux基金及開源中國等核心專家,具備很強的相關技術實力和運營能力。
HitChain技術方案
1.系統(tǒng)整體架構
為真正建立一個由開發(fā)者共建、被開發(fā)者共有、為開發(fā)者服務的社區(qū),推動開發(fā)者價值實現(xiàn),需要解決幾個關鍵問題,即開發(fā)者自由高效的代碼開發(fā)、開發(fā)者代碼知識產(chǎn)權的保護與傳播,以及開發(fā)者代碼價值的度量與交換。
我們創(chuàng)新地提出了一種將Git協(xié)議與區(qū)塊鏈技術相結合的新型代碼管理協(xié)議和代碼知識產(chǎn)權鑒定方法,并構建了一整套的解決方案,實現(xiàn)去中心化的代碼托管、產(chǎn)權保護、價值度量、服務交付等,從而建立一個透明、公正的全球開源應用新生態(tài)HitChain。
HitChain整體架構主要包括運行基礎設施、社區(qū)基礎設施、HitChain開發(fā)與交易社區(qū)以及HitChain應用軟件等四個核心組成部分:
① HitChain貨幣基礎設施
主要基于區(qū)塊鏈技術,為HitChain生態(tài)系統(tǒng)的運行提供基礎技術支撐,包括分類賬本、隔離見證、共識機制以及智能合約等。
② HitChain社區(qū)基礎設施
主要為HitChain社區(qū)運轉提供關鍵服務,包括Hit新型代碼管理協(xié)議、分布式代碼存儲管理服務、代碼鑒權服務等。
③ HitChain社區(qū)
包括HitChain開發(fā)社區(qū)(HitChain Development Community)和HitChain交易社(HitChain Trading Community)基于社區(qū)基礎設施構建和形成,主要包括軟件開發(fā)社區(qū)和代碼交易社區(qū)。其中,軟件開發(fā)社區(qū)主要由開源開發(fā)者構成,借助Hit協(xié)議和分布式存儲技術等完成代碼的開發(fā)等;代碼交易社區(qū)則由代碼開發(fā)者和代碼消費者構成,借助代碼鑒權等服務進行代碼的交易。
④ HitChain應用軟件
為開發(fā)者和消費者等提供HitChain生態(tài)接入服務,用戶通過HitChain應用軟件來使用HitChain提供的各項服務,完成代碼開發(fā)、交易等。
2.HitChain區(qū)塊鏈基礎網(wǎng)絡
HitChain是基于區(qū)塊鏈技術構建的面向軟件代碼開發(fā)、存儲、交易活動等的區(qū)塊鏈,并為HitChain社區(qū)提供運行時支撐。其中,主要涉及的組件和服務包括混合式分片鏈、分類賬本、共識機制、隔離見證與智能合約等。
1)混合鏈基礎架構
以比特幣、以太坊為代表的區(qū)塊鏈架構,在不斷的應用實踐中,暴露出了交易規(guī)模、響應速度和擴展性等一系列問題,這些問題阻礙著區(qū)塊鏈商業(yè)應用的發(fā)展與落地。HitChain作為領先的區(qū)塊鏈網(wǎng)絡應用,需要建立在能使用高頻次并發(fā)、億萬級用戶、零延遲響應的區(qū)塊鏈公有鏈上, 結合Hit分布式托管系統(tǒng),才能真正地歸于成功。
HitChain采用混合式分片鏈技術,將公有鏈、分片鏈(邏輯子鏈)有機結合,形成混合鏈基礎架構。HitChain將少量的交易記錄核心內容保存于公鏈賬本,而對于見證歷史、共識記錄、業(yè)務流轉等交易,保存于獨立的空間中。
通過標準化跨鏈通信協(xié)議,HitChain在公有鏈和分片鏈中無縫對接交換數(shù)據(jù)。哈希索引技術可有效保證同一數(shù)據(jù)的有效映射和唯一權威性。
2)DAG高并發(fā)異步執(zhí)行
HitChain的雙鏈并行技術,既可以保證主鏈的不可篡改性,又可以在分片鏈中保留靈活性。主鏈仍然采用傳統(tǒng)的鏈式結構,而分片鏈中則使用DAG數(shù)據(jù)結構。
DAG是一種全稱為有向無環(huán)圖的數(shù)據(jù)結構,由集合的頂點和有向邊構成,每條邊連接不同的頂點,這樣頂點之間不存在循環(huán)返回的可能。DAG結構,可以通過見證人機制快速找到相關的最短路徑,提高交易確認效率和并發(fā)性能,分片鏈中只要符合主鏈規(guī)則定義的交易,都可以快速視為有效交易。
除區(qū)塊鏈自身的特點去中心化、分布式賬本、不可篡改之外,DAG區(qū)塊鏈技術不但可以支持高并發(fā),結合雙層共識機制,使用工作量證明共識算法,還能夠防止“雙花”問題。
3)分類動態(tài)賬本技術
分布式賬本是區(qū)塊鏈的核心組成部分,對保證交易等各類信息的完整性和透明性具有關鍵作用。針對代碼開發(fā)等的特殊性,圍繞軟件代碼、存儲空間的共享與交易等活動,HitChain設計了相應的分類賬本,來實現(xiàn)對各類信息的存儲和管理,主要包括交易賬本、存儲集群管理賬本以及代碼管理賬本三類。
交易賬本
主要用于記錄代碼交易、存儲空間交易等涉及交易的相關過程信息,交易賬本是不可篡改的。
存儲集群管理賬本
用于記錄存儲共享信息、集群節(jié)點分布信息、存儲空間大小信息等涉及存儲集群變更的數(shù)據(jù)。
代碼管理賬本
將與Hit協(xié)議相結合,用于記錄代碼的版本變更、代碼提交、代碼下載評論等信息。
4)雙共識并行機制
目前的區(qū)塊鏈應用為了保證分布式賬本的一致性,主要采用以下5類共識機制,即POW、POS、DPOS、POOL、PBFT。其中,最具有代表性的方法是POW(Proof of Work) 和POS(Proof of Stake),此方法也是目前業(yè)界價值最高的比特幣和以太坊所采用的方式。然而,這些方法的局限性也較為明顯。例如,POW需要消耗大量的計算資源才能達成一次共識形成一個新的區(qū)塊,而這些計算任務以解決密碼學的復雜問題為基礎,難以形成有效的計算力。
HitChain的混合鏈技術支持在公有鏈和分片鏈中采用雙共識機制(PBFT和DPOS雙共識)。
在公有鏈中,我們采用PBFT共識算法(Practical Byzantine Fault Tolerance,實用拜占庭容錯算法)維持基礎交易的合法性。PBFT共識在保證靈活性和安全性的前提下提供了(N-1)/3的容錯性,它使用加密技術防止欺騙攻擊和重播攻擊,以及檢測被破壞的消息。每一個Message包含了抗量子公鑰簽名(RSA256算法)、消息驗證編碼(MAC)、無碰撞哈希函數(shù)生成的消息摘要(Mes- sage Digest)等。
在分片鏈中可采用DPOS共識機制,對Hit代碼托管業(yè)務層面進行驗證管理。DPOS通過投票選舉中的超級節(jié)點完成交易確認,可大幅提高交易并發(fā)規(guī)模和確認速度,通過簽名的可信任記賬人證明,消除了交易等待驗證的時間消耗,便于HitChain用戶快速提交業(yè)務請求,同時降低了交易手續(xù)費成本。
5)隔離見證與智能合約
為了保證HitChain的高效運轉和安全穩(wěn)定,HitChain底層將采用輕量級的隔離式數(shù)據(jù)結構, 將對不同類型的數(shù)據(jù)進行隔離存儲、按需傳輸。此結構具體可分為:記錄結余進出的“交易狀態(tài)”、交易合法的“見證狀態(tài)”,以及其他HitChain中為了擴展區(qū)塊鏈功能的特定狀態(tài)信息。在傳遞過程中,不同角色的用戶根據(jù)自身的關注點可以個性化選擇所需要的數(shù)據(jù)信息進行操作。因此,相對于完整的區(qū)塊設計結構而言,隔離模式可大大減輕區(qū)塊鏈中存儲和通信的負載壓力。
在隔離數(shù)據(jù)結構的基礎上,HitChain的業(yè)務場景將采用智能合約的方式支持各類用戶自定義的業(yè)務活動(如項目開發(fā)眾包、代碼版權交易等)和社區(qū)公共活動(如政策公投、創(chuàng)意征集等)。智能合約與隔離模式的有機結合,可以保證每一項信息或數(shù)據(jù)以按需、按權的方式進行交換傳遞,從而提高HitChain運轉的高效性和可信性。
3.基于Hit協(xié)議的分布式托管系統(tǒng)
1)IPFS去中心化存儲結構
傳統(tǒng)的中心化存儲方式存在訪問性能瓶頸、存儲可靠性與安全性低等一系列問題,HitChain將基于區(qū)塊鏈技術構建一個完全去中心化的、可自由共享存儲的高效分布式存儲系統(tǒng)。基于該系統(tǒng),平臺用戶可以共享空閑存儲空間并獲取激勵,HitChain則基于用戶共享的存儲空間構建一個去中心化存儲網(wǎng)絡,并為軟件代碼托管提供高效、可靠、廉價的存儲服務。
存儲空間的共享與交易
用戶通過安裝HitChain應用程序接入HitChain社區(qū),就可以自由的將個人電腦、手機等具有存儲驅動設備上的空閑存儲共享到HitChain分布式存儲網(wǎng)絡,成為該網(wǎng)絡的一個存儲節(jié)點。HitChain 則將用戶共享的存儲空間相關信息包括共享時間戳、存儲節(jié)點標示、存儲空間大小等記入存儲管理賬本。
當該存儲空間被其他用戶使用時,將根據(jù)相應的評估規(guī)則及共識算法,對共享存儲進行計價并給予共享者相應的Hit幣激勵。
IPFS星際文件系統(tǒng)
去中心化分布式共享存儲網(wǎng)絡各個存儲節(jié)點存在存儲空間差異大、在線狀態(tài)高度動態(tài)化等特點,為保證高效存儲利用、高可靠數(shù)據(jù)存儲與高效率數(shù)據(jù)訪問等,我們采用IPFS星際文件系統(tǒng)對存儲文件進行切割、映射和冗余存儲。
IPFS作為下一代文件網(wǎng)絡傳輸系統(tǒng),通過內容可尋址的對等超媒體分發(fā)協(xié)議,在IPFS網(wǎng)絡中的節(jié)點構成一個分布式文件系統(tǒng),可以讓網(wǎng)絡更快、更安全、更開放。全部的IPFS對象形成了一個被稱作Merkle DAG的加密認證數(shù)據(jù)結構。
IPFS對象是一個含有兩個域的數(shù)據(jù)結構:
? Data —— 非結構的二進制數(shù)據(jù),小于256kB
? Links —— 一個Link數(shù)據(jù)結構的數(shù)組。IPFS對象通過他們鏈接到其他對象
它具有如下特性:基于內容尋址,而非域名尋址;提供文件的歷史版本控制器,可以讓多節(jié)點使用保存不同版本的文件;IPFS上運行的區(qū)塊鏈,可存儲Hit文件的哈希表;代幣成為協(xié)調資源分享者和使用者的重要體系。
IPFS對數(shù)據(jù)文件進行存儲時,需要將大文件切分為多個小的分塊,對其內容進行映射,并將對應Hash值通過多備份方式存儲到多個不同的存儲節(jié)點。各分塊間關系及其存儲位置等則被記錄到存儲管理賬本中。數(shù)據(jù)文件進行下載時,則基于存儲管理賬本查找文件分塊及存儲位置信息,從多個服務器并行下載不同的分塊,然后根據(jù)分塊間關聯(lián)信息聚合和重構整體文件。
存儲位置選擇策略
在進行文件分塊存儲時,需要首先確定各個分塊的備份數(shù)量及存儲位置,以達到最佳的存儲和訪問效率。
數(shù)據(jù)文件的存儲基本策略是全局視圖下的最優(yōu)存儲。通過圍繞存儲請求發(fā)起者節(jié)點及后續(xù)文件分塊存儲節(jié)點構建拓撲結構,設計采用多備份情況下多輪迭代的存儲方式。在對初始分塊進行存儲時,我們采用最快到達原則,保證初始數(shù)據(jù)的快速存儲;在后續(xù)備份塊的傳播存儲過程中,選擇了最遠距離原則,保證后續(xù)文件下載時能夠在全局視角達到最快下載速率。
2)Hit分布式托管協(xié)議
Git是目前在軟件開發(fā)領域使用最為廣泛的代碼管理協(xié)議,圍繞Git協(xié)議構建的社交化開發(fā)社區(qū)有GitHub、GitLab及開源中國等。盡管如此,Git協(xié)議在實際使用過程中仍然存在較多問題,主要包括大文件的存儲支持及大規(guī)模小文件的訪問速度等。
HitChain的目標是結合區(qū)塊鏈技術,針對Git協(xié)議面臨的問題和局限,構建一個全新的面向軟件代碼管理的Hit協(xié)議,實現(xiàn)對大規(guī)模、分布式軟件代碼的高效管理,并在全網(wǎng)提供服務。
默克爾樹文件處理是一種有效的碎片化文件管理方案。在Hit協(xié)議下載之前,先從可信的源獲得文件的Merkle樹根,一旦獲得了樹根,就可以從其他不可信的源獲取Merkle Tree。通過可信的樹根來檢查接受到的Merkle Tree。如果Merkle Tree是損壞的或者虛假的,就從其他源獲得另一個Merkle Tree,直到獲得一個與可信樹根匹配的Merkle Tree。
代碼文件存儲優(yōu)化
在軟件開發(fā)過程中,項目相關文件中既有部分大的二進制文件,包括Jar包、設計資源庫、SDK等,也有數(shù)量規(guī)模非常大的代碼小文件。對大文件進行高效存儲與清理、對大量小文件進行快速讀取等,是Hit協(xié)議需要解決問題。
Hit協(xié)議將結合區(qū)塊鏈技術構建代碼管理賬本,并基于分布式存儲平臺來解決高效大文件存儲與小文件訪問的問題。對于大文件的存儲,將首先使用文件分割算法對大文件進行高效分割,切分為合適大小的文件分塊,提交給分布式存儲平臺進行存儲。
對于大量小文件的讀取優(yōu)化,則借助分布式存儲平臺多副本、多分塊存儲的特點,通過多存儲節(jié)點的并行多路下載,從而提升查詢和檢出效率。
多粒度檢出控制
Git協(xié)議的檢出主要針對整個版本庫特定版本進行,難以按需實現(xiàn)對不同粒度代碼文件基于相應權限進行檢出控制,對代碼的檢出效率較低。
Hit協(xié)議以單個文件為最小檢出單位,然后基于文件之間的關系對不同層級文件夾進行重構,實現(xiàn)對多粒度檢出的控制。在提交存儲時,將代碼文件之間的關系以及文件權限信息記入代碼管理賬本。在進行檢出時,獲取文件存儲位置及各文件之間的關系,然后將符合權限要求的各文件下載到本地,并根據(jù)文件間關系重構文件夾層級結構,實現(xiàn)多粒度按權限的文件檢出。
代碼文件可靠傳輸
HitChain基于分布式存儲平臺對代碼數(shù)據(jù)進行存儲管理,并對數(shù)據(jù)文件進行切割分塊存儲,可以有效實現(xiàn)代碼文件的數(shù)據(jù)可靠傳輸,包括斷點續(xù)傳等。
在代碼文件下載傳輸過程發(fā)生斷網(wǎng)并在恢復網(wǎng)絡后重新進行下載時,并不需要對整個數(shù)據(jù)文件進行重新下載,而僅需對部分未完整下載的文件分塊進行下載。
具體過程為,首先對尚未下載到本地的文件分塊開啟下載;然后,對已下載到本地的文件分塊,通過對文件內容映射的哈希值的比較,判斷該文件分塊是否已經(jīng)完整下載,如果哈希值與預先存儲的哈希值完全一樣,則表明該分塊已完整下載,不需重新下載。否則,則表明該分塊未完整下載,則清除該分塊并重新下載。在所有分塊完成下載后,即可進行重構形成完整的數(shù)據(jù)文件。
3)跨鏈鑒權機制
HitChain的跨鏈鑒權機制包括用戶身份管理和版權鑒定兩個部分,以實現(xiàn)持續(xù)有效的代碼版權保護。
用戶身份管理
HitChain社區(qū)中每一位開發(fā)者都對應著唯一的身份信息,該身份信息用于標識開發(fā)者在社區(qū)內的各項活動,如社區(qū)討論、交易、代碼創(chuàng)作等。同時開發(fā)者身份信息也是用來保護開發(fā)者勞動成果原創(chuàng)性、侵權追責的重要依據(jù)。
在HitChain社區(qū)中,開發(fā)者還可以圍繞相同的興趣或者目標組成小團體。在創(chuàng)建團體時,開發(fā)者通過協(xié)商的方式指定團體管理模式以及成員間的權益設定,如新成員是否需要通過邀請才能加入、團體成員間是否可以無償共享資源等。
版權鑒定
HitChain為開發(fā)者提交的每一份原創(chuàng)代碼生成ECC(Encrypt Copyright Certificate,加密版權認證)證書作為它的唯一標記。ECC證書是證明代碼原創(chuàng)性的重要依據(jù),能夠有效地支持代碼鑒權、授權、維權等服務。
ECC證書主要包含以下幾部分的信息:
代碼摘要:利用散列函數(shù),為每一段代碼生成固定長度的哈希值作為代碼摘要。散列函數(shù)是輸入敏感的,它保證了不同的代碼片段很難映射為相同的代碼摘要值。
代碼作者:用戶在HitChain社區(qū)的賬戶信息作為代碼作者的身份標識,如果該段代碼還曾使用過其它開發(fā)者的代碼,那么這里還會包含被使用代碼的ECC證書。
創(chuàng)建時間:使用UTC加蓋時間戳確保了版權登記時間的權威性和可靠性,先創(chuàng)作代碼并先申請的開發(fā)者優(yōu)先對代碼獲取版權。
授權協(xié)議:代碼所有者可以指定其它開發(fā)者以何種方式使用他的原創(chuàng)代碼,包括授權策略和具體實施方式等內容。雙方在智能合約的作用下自動履行授權協(xié)議,協(xié)議履行的效果被社區(qū)所接受和保證。
ECC證書存放在區(qū)塊鏈上,保證了公開性、不可篡改性和可追溯性。任何開發(fā)者可以隨時查看HitChain社區(qū)的代碼版權信息,但其所包含的內容卻很難被人惡意篡改。根據(jù)其所包含的代碼授權記錄,開發(fā)者還可以還原出完整的代碼使用(授權)路徑。
在生成ECC證書前,為判定代碼的原創(chuàng)性,首先利用自然語言處理和抽象語法樹等技術對給定代碼進行分析建模,抽取出其所包含的功能性代碼(如文件讀取、數(shù)據(jù)庫訪問)和業(yè)務邏輯代碼,然后從多粒度和多維度計算它與已登記的版權代碼進行比對,從而判斷提交的代碼是否存在侵權問題。
4)MTSM-多任務并行狀態(tài)機
MTSM(Mutlti-Task State Machine)狀態(tài)機是HitChain獨創(chuàng)的多任務并行狀態(tài)機技術,其核心任務是保證開源托管代碼系統(tǒng)的代碼安全性、鑒權業(yè)務、Hit網(wǎng)絡安全等。
MTSM狀態(tài)機與HitChain系統(tǒng)并行運行,實時監(jiān)測HitChain系統(tǒng)安全,確保Hit網(wǎng)絡數(shù)據(jù)輸入輸出的合法性,同時提供源代碼鑒權服務。
MTSM狀態(tài)機重點完成以下三個任務:
① 代碼安全管理
MTSM狀態(tài)機采用一種基于肯定選擇分類算法的惡意代碼檢測機制,在后臺實時對Hit碎片化代碼庫進行監(jiān)測。代碼輸入后,MTSM狀態(tài)機將樣本文件轉換成十六進制格式,提取樣本文件的所有n-gram,計算具有最大信息增益的N個n-gram詞頻,然后做歸一化處理。該算法優(yōu)化了分類器訓練過程,優(yōu)于樸素貝葉斯、貝葉斯網(wǎng)絡算法,支持向量機和決策樹等算法。
② 代碼鑒權服務
MTSM狀態(tài)機后臺實時對鏈上代碼庫進行動態(tài)掃描,采用BP神經(jīng)網(wǎng)絡等多種技術,檢測鏈上代碼相似性。其中,人工神經(jīng)網(wǎng)絡試模擬人腦生物過程的人工智能技術,由大量的神經(jīng)元互連形成復雜的非線性系統(tǒng)。誤差反向傳播(BP)神經(jīng)網(wǎng)絡可以實現(xiàn)輸入和輸出間的任意非線性映射,其核心思想是將代碼轉化為神經(jīng)智能網(wǎng)絡的輸入向量,通過神經(jīng)網(wǎng)絡學習,檢測代碼之間的相似性,從而給出代碼鑒權建議或結論。
③ 安全沙箱監(jiān)測
通過延時檢測鏈上賬本、鏈上節(jié)點等交易記錄,MTSM狀態(tài)機可有效分析出節(jié)點的活躍特征和交易記錄的合法性。當發(fā)現(xiàn)交易記錄非法或惡意節(jié)點時,MTSM狀態(tài)機將采用事件驅動機制,通知共識節(jié)點,及時剔除非法賬本(不可篡改的賬本除外),并將惡意欺騙節(jié)點從網(wǎng)絡中刪除。
4.HitChain應用生態(tài)
HitChain提供了一系列的客戶端應用軟件。利用這些軟件開發(fā)者可以方便快捷地參與社區(qū)的各項活動。
在線社區(qū)平臺
HitChain在線社區(qū)平臺支持開展社區(qū)運營、資產(chǎn)管理及用戶交互等三類活動。各自的具體內涵如下:
社區(qū)運營
公開透明的社區(qū)運行模式是HitChain成長為一個健康的共治社區(qū)的重要前提,社區(qū)委員會的各項事務均在線上公開進行,開發(fā)者對社區(qū)發(fā)展的建議和意見也都集中反饋到在線平臺上。
資產(chǎn)管理
開發(fā)者可以在在線平臺管理個人資產(chǎn),還可以與其他開發(fā)者進行線上交易。開發(fā)者在使用資產(chǎn)服務前需要進行個人身份驗證,以保證資產(chǎn)賬號的真實性和安全性。安全可靠的資產(chǎn)服務是保障開發(fā)者合法權益的必要措施。
用戶交互
基于在線平臺,開發(fā)者之間可以開展一系列的交互活動,例如以眾籌和懸賞的形式為某個新穎的創(chuàng)意和復雜的任務提供解決方案。豐富多樣的用戶交互渠道是充分發(fā)揮和利用開發(fā)者才智、發(fā)掘隱藏在社區(qū)中群體力量的有效手段。
資源共享管理系統(tǒng)
HitChain把開發(fā)者的源代碼通過分布式的形式存儲在全網(wǎng),有貢獻意愿的開發(fā)者通過資源共享管理系統(tǒng)來共享自己本地的計算資源。該系統(tǒng)提供圖形化和命令行形式的管理工具,輔助開發(fā)者完成對共享空間和共享帶寬的設置和調整。
Hit客戶端
開發(fā)者使用Hit客戶端在本地完成代碼提交、同步等操作。Hit基于Git開發(fā),是對Git協(xié)議的一次重大改善和升級,它被設計為是Git用戶友好的協(xié)議,兼容Git協(xié)議的絕大部分命令,Git用戶幾乎可以零成本地采用Hit。
HitChain經(jīng)濟模型
HitChain是基于開源理念和區(qū)塊鏈技術的全球開源應用新生態(tài)社區(qū),其核心本質是圍繞開源應用重新定義的商業(yè)價值體系。這個商業(yè)體系,由開發(fā)者共建、為開發(fā)者服務、使開發(fā)者謀利。
HitChain的經(jīng)濟模型包含3個主要的價值流轉場景,具體包括:個人閑置計算資源的共享獎勵、社區(qū)貢獻的公共獎勵、以及社區(qū)成員勞動成果的自由交易。前兩個為代幣的主要來源, 最后一個是代幣流通的主要場景。
1.代幣體系
HitChain基本商業(yè)元素包括開發(fā)者、礦工、開源軟件用戶、開源應用服務機構、證書頒發(fā)機構、第三方組件開發(fā)者、商業(yè)合作伙伴等。在HitChain系統(tǒng)中,所有社區(qū)參與者都是去中心化的共治者:參與者在既定的商業(yè)規(guī)則下共同完成開源托管相關業(yè)務活動,包括代碼托管、版權管理、眾籌打賞、付費使用、基礎網(wǎng)絡建設、資源共享等。
執(zhí)行商業(yè)模型、完成價值流轉的核心協(xié)調機制就是代幣。為實現(xiàn)這一目的,HitChain采用雙代幣機制,代幣分為基礎代幣和燃料代幣兩種:
基礎代幣用于以下場景:
C2C Trade 支付HitChain常規(guī)業(yè)務的費用,包括代碼托管、版權管理、眾籌打賞、付費使用等。
Copyright Authorization HitChain用戶之間的價值流轉。
Voting Right 社區(qū)選舉投票權的權重核定與價值持有憑證。
Code Hosting 當燃料代幣不足以支付時,自動轉換成燃料代幣,以確保完成交易。
燃料代幣用于以下場景:
Mining Reward 礦工提供基礎網(wǎng)絡設施和交易確認的賬本費用。
Resource Reward P2P資源共享者所收取的資源費用。
Advanced Service 用戶使用高級功能所需要支付的服務費用。
需要注明:HitChain公鏈上線前,為保證HitChain社區(qū)積極、高效地運營實施,社區(qū)實行基于以太坊的ERC20代幣HIT,以激勵社區(qū)健康成長。HIT代幣作為一種社區(qū)貢獻的價值持有憑證,用于前期社區(qū)獎勵、運營推廣,主鏈上線后,按照一比一的比率兌換為HitChain原生代幣。
2.價值核定與分配
HitChain完全采取去中心化的分布式計算模式,因此在計算資源基礎設施建設方面,社區(qū)鼓勵參與者積極貢獻出自己空閑的存儲空間、CPU或GPU計算資源和網(wǎng)絡帶寬,從而從根本上保障HitChain社區(qū)整體的信息處理能力。為了激勵參與者積極主動進行貢獻,社區(qū)將采取“貢獻早收益早,貢獻大收益大”的基本原則對資源貢獻者進行獎勵。從時間維度上來說,如果社區(qū)參與者早期貢獻出一定量的計算資源,則其獲得的獎勵會比之后貢獻出同等價值資源的參與者要高。同樣的,從貢獻價值來說,貢獻的資源稀缺性越高、資源量越大,則其獲得的獎勵越高。具體來說, 社區(qū)對于某個貢獻者在時刻t(如2018年1月1日,12:00)貢獻的某類資源r(如300M存儲空間) 對應的獎勵公式如下所示:
3.社區(qū)貢獻激勵機制
HitChain要打造一個徹底由開發(fā)者締造、被開發(fā)者共有、為開發(fā)者謀利的共治社區(qū)。因此,社區(qū)要對積極參與社區(qū)公共建設的參與者給予獎勵。目前,我們考慮兩種最直接的社區(qū)公共貢獻行為:貢獻出優(yōu)質的軟件項目和提出了促進社區(qū)良性發(fā)展的意見。
1)內容共治激勵
如同優(yōu)秀的書籍對于圖書市場、優(yōu)秀車型對于汽車市場一樣,優(yōu)秀的軟件項目是開發(fā)者社區(qū)良性生態(tài)構建與發(fā)展的基石。直至今日,無論是商業(yè)軟件還是開源軟件都已經(jīng)數(shù)十年的蓬勃發(fā)展,軟件市場已經(jīng)積累了種類繁多但質量又參差不齊的軟件項目。因此,HitChain為了吸引優(yōu)質的軟件項目遷移到本社區(qū),將根據(jù)項目的優(yōu)質程度發(fā)放獎勵貨幣,其中軟件項目的優(yōu)質程度可從傳播效應、項目成熟度、代碼健康度、開發(fā)團隊健康度,和項目發(fā)展趨勢五個維度進行度量,具體指標如下表所示。
由于高維空間難以清晰的展示和表達上述思想,在此我們以2個維度,即代碼健康度和團隊健康度為例,簡述本方法的基本思想。假設我們有兩個被遷移項目P1和P2,其中P1的代碼健康度為0.6、團隊健康度為0.3,項目P2的代碼健康度為0.4、團隊健康度為0.6。在二維空間中,P1可表示為坐標(0.6,0.3),P2坐標為(0.4,0.6),繪圖表示后P1的曲面函數(shù)可表示成藍色平面,P2為紅色平面。因此,P1的優(yōu)質程度為藍色平面面積對應的值,P2項目的優(yōu)質程度為紅色平面面積對應的值,即兩個項目的優(yōu)質程度被量化表示。同理,在高維空間中,項目的優(yōu)質程度可對應曲面下體積,具體量化數(shù)值可通過雙重積分求得。
2)社區(qū)建設激勵
HitChain的理念是充分的民主化,鼓勵社區(qū)中的每一位成員對社區(qū)的現(xiàn)狀和發(fā)展提出自己的意見和建議。意見征集模式類似于頭腦風暴,針對社區(qū)中某一問題,社區(qū)全體成員行動起來一起貢獻意見和建議。作為對參與用戶的回報,社區(qū)會拿出一部分電子貨幣作為獎勵。獎勵的發(fā)放采取后驗模型,即社區(qū)會對征集到的意見進行多輪篩選,通過對可行性和有效性等多維度的考量,選出少數(shù)幾個較優(yōu)秀的方案進行實現(xiàn)并評估;最后,社區(qū)根據(jù)各種解決方案的實際效果進行獎勵,具體的獎勵計算公式如下:
其中T是對意見的實際應用效果的觀察窗口期,比如社區(qū)可以規(guī)定以一個月或三個月為周期對其效果進行觀察。E是在第T個觀察窗口期內,被觀察意見所取得的效益值。比如,由于某位開發(fā)者的意見,社區(qū)改進了平臺服務而吸引了越來越多的用戶。假如社區(qū)指定每增加一個新用戶就獎勵意見提供者一個單位的代幣,那么一個觀察期內新增加的用戶數(shù)就是該意見在該觀察期內所取得的總效益值。該方案會使得那些能夠產(chǎn)生長期效益的意見持續(xù)性地獲得越來越豐厚的獎勵。
4.開發(fā)者價值模型
開發(fā)者可以在HitChain進行開發(fā)者之間的C2C交易,常見的交易場景如下:
代碼交易
當開發(fā)者想要使用他人的原創(chuàng)代碼時,他需要接受該代碼的授權協(xié)議并付費。代碼授權方式可以有兩種可選策略:(a)先付費后使用(Pay Then Use, PTU),代碼使用者一次性付清代碼所有者要求的Hit幣。付費完成之后,代碼使用者后續(xù)對該段代碼的任何應用和盈利等行為與代碼所有者不再有任何關聯(lián)。(b)先盈利后付費(Earn Then Pay, ETP),代碼的直接使用行為不收取Hit幣,只有在使用者利用該段代碼獲利后,代碼使用者才需要向代碼所有者支付Hit幣。
任務懸賞
開發(fā)者遇到難題時,可以在社區(qū)發(fā)布懸賞任務并提供獎勵金,提供解決方案的用戶依據(jù)規(guī)則獲取相應的獎勵金。獎勵金的發(fā)放有兩種方式:(a)只有一名勝出者獲得全部獎勵金,該勝出者由任務發(fā)布者從提供正確解決方案的用戶中選擇,或者由平臺通過多維指標評判出最優(yōu)解決方案;(b)由全部提供正確解決方案的用戶所共享,每位用戶獲得的獎勵金份額為:M?2n,其中M是總的獎勵金額,n表示該用戶是第幾個提供解決方案的,即越快提供正確解決方案,獲得的獎勵金額就越多。
咨詢服務
開發(fā)者還可以通過向專家咨詢的途徑來解決自己的問題,具體的收費由被咨詢的專家指定。由于每個開發(fā)者的能力和收費標準都公開在社區(qū),開發(fā)者可以根據(jù)實際需求做出最經(jīng)濟的選擇。
資訊訂閱
開發(fā)者為保持對相關領域最新動態(tài)的持續(xù)關注,他可以訂閱領域內權威開發(fā)者或者活躍開發(fā)者的動態(tài),以第一時間獲取相關技術的發(fā)展趨勢和線上線下講座等信息。訂閱費用由被訂閱者指定可以采用月費、季費、年費的形式。
社交互動
基于社區(qū)平臺,開發(fā)者可以開展一系列的泛社交互動,在社交互動中開發(fā)者可以方便地進行各種形式的交易。如開發(fā)者在平臺直播寫代碼時,觀看者可以根據(jù)自己的喜好進行打賞,而打賞金額由打賞者隨意支付。
項目協(xié)同
HitChain提供一種去中心化的項目協(xié)同解決方案,便于開源項目在自治型環(huán)境中公平、透明地完成。任何達到一定信譽權重閾值的社區(qū)用戶,都可以成為項目發(fā)起人,召集社區(qū)開發(fā)者為其服務,通過代幣形式回饋任務開發(fā)者。
評論