應用商店
錢包

區塊鏈技術術語指南:最令人困惑的七大加密詞彙

Alexey BondarevOct, 02 2024 11:03
區塊鏈技術術語指南:最令人困惑的七大加密詞彙

即使是資深用戶,有時都會對某些加密術語感到一頭霧水。有時人家隨口提到 blobs 或拜占庭容錯,你都只能附和點頭。比特幣行業以創新見稱,但同時亦孕育了一套複雜術語,連業內專家有時也會被考起。今日就一併澄清這些問題。

本文將七個區塊鏈世界中最複雜、最常被誤解的詞語逐一拆解,詳細介紹其真正意思、用途及對數碼貨幣未來的影響。

拜占庭容錯:區塊鏈安全的基石

不少加密貨幣愛好者都曾聽過「拜占庭容錯」這個詞,然而 99.9% 卻很難準確解釋其涵義。

即使有些人研究過比特幣的誕生背景,知道中本聰用「挖礦」正正為了解決拜占庭容錯問題,也可能未必明白何謂拜占庭容錯。

一般我們會覺得這和「挖礦」有直接關係嗎?其實不完全是。

拜占庭容錯(Byzantine Fault Tolerance,BFT)這個名詞來源於電腦科學理論上的「拜占庭將軍問題」。1982 年,Leslie Lamport、Robert Shostak 及 Marshall Pease 首次提出了這個問題,描述在一個分布式系統中,當部分成員是不可靠或故意破壞時,大家要如何取得共識的困難處。

在「拜占庭將軍問題」中,數名將軍需要聯手攻城,但他們只能靠信使通訊,某些將軍還可能是叛徒。重點在於如何設計一個機制,使忠誠的將軍能夠在有叛徒出現時依然能同步協調攻擊。

在區塊鏈語境下,「拜占庭容錯」是指即使系統部份組件失效或惡意行為,整個系統依然能正常運行並達至共識。這一點對維護分布式網絡的完整性和安全性至關重要。

中本聰透過工作量證明(Proof-of-work,PoW)協議,基本上為數碼貨幣解決了拜占庭將軍問題。PoW 機制下,礦工要競爭解決複雜數學題目,優勝者獲得新增區塊的權利。這種方式需要消耗大量運算資源,礦工有強烈的經濟誘因誠實行事。

PoW 能解決拜占庭問題的原因在於:

  1. 參與成本高,無論正面或壞分子都不易胡為。
  2. 題目難度確保沒有人能輕易壟斷網絡。
  3. 「最長鏈原則」提供了簡單方法以決定正確鏈版本。

不過,PoW 並非唯一解決方案。為提升能源效率,還有像委託權益證明(DPoS)、權益證明(PoS)等其他共識機制。

例如 Ethereum 從 PoW 轉型成 PoS 時,採用了名為 Gasper 的拜占庭容錯共識,俗稱「合併」。Gasper 結合 Casper FFG(PoS 最終性系統)與 LMD-GHOST 分叉選擇規則,大大降低能耗,依然達到強韌的拜占庭容錯特性。

了解 BFT 對於掌握區塊鏈系統穩健性與安全基礎至關重要。隨著技術發展,新的 BFT 解決方案不斷湧現,左右著分布式系統的未來方向。

Crypto terms you need to know

Nonce:密碼學中的關鍵拼圖

Nonce 可說是區塊鏈世界的「亂碼」。開個玩笑,雖然很多人聽過這個詞,感覺它是一串保安用的密碼,但其實開發者和礦工最清楚它的重要性。某程度上確實如此。

Nonce 看似簡單,在區塊鏈技術(尤其比特幣等 PoW 系統)卻是舉足輕重。Nonce 是 “number only used once” 的縮寫,意指「只用一次的數字」——這在挖礦時是保證和驗證交易的核心元素。

在比特幣挖礦過程中,Nonce 是位於區塊標頭(block header)內的 32-bit(4 字節)欄位。礦工會不斷調整此數字,力求產生一個低於網絡難度目標的區塊 Hash。

挖礦步驟如下:礦工先組合一批尚未確認的交易,

然後組成區塊標頭,當中包含以下數據:

  • 協議版本號
  • 前一區塊的哈希值
  • Merkle root(代表所有交易的哈希)
  • 時間戳
  • 難度目標
  • Nonce(初始為 0)

礦工會用 SHA-256 算法計算區塊頭的哈希值,若產生的哈希低於難度門檻,則區塊順利「開採」並可廣播至全網。若未達標,礦工會遞增 Nonce 再重試。

