礦工和挖礦的需求是什麼?
比特幣被設計為在兩次區塊探勘之間的平均持續時間為 10 分鐘。這是由難度屬性和雜湊鍵複雜性維護的。但是採礦需要大量的電力,而且它也是一個手動過程。
為什麼它不是每 10 分鐘自動創建一個塊?
現在比特幣有 10kb(不確定)用於池的優先交易。讓我們通過相同的功能決定優先級,並用交易填充我們的塊。
使用者只需將交易發送到池中,不會斷電,並且是自動化的。塊仍將具有它的雜湊碼,並且將保持所有不變性。只是礦工不需要找到它。假設我這樣編碼比特幣:每個新塊 1. 5 分鐘。2. 一次只能從一個公鑰進行一次交易。它將停止雙花,並且不需要POW,並且在5分鐘內,變化將反映在連接節點上。
為什麼不使用這些方法?有什麼缺點??
比特幣的核心概念之一是它有一個去中心化的交易賬本(比特幣區塊鏈)。這意味著網路中的每個(完整)節點都擁有該賬本的副本(與 VISA 不同,例如只有一個中心化方擁有交易賬本的副本)。
當必須將新交易添加到區塊鏈時,這會導致問題。比特幣網路中的節點需要就區塊鏈的新狀態達成一致(或**達成共識)。問題歸結為“接下來我們將把哪個交易塊添加到我們的區塊鏈中?” .
現在,假設所有完整節點都有您提議的軟體常式,上面寫著*“我將創建一個包含過去 10 分鐘所有交易的新塊”*。
結果將是不同的節點將有不同的區塊鏈。
交易不能立即在整個比特幣網路中傳播。因此,對於某些節點,給定的交易可能會在 10 分鐘的時間範圍內,但到達其他更遠的節點時會晚。
節點現在存在分歧,不確定哪個區塊鍊是網路的真正區塊鏈。
所以為了防止這種情況,需要一種共識算法,它允許網路中的所有節點就下一個要添加的塊達成一致,所以只有一個版本的真相。一個節點必須提出要添加的下一個塊,而其他節點需要能夠輕鬆驗證該塊是否有效。
PoW 只是共識算法的一個例子,它確實會消耗大量能量。存在其他更節能的共識算法,例如 PoS(Proof-of-Stake)、PoC(Proof-of-Capacity)……
但如果沒有其中一種算法,就無法保持一個相同的去中心化區塊鏈。