塊解決方案如何廣播?
據我們所知,全球有數十個礦池,但有些是相當大的礦池,例如 Antpool、Poolin、BTC.com 等,其中大部分位於中國<https://www.buybitcoinworldwide.com/mining/pools/> . 我在廣播方面有幾個問題:-
- 如果礦工找到解決方案,礦工是否可以控制將其廣播到哪些節點?
- 如果它是根據礦工的位置進行廣播的,那麼礦池中的所有礦工是否都具有其礦池對等方驗證解決方案的內在優勢?
- 讓我們以同時播放兩種解決方案的情況為例,一種來自美國,另一種來自中國。既然在中國、蒙古、俄羅斯等地有很多礦工,中國的礦工不是更有機會獲得共識嗎?
- 另外,在上述情況下,我們所說的共識是什麼意思?假設美國解決方案覆蓋了 20% 的活躍礦工,而中國解決方案覆蓋了 80% 的礦工。據我了解,即使是美國的解決方案也可以達到超過 51% 的共識(超過 10% 的全球活躍礦工同意該解決方案)。鑑於存在這麼大的礦池,是否應該對同意您的解決方案的全球礦工的最低數量設定一個門檻?
提前致謝!:)
如果礦工找到解決方案,礦工是否可以控制將其廣播到哪些節點?
當然,他們可以控制他們廣播解決方案的第一級對等點。但是,他們無法控制哪些對等方將從他們發送到的對等方接收塊。
將其廣播到網路中盡可能多的節點符合礦工的最大利益。
如果它是根據礦工的位置進行廣播的,那麼礦池中的所有礦工是否都具有其礦池對等方驗證解決方案的內在優勢?
礦池中有兩種礦工——大型採礦作業,礦場佔據相同的物理空間,小型礦工有 1 到幾千名礦工從世界任何地方連接到礦池。
這些挖礦設備接收工作指令,通常是通過諸如stratum之類的協議——一旦整個礦池中的任何一個設備發現了一個解決方案,礦池就會立即指示所有連接到它的設備在這個新區塊的頂部進行挖礦。然後,作為該池一部分的礦工將開始探勘下一個塊,甚至可能在大多數其他池完成接收和驗證新發現的塊之前。
由於與盡可能多的其他節點共享您的塊是在出現競爭塊時接受它的關鍵,因此有專門用於廣播塊的特殊解決方案,例如https://bitcoinfiber.org/。
讓我們以同時播放兩種解決方案的情況為例,一種來自美國,另一種來自中國。既然在中國、蒙古、俄羅斯等地有很多礦工,中國的礦工不是更有機會獲得共識嗎?
礦池通常會在他們看到的第一個區塊頂部進行探勘。然而,只有在兩個競爭塊之一的頂部找到一個新塊時,才能達成共識。
另外,在上述情況下,我們所說的共識是什麼意思?假設美國解決方案覆蓋了 20% 的活躍礦工,而中國解決方案覆蓋了 80% 的礦工。據我了解,即使是美國的解決方案也可以達到超過 51% 的共識(超過 10% 的全球活躍礦工同意該解決方案)。鑑於存在這麼大的礦池,是否應該對同意您的解決方案的全球礦工的最低數量設定一個門檻?
這裡的共識不取決於您能夠將解決方案廣播到多少節點,而是取決於要開采的下一個區塊。如果區塊 N 有 N_USA 和 N_CHINA,並且區塊 N+1 將 N_USA 稱為前一個區塊,則區塊 N_CHINA 將被丟棄,因為區塊 N_USA 是最長鏈的一部分,無論有多少節點在 N_USA 之前收到了 N_CHINA。在找到塊 N+1 之前,兩個塊都是有效的。
這被稱為選擇最長的鏈,或者更正式地說,選擇工作最多的鏈。