如此不斷變更 Nonce 並重算 Hash,直至找到合乎要求的 Hash 或 2^32(約 40 億)種組合試盡都未中時,才會考慮變更其他區塊頭元素(如時間戳)重新開始。

Nonce 具有多重重要功能:

網絡可透過要求特定 Nonce,調校挖礦難度,令平均區塊時間保持約 10 分鐘,不受網絡總算力波動影響。

Nonce 是礦工需要投入實際計算資源的變數,展示了礦工親自「做功」的證據。

因為找出合適 Nonce 需不斷嘗試,極難預測,可以阻止惡意人員輕易控制區塊鏈——若要長期勝過誠實礦工,攻擊方需控制全網逾一半算力。

Nonce 讓所有礦工公平競爭,哪位能找到正確區塊純粹憑計算能力和運氣。

此外,雖然 PoW 系統中的 Nonce 運作最廣為人知,但它在其他應用場景也有類似用法。例如 Ethereum 交易中,用 Nonce 保證每筆交易只會被處理一次,並按正確順序排列。

隨著區塊鏈技術發展,Nonce 的功能或會有所轉變。例如 PoS 系統沒有 PoW 式的 Nonce 和挖礦步驟,但利用一次性、不重複的隨機數以確保安全及公平,這個基本思想依然重要。

Rollups:優化 Layer-2 交易效率

若你身處 DeFi 世界,chances 是你聽過 rollups 這個詞,而且多多少少知道這概念與 Layer-1 區塊鏈之上的 Layer-2 方案有關。

沒錯,不過其實它內裡內容更加豐富。

當區塊鏈(如 Ethereum)面對交易「塞車」及手續費高昂難題時,rollups 成為提升交易承載量及降低成本的重要方案。Rollups 屬於 Layer-2 擴容技術,在鏈下(Layer-2)執行交易,但最終交易數據會上載及存證於主網(Layer-1)。

簡單來說,rollup 就是將大量交易「打包」成一個批次,再送往主鏈,這樣能大幅減少主鏈處理數據的負擔,自然提升鏈的吞吐量。

Rollup 主要分為兩大類:

極速 rollup(Optimistic Rollup):默認所有交易無誤,遇有異議時才用欺詐檢證。其特色為:

  • 執行成本和速度較 ZK-rollup 優勝,尤其適合一般性計算。
  • 兼容 EVM,容易移植現有以太坊應用程式。
  • 設有一週質疑期,期間任何人皆可對結果提出質疑。主要例子是 Arbitrum 和 Optimism。

零知識 rollup(ZK-rollup):為所有打包交易生成加密證明(validity proof), 實時於鏈上驗證。其重點有:

  • 更快達到最終性(finality),安全性高。
  • 理論上可承載比 Optimistic Rollup 更大規模的流量;但複雜度高,實現難度較大。
  • 例如 StarkNet、zkSync。

Rollup 帶來多項益處:

  • 將大部分運算移離主鏈,網絡每秒交易數(TPS)顯著提升。
  • 用戶交易手續費減輕,因主鏈處理資料量減少。
  • 只要關鍵數據仍儲存於主鏈,Rollup 也能繼承主鏈的安全性。
  • 特別是 ZK-rollup,可以大幅加快交易確認速度。

但 Rollup 也面臨技術挑戰:

  • 使用複雜,尤其 ZK-rollup 難度高。
  • Rollup 營運者權限較重,可能導致某程度的中心化風險。
  • 極速 rollup 的用戶在提現時或需等待質疑期完結,會有延誤體驗。

隨著區塊鏈生態演化,rollup 將會是 Layer-2 擴容不可或缺的一部分。像 Ethereum 2.0 這類項目已將 rollup 作為未來發展重心,可見其技術地位愈趨重要。

Blobs: The Data Chunks Reshaping Ethereum

Blobs are now a thing in the Ethereum universe. 而好多用家其實都唔係好明咩係 blobs。結果呢個字就變咗你知又唔係,唔知又唔敢問,總之無乜好時機去真係了解啲技術細節。

咁不如我哋一齊搞清楚佢啦。

特別係同即將到嚟既 Dencun 升級有關——即係 Deneb 同 Cancun 升級嘅結合——「blobs」(即 Binary Large Objects)係 Ethereum 擴展路線圖上面一個重大突破。

想明 blobs,就要睇下 Ethereum 點樣管理數據,以及佢點樣走向更高的可擴展性。

