從技術上講,區塊鏈是一種鏈表或鏈塊,而鏈塊是一組有序的交易。每個交易都有一個交易ID,并且由所有者進行數字簽名。所有的交易都是廣播的,所以每個人都可以保留區塊鏈的副本。他們運行著一種共識機制,同意下一個區塊加入區塊鏈。區塊鏈也常被稱為分布式賬本。在一個公開的或無許可的區塊鏈中,任何人都可以寫信給區塊鏈,任何人都可以從區塊鏈中閱讀。在私有或許可的區塊鏈中,只有被識別的參與者被允許閱讀和書寫。
區塊鏈的關鍵優勢
區塊鏈允許不認識彼此的實體在不需要任何中介或中央權威的情況下就數據庫的狀態達成一致。換句話說,它可以在陌生人之間建立信任。沒有一個實體可以將網絡關閉或審查部分內容。
區塊鏈的關鍵優勢在于,它是不可變的,而且它能夠在沒有中央權威的基礎上取得各方之間的信任。
區塊鏈可以幫助的解決方案的類型
區塊鏈POCs被用于資產跟蹤、支付和結算、智能合同、交易、投票、共享記錄、數字令牌、索賠、出處和忠誠/獎勵方案。
企業案例
根據Gartner的數據,在2017年,有82%的區塊鏈使用案例發生在金融行業,但2018年的用例數量有所增加,只有46%與金融服務相關。區塊鏈實驗正在進行的其他大型垂直領域包括交通、零售、公用事業、制造業、保險、醫療保健和政府。
最大的用例是運輸和政府的資產跟蹤;公用事業、衛生保健和保險方面的記錄;零售的出處;以及證券交易。
何時使用區塊鏈
由于圍繞區塊鏈的大肆宣傳,我們越來越多地看到,它被用于更好或更簡單的方法的情況,比如具有應用程序邏輯的數據庫。
Brian Scriber最近在IEEE軟件第4號的論文中給出了一個很好的框架來評估一個區塊鏈是否適用于給定的情況。
在這篇論文和框架的基礎上,我們開發了以下10個問題的簡化清單,在他們開始使用區塊鏈來解決特定需求之前,我們應該問:
1. 建議用例是否需要不變性?不變性是指生態系統中的參與者不能改變歷史記錄的保證。如果不需要不變性,就有一些更簡單的方法來確保其他屬性(例如這些數據并沒有從原來的形式改變)。
2. 你是否需要刪除區塊鏈中的記錄或改正錯誤?區塊鏈是附加的,所以他們不允許這樣做。例如,GDPR擁有“被遺忘權”,這可能使在區塊鏈上存儲歐盟公民的個人數據變得富有挑戰性。
3. 是否涉及多個實體,或者您試圖解決一個組織內部的問題?由于信任已經存在于一個組織中,區塊鏈可能是多余的,而簡單的解決方案就足夠了。
4. 如果涉及多個獨立實體,那么這些實體是否相互信任呢?區塊鏈消除了不同實體之間的信任需求。如果這種信任已經存在,那么區塊鏈可能是多余的。
5. 你是否需要區塊鏈提供的透明度,所有參與者都可以看到這個鏈(即使單個交易可能是匿名的)?您是否已經使用外部控制(如第三方托管或公證服務)來驗證或審計事務,如果是,這對您來說足夠了嗎?如果你現有的控制措施足夠滿足你的需求,你可能不需要區塊鏈。
6. 了解交易中涉及的人員或系統是否能夠確保交易不能被偽造或被破壞,這一點很重要嗎?當你想知道交易參與者的身份時,區塊鏈是有用的(例如,哪個醫生開了這種藥)。或者,如果想要匿名,你仍然希望能夠阻止X做一個交易,讓它看起來像Y做的那樣。如果這對你來說不重要,那么就不需要使用區塊鏈。
7. 分發系統有多重要?集中式系統能滿足您的需要嗎?分發是非常昂貴的,所以不要使用它,除非您真正需要分發帶來的好處,例如節點故障時的系統可靠性、少數壞參與者行為的豁免,以及通過讓多個參與者確認事務并達成共識而實現的安全性和完整性。
8. 什么是性能要求,區塊鏈可以滿足我的需求?區塊鏈的計算成本很高,而且每秒只能支持有限數量的交易——確保你知道你的需求是什么,并將其與區塊鏈所支持的內容進行比較。
9. 有限資源的受限設備是否需要作為區塊鏈中的節點參與?如果是這樣,檢查并確保他們能夠處理由區塊鏈施加的計算負擔。
10. 在被設計的應用程序和區塊鏈之間是否有良好的架構匹配?如果這款應用在本質上是非事務性的,那么它如何能夠適應區塊鏈的交易模式呢?如果不同的實體在過去直接相互作用,那么系統中是否會有摩擦變成一個每個人都與分布式賬本進行交互的模型?
結論
區塊鏈可以解決重要的問題,但是一定要問自己這10個問題,這樣你就可以把它們的使用限制在不存在簡單解決方案的情況下。