有兩個相互關聯的概念使比特幣交易變慢並需要10 分鐘才能完成。
第一個與共識機制有關,第二個與將新塊傳輸給網絡中的每個人所需的時間有關。
1. 共識機制
比特幣使用的共識機制被稱為工作量證明(PoW)。
為了將塊附加到鏈上,節點必須證明它已經完成了一些工作來解決數學問題。我們不會在本文中關注這個數學問題,因為有關於比特幣挖礦的文章,重要的是要理解它很難解決。
另一方面,每個節點解決方案都是獨一無二的,因為它取決於你為區塊選擇的交易。
之所以難以解決這個問題,是因為如果不是這樣,那麼不同節點會同時有許多解決方案,這會產生混亂。通過這種方式,將無法確定哪個塊是將添加到區塊鏈的塊。
而如果問題很難解決,那麼網絡中正確的區塊數量就會很少,從而更容易達成共識。
但是即使要解決的問題很困難,兩個節點同時達到解決方案的可能性很小。
當每個節點將其解決方案傳達給網絡以及它知道的其他節點時,節點會選擇其中一個塊,可能是他們最先遇到的那個,然後開始從中尋找下一個。
這就是所謂的鏈的分叉,因為現在有兩條鏈通過最後一個區塊來區分。
解決這個問題的方法是等著看下一個發現的區塊和哪個鏈會加入。使這條鏈更長,而忽略另一個。它是獲勝的最長鏈。
整個過程大約需要10分鐘,如果你在那段時間不做,那麼有一個機制可以調整挖礦難度並接近。
2.傳輸時間
10 分鐘的決定是基於任何新區塊到達網絡上的所有節點需要1 分鐘的假設做出的。
這意味著在一個節點找到解決方案後,一分鐘內,其餘節點將做毫無價值的工作,試圖找到已經發現的解決方案。
由此,比特幣的發明者認為,將超過10% 的網絡資源用於無意識的工作是最大的容忍。這就是為什麼他讓解決問題只需要10 分鐘。
如果你對20% 感到滿意,你可以選擇5 分鐘的難度。
我們知道難度是固定的,是由時間決定的。而且挖礦設備的力量也在不斷發展,可以在更短的時間內解決問題。
這就是為什麼比特幣協議有一個規則,可以根據解決過去2 週的區塊所花費的平均時間來調整難度。
為什麼要等1小時?
關於共識機制的所有這些都很好,但還有另一個問題需要解決,它與那些壞演員或“黑客”有關(儘管我不太喜歡這個名字)。
就區塊鏈技術而言,唯一的作弊方法是重寫歷史,我們現在將詳細討論這一點。
當一個新塊被創建(找到它的解決方案)時,任何人都很容易接受它是有效的。他們所需要做的就是檢查內部交易的簽名,以及他們是否擁有想要花費的代幣。
這樣我們就可以防止有人用不屬於他們的BTC 付款。但是,如果你設法撤消交易,則可以作弊。
為此,假設我們向某人支付了一些比特幣,作為回報,我們收到了PlayStation 5 之類的東西。
在我們收到控制台並確認一切正常後,理論上我們可以創建一個更長的區塊鏈,不包括我們的付款。
為此,我們應該從與我們購買的商品進行交易的區塊之前開始。
為防止出現此問題,PlayStation 的賣家在看到區塊已將交易與付款整合後,不應將產品交付給我們。你應該做的是等待更多的塊添加到鏈中。
有了這個,你就會有信心,我們很難創建更長的區塊鏈來克服共識。
幸運的是,中本聰不厭其煩地為我們計算並將其寫在比特幣白皮書上。
在其中我確定,如果我們等待6 個確認塊並且攻擊者擁有10% 的網絡權力,那麼他的機會只有0.1%。對於僅花費數百歐元或美元的商品而言,這是不太可能的。
更短或更長的出塊時間
如果採用較短的出塊時間,則會有一些優點和一些缺點。
優勢
對於那些只想等待1 個單曲的人更快的確認礦工支付的變化較小(對大集團的依賴較小)
缺點
需要更高的帶寬(用於節點之間的通信) 更多的分叉、更長的分叉和更長的重組時間網絡的大部分計算能力將被浪費,導致安全性降低
更短的塊時間的最大好處是減少了執行單次提交所需的時間。
當然,具有較短阻塞時間的1 次單次提交不如具有較長阻塞時間的安全性,但至少比我們等待0 次提交更安全。
這種確認速度對於那些價值不大的支付來說可能是一個很大的優勢,例如在支付一杯咖啡、一輛出租車或幾美元或幾歐元的東西時。
例如,信用卡對於接受它們的商家來說是有風險的,但歸根結底,損失很少,以至於它們是使用這些類型的支付方式開展業務的一部分。
雖然有些商家如果不介意承擔一些風險,也可能會接受0 確認交易,但你應該簡單地為保險(如信用卡)收取更多費用,並接受任何形式的欺詐。
0 確認問題的另一個選擇是使用“綠色地址”或“綠色地址”。
它們可用於以零確認進行交易。這些服務可以由大公司提供,也可以由欺詐保險提供支持(多虧了交易的小額佣金)。
如果選擇了更長的出塊時間,則優勢和劣勢會顛倒,比尋求縮短出塊時間的優勢更多。
在這種情況下,閃電網絡等第二層解決方案可能是完美的,既不失去10 分鐘的優勢,又可以廉價、快速地與BTC 交易。
資訊來源:由0x資訊編譯自CRIPTOTARIO。版權歸作者Criptotario所有,未經許可,不得轉載