簡單嚟講,喺 Ethereum 嘅情境入面,blob 指嘅係存放喺 execution layer(即智能合約運行個層)以外、大量嘅數據,但仍然係 Ethereum 生態一部分。佢嘅設計天生係過渡性質,數據只會喺網絡上面保持大約 18 至 25 日,之後就會被刪除。

Blobs 主要特點包括:

  1. 大小:每個 blob 可以大到 128KB,遠超一般 Ethereum 交易會包嘅數據量。
  2. 目標:設計出嚟主要幫助 layer-2 解決方案(特別係 rollups),用更平嘅方法喺 Ethereum 主網度提交數據。
  3. 驗證:雖然 blobs 唔會喺 Ethereum Virtual Machine(EVM)處理,但佢哋嘅完整性會用一種叫 KZG commitments 嘅加密技術驗證。
  4. 暫存性:唔同傳統區塊鏈數據會永久保存,blobs 嘅設計宗旨係短暫存在,咁可以減輕長遠儲存需求。

Blobs 其實同「proto-danksharding」呢個概念息息相關,係 Ethereum 走向完整 sharding 中間嘅過渡階段(陣間會再詳細講)。個名係嚟自呢個提案嘅 Protolambda 同 Dankrad Feist,proto-danksharding 帶嚟一款創新交易類型(EIP-4844),可以插入 blobs。

Proto-danksharding 底下 blobs 嘅運作大約係咁:

  1. Layer-2 解決方案(例如 rollups)生成交易數據。
  2. 準備好啲數據,整成 blob。
  3. 將 blob 附加喺 Ethereum 主網嘅特殊交易上面。
  4. Validators 同節點會用 KZG commitments 驗證 blobs(但唔使處理晒成個 blob 入面全部內容)。
  5. Blob 數據會短時間保留,任何人都可以喺需要時重建 layer-2 狀態。
  6. 過咗 18-25 日,blob 數據會被清除,但個 commitment 會永遠留返喺鏈上。

Blobs 帶嚟以下幾大好處:

  1. 減低成本:因為 rollups 可以用更有效率嘅方式喺 Ethereum 貼數據,blob 交易大大減低 layer-2 用戶嘅手續費。
  2. 提升可擴展性:一個 Ethereum 區塊可以包埋更多數據,但唔會加重網絡計算壓力。
  3. 提高數據可用性:雖然 blob 數據係暫存,但夠 layer-2 極需數據重建或 challenge period(比如 optimistic rollups)期間攞資料。
  4. 為 Sharding 做準備:Proto-danksharding 就係 full sharding 嘅試水溫,等生態可以慢慢適應新一代數據管理模式。

不過 blobs 亦帶嚟唔少難題:

  1. 網絡寬頻同儲存需求提升:節點要處理嘅數據多咗,雖然只係暫時。
  2. 複雜度提高:多咗一類新交易同數據結構,令 Ethereum 協議本身變複雜。
  3. 潛在去中心化壓力:資源需求增多,可能令一般人做 full node 難咗。

Blobs 連同 proto-danksharding,係平衡擴展性、去中心化同安全性嘅關鍵一步,配合 Ethereum 向 2.0 進發。Blobs 為可擴展 Ethereum 生態鋪路,尤其對而家愈來愈重 layer-2 嘅業界特別有用。

Crypto terms you need to know

Proto-danksharding:Ethereum 擴展性嘅墊腳石

上面提過 proto-danksharding。不如而家特登深入啲講。

呢個係 Ethereum 擴展策略入面一個重大轉折點,有時會俾人叫做 EIP-4844(Ethereum Improvement Proposal 4844)。目的係為 roll-ups 同其他 layer-2 方案大幅減低數據成本。提案人 Protolambda 同 Dankrad Feist,一手推動 proto-danksharding 作為朝向真正 sharding 嘅中間站。

想明 proto-danksharding,首先要識 sharding。

Sharding 即係將數據庫分割成多個小塊(shards),區塊鏈就會被拆細成更易管理嘅單位。每個 shard 都可以 Parallel 冇阻存取同處理交易,理論上令網絡容量大增。但要落實 full sharding 其實好複雜,整個 Ethereum 協議要大改。

Proto-danksharding 引入幾個重要新意念:

  1. Blob-carrying 交易:一種新交易類型,可以帶住大量同 execution layer 分離嘅數據(即 blobs)。
  2. Data Availability Sampling:節點可以唔洗下載成個 blob,都照樣確認數據可用性。
  3. KZG Commitments:一種加密方法,用來對 blob 內容做精簡驗證。
  4. 暫存數據:Blob 數據成個網絡只保留 18-25 日,之後可以刪,但 commitment 永遠喺鏈上。

