我們如何知道哪個礦工或礦池挖了一個區塊?
有些網站談論每個礦池的總算力百分比。
我認為他們通過計算特定礦工/礦池開采的最後 X 個區塊的百分比來做到這一點。
但是我們怎麼知道誰挖了一個區塊呢?
編輯:這不是重複的。
另一個問題提到:“人們可以嘗試追踪首次看到開采的比特幣的位置以及它們的去向。你可以追踪已知的第一個報告區塊的 IP”
網站生成非常詳細的統計數據,涵蓋僅佔全球雜湊率 0.3% 的礦池。看到這個
可能有一些非常可靠的方法可以做到這一點,我想要一個詳細的答案。
只有當礦工/礦池選擇表明自己身份時,我們才知道哪個礦工/礦池挖了一個區塊。最常見的是,他們通過在區塊的 coinbase 交易中插入他們的姓名或其他可辨識的簽名來做到這一點,該交易允許包含任意數據。然後,像 blockchain.info 這樣的網站可以記錄有關哪些礦池開采了多少塊的統計數據。
如果它們標識自己,即使是非常小的池,您也會看到條目。例如,KanoPool 在該頁面上顯示為在過去 48 小時內擁有所有雜湊算力的 0.3%。這是因為他們在那段時間從大約 288 個區塊中挖出了 1 個區塊,即 0.3%。KanoPool 顯然用
KanoPool (=O.O=)
coinbase 中的字元串來辨識它的塊(範例)。據推測,blockchain.info 的某個人正在維護一個已知池及其標識符的列表。但它可能並不完整;例如,區塊 552572在其 coinbase中有 string
BTPOOL
,這可能是某個礦池的名稱。Blockchain.info 將其列為“未知”,可能是因為BTPOOL
不在他們的已知標識符列表中。也許他們稍後會添加它。其他塊根本不包含任何可辨識的標識符。例如,區塊552568的 coinbase 不包含任何在我看來像文本的東西,Blockchain.info 也無法辨識它。除非有一天他們選擇表明自己的身份,否則我們永遠不會知道是誰開采了這個區塊。(例如,也許該幣庫中的數據是使用某個私鑰簽名的隨機數;那麼有人可以通過使用相同的密鑰簽署其他數據來證明他們探勘了該區塊。)