延時工作量證明(dPoW)是由科莫多(Komodo)計畫所設計的安全機制。基本上來說,它是工作量證明(PoW)共識演算法的修改版本,它利用比特幣區塊鏈的哈希算力來增強網路安全性。透過使用延時工作量證明(dPoW),Komodo開發人員不僅能夠保護自己的網絡,還能夠保護未來加入Komodo生態系統的任何第三方區塊鏈。實際上,dPoW可以用來保護任何使用UTXO模型開發的獨立區塊鏈專案。
以Komodo為例,dPoW安全機制使用Zcash程式碼庫開發並實現,透過利用比特幣的哈希算力,實現零知識隱私證明並提高網路安全性。
每隔十分鐘,Komodo系統會對區塊鏈網路執行快照。然後,將快照的結果寫入到比特幣網路上的區塊中。總的來說,這個過程創建了整個Komodo系統的備份,該系統的備份保存在比特幣區塊鏈中。
從技術層面說,Komodo社群選舉的公證節點透過在Komodo鏈上執行交易,將每個受dPoW保護的區塊鏈的區塊雜湊寫入Komodo分散式帳本中。透過呼叫OP_RETURN指令,公證節點將單一區塊雜湊儲存到Komodo鏈上。
公證節點選擇間隔十分鐘的快照執行時間的原因是為了確保整個網路認可該區塊的有效性。每個區塊鏈的網路仍然會對每個區塊達成共識。公證節點簡單地記錄來自先前挖掘的區塊雜湊值。
接著,公證節點將來自Komodo區塊鏈的雜湊寫入比特幣帳本中。該步驟也可以透過執行比特幣交易並使用OP_RETURN指令將資料寫入比特幣的區塊鏈中來完成。
在公證節點完成對比特幣區塊鏈網路的操作後,Komodo的公證節點就會將來自比特幣區塊鏈的區塊資料寫回每個受保護的鏈上。此時,網路將不會接受任何嘗試更改公證區塊(或在公證節點達成共識之前創建的任何區塊)的重組操作。
目前,dPoW是與比特幣一起被捆綁使用的,但它可以作為安全性工具被用在任何其他使用UTXO模型的區塊鏈中。
工作量證明(PoW)演算法的主要目標之一是維護網路安全,阻止諸如分散式阻斷服務攻擊(DDoS)之類的網路攻擊。簡而言之,PoW演算法是生產成本非常高的資料區塊,但是它很容易被驗證,並且是挖礦過程中的重要元素。
基於PoW的區塊鏈中的挖礦設計是非常苛刻的。礦工需要解答一道複雜的密碼學題目,進而挖到一個新的區塊。這個過程涉及了大量的計算工作,需要消耗非常昂貴的硬體和電力。挖礦的過程不僅可以保護網路免受外部攻擊,還可以驗證交易的合法性並產生新的數位貨幣(作為礦工解決難題的獎勵)。
因此,基於工作證明量的區塊鏈很安全的原因之一就是挖礦的過程會涉及非常高的資金投入。然而,需要注意的是,PoW區塊鏈的安全性與用於它們的算力(哈希)直接相關,這意味著小型區塊鏈網路不如大型區塊鏈網路安全。
與PoW不同,dPoW不用於在新區塊上達成共識,因此不被視為共識演算法。它是在PoW共識規則之外實施的安全機制。 DPoW使得經過公證的區塊不可能被重組,這意味著它使區塊鏈更加安全並且能夠抵抗51%攻擊。
實際上,每當一個區塊被公證後,dPoW就會“重新設定”區塊鏈的共識規則。例如,大多數PoW區塊鏈使用“最長鏈規則”。因此,每當區塊鏈網路確認區塊XXX和XX1已經被公證時,最長鏈規則就會從區塊XXX,XX2開始。網路將不再接受從區塊XXX,XX0或之前開始的鏈,即使它是最長的鏈。
延時工作量證明安全機制允許執行頻繁的備份,以確保在系統發生故障或被入侵後,可以快速恢復整個網路的資料。如果攻擊者想要成功造成持久的攻擊損害,那麼他也必須關閉比特幣網絡,破壞比特幣區塊鏈中備份的所有快照。
如果您想了解有關延時工作量證明的更多信息,請查看Komodo的區塊鏈安全服務頁面。