實際上 proto-danksharding 嘅運作:

  1. Layer-2 方案(rollups)生成交易數據。
  2. 將資料整成 blobs(即 binary large objects)。
  3. Blobs 附加喺 Ethereum 主網度嘅特殊交易。
  4. Validators 同節點利用 KZG commitments 驗證 blobs,無需處理晒全部 blob 數據。
  5. Blob 數據會有一段短暫時間可用,方便需要時重建 layer-2 狀態。
  6. 保留期完咗,blob 數據會被清除,不過 data commitment 會永遠留喺鏈上。

Proto-danksharding 有多個主要優點:

  1. 減低成本:用 blobs 幫 rollups 喺 Ethereum 貼數據,好大機會令 layer-2 用戶手續費減低 10 至 100 倍。
  2. 提升可擴展性:每個區塊可以裝更多數據,但唔會加重網絡計算壓力。有機會令 Ethereum 數據處理能力提升至 100x。
  3. 增強數據可用性:即使 blob 數據係短暫,但能確保 layer-2 數據 challenge period 或需要重建嘅用家都攞到。
  4. 平滑協議升級:Proto-danksharding 令 Ethereum 生態可逐步適應新數據管理模式,為未來完整 sharding 打好基礎。

不過,要實行 proto-danksharding 都有唔少挑戰:

  1. 增添複雜性:新交易類型同數據結構令 Ethereum 協議變得更複雜。
  2. 節點負荷要求:節點即使係暫時都要應付更多數據,要用嘅硬件可能會升級。
  3. 潛在去中心化壓力:資源要求提升,令大家多野做 full node,有機會帶嚟新一輪中心化傾向。
  4. 生態適應力:Layer-2 同其他工具都要更新,先能完全發揮 proto-danksharding 優勢。

Proto-danksharding 喺 Ethereum 發展路上係個好關鍵位置:一方面滿足可擴展性需求,另一方面平衡複雜度同協議改進。有咗更高效數據可用性層面,Ethereum 擴展未來會走得更遠。

分布式驗證者技術(DVT):提升 Proof-of-Stake 安全性

自從 2022 年 Merge 之後,Ethereum 宣布由 Proof-of-Work 轉用 Proof-of-Stake,validator 技術就成為圈內重點話題。

不過,好多人都唔係真係清楚呢種技術點玩。

循證安全性同去中心化,就要靠分布式驗證者技術(Distributed Validator Technology, DVT)。特別喺 Ethereum 2.0 呢類網絡,DVT 令驗證者角色喺 proof-of-stake 系統出現大變革。

DVT 嘅基本理念係:一個驗證者可以由多個節點共同操作,將驗證工作同風險分攤多幾個人,唔似以前只有一個組織包攬晒所有 validation 任務。

DVT 嘅基本元件包括:

  1. 驗證者客戶端(Validator Client):負責提交區塊/證明區塊嘅軟件。
  2. 分布式密鑰生成(Distributed Key Generation, DKG):一種加密協議,讓多方一齊產生共用私鑰。
  3. 閾值簽名(Threshold Signatures):只要夠數(閾值)參與者就可以集體簽署訊息,創造有效簽名。

DVT 運作大約如下:

  1. 一班營運者組隊成立一個分布式驗證者。
  2. 佢哋利用 DKG 產生一把共用 validator 鍵,每個人持有部分私鑰。
  3. 驗證者要行動(如提交/證明區塊)時,要有夠數營運者合力簽署相關訊息。
  4. 結果產生出嚟嘅簽名,對整個網絡嚟講同普通 validator 無分別,完美兼容。

DVT 有幾個主要優點:

  1. 提升安全性:分散 validator 私鑰畀多個營運者,大大減低...Here is the translated content in zh-Hant-HK, in the requested format (skipping translation for markdown links):

單點失效問題大大降低。即使其中一位營運者遭到入侵或離線,驗證者仍然可以繼續運作。

  1. 提高運作時間:有多個營運者參與下,驗證者能夠隨時執行其職責的機會大幅提升,從而有可能賺取更高回報和改善網絡效能。

  2. 去中心化:DVT 令網絡更去中心化,因為讓較小型營運者都能一齊參與驗證,而毋須獨力承擔運行驗證者的全部風險與責任。

  3. 懲罰保護:在權益證明(proof-of-stake)系統中,驗證者如出現不當行為會被扣減(slashing)。DVT 透過要求多個營運者就行動取得共識,有助減少無意中被懲罰的情況。

然而,DVT 同時帶來某些挑戰:

  1. 複雜性:實現 DVT 需要先進的加密協議及多方協作,令驗證者的操作更複雜。

  2. 延遲:因多位營運者需協調,可能令驗證者行動出現延遲,雖則合理實施可減低影響。

  3. 信任假設:雖然 DVT 可減少單點故障,但亦引入營運者之間需互信的要求。

  4. 法規考量:DVT 的分佈式特性或會在某些司法管轄區引發合規與責任的問題。

隨著權益證明網絡發展,DVT 很可能變得更關鍵,以維護網絡安全與去中心化。雖然各類實作仍在開發或初期部署階段,以太坊 2.0 等項目正積極研究將 DVT 納入其中。

DVT 的採用,將對權益證明網絡架構產生深遠影響,促使發展兼顧安全、去中心化與可及性的全新驗證者池及委託類型。

動態重分片:自適應區塊鏈分割

最後,來講講動態重分片。呢個概念基於 sharding(分片),但加入了一層彈性,等網絡能夠即時因應情況變化作出調整,為區塊鏈擴展性帶嚟創新方法。

有啲區塊鏈愛好者甚至稱之為「分片的聖杯」,因為呢項技術有望解決區塊鏈設計中一個持續存在的難題:喺網絡容量同資源運用之間取得平衡。聽落好複雜,係咪?

要明白動態重分片,首先要了解分片(sharding)的基本原理:

Sharding 原本是資料庫的分割技術,應用到區塊鏈上,就是將區塊鏈拆解成更細、更易管理的分片。每個分片可以同步儲存數據、獨立處理交易,理論上有限提升網絡容量。

動態重分片進一步發展,讓網絡可以按住實際運作情況,靈活調整分片數目同配置。

這種彈性方法帶來唔同好處:

網絡可以在需求高漲時開多幾個分片,閒時又可以合併冷門分片,確保善用網絡資源。

當網絡使用量上升,動態重分片可以讓區塊鏈無需進行 hard fork 或重大協議更新之下自行擴容。動態分配數據與交易,亦令網絡效能更穩定。

萬一遇到分片故障或使用爆升,動態重分片亦可以即時應變。

動態重分片通常涉及幾個核心組件:

監控系統:持續分析如交易量、分片利用率和節點效能等網絡數據。 決策引擎:根據預設算法,甚至用機器學習,判斷幾時及點樣重分片。 協調協議:確保全網節點一致認同新的分片安排,同時一致執行重分片流程。 安全遷移:分片合併或拆分時,安全地轉移相關數據與狀態資訊。

以下係一個動態重分片應用流程簡介:

  1. 監控系統發現某分片長期運作近乎飽和。
  2. 決策引擎判斷要將該分片一拆為二,平衡負載。
  3. 協調協議啓動重分片流程,統一通知所有節點準備改動。
  4. 網絡有序地創建新分片、遷移數據並更新路由資訊。
  5. 完成後,網絡有多一個分片應付更大負載。

雖然動態重分片帶來新機遇,但技術上挑戰都唔少:

設計一套可以安全高效地實時重分片的區塊鏈系統極為複雜,需要高度的共識及協調機制。跨分片數據流動時,確保所有相關狀態準確、易於查閱,亦是個大難題。

交易跨多個分片時,難度會因分片安排而提高。重分片過程本身亦要能防範網絡操作時被有心人攻擊利用。重分片的監控同決策步驟亦會為網絡帶來額外計算負擔。

即使如此,不同區塊鏈項目都積極研發動態重分片技術。例如 Near Protocol 就已在主網推行一種動態重分片,令分片數量能跟住需求變動。

隨住區塊鏈技術發展,動態重分片大有潛力助力打造具規模又高彈性的網絡,推動分佈應用程式與服務大眾化。

免責聲明及風險提示: 本文資訊僅供教育與參考之用,並基於作者意見,並不構成金融、投資、法律或稅務建議。 加密貨幣資產具高度波動性並伴隨高風險,可能導致投資大幅虧損或全部損失,並非適合所有投資者。 文章內容僅代表作者觀點,不代表 Yellow、創辦人或管理層立場。 投資前請務必自行徹底研究(D.Y.O.R.),並諮詢持牌金融專業人士。