Bitcoind

採礦作業:什麼是允許的,什麼是不允許的?

  • April 28, 2016

我了解礦工競相創建滿足某些(非常具體的)加密標準的塊。但是,我仍然無法在這裡看到“樹林中的森林”,並且有一些非常相似的問題,我認為這些問題可以將所有事情聯繫在一起:

  1. 這些比賽/比賽叫什麼?阻止投標?阻止挑戰?
  2. 什麼軟體向所有礦工宣布新的“區塊競價”已準備就緒?換句話說,礦工如何知道開始相互競爭?
  3. 礦工使用什麼軟體來競爭?bitcoind? 還有什麼?
  4. 礦工可以使用上面(或其他)#3 的介面編寫自定義軟體bitcoind,還是“不允許”?
  5. 礦工可以在多台電腦上劃分“塊出價”問題,還是“不允許”?

我通常不喜歡問像這樣的“多問題”,但這些問題本身是如此之小/微,並且如此密切相關,我認為他們的回答將成為一個很好的“採礦概述”-為未來的讀者和新手輸入問題。

提前致謝!

我認為你錯過了對比特幣挖礦問題的一般理解。嘗試閱讀“用簡單的英語進行比特幣挖礦”,這是一篇試圖以簡單方式解釋挖礦的好文章。

我會回答你的不同問題,但其中一些是完全不相關的。

  • 這些比賽/比賽叫什麼?阻止投標?阻止挑戰?

我假設你的意思是這裡的建議。塊嘗試必須滿足某些條件才能有效。一旦礦工找到一個有效的區塊,它就會通過比特幣網路廣播它,以便其他礦工和客戶可以驗證它,如果它是有效的,就將它添加到他們的區塊鏈中。

  • 什麼軟體向所有礦工宣布新的“區塊競價”已準備就緒?換句話說,礦工如何知道開始相互競爭?

礦工不競爭。當礦工發現一個區塊時,它會通過比特幣客戶端宣布這一點。所有其他礦工將停止目前對區塊的搜尋,並開始尋找一個有效的新區塊,以跟隨另一個礦工找到的最後一個區塊。

重要的是要了解,當您嘗試更長的時間時,探勘問題並不容易找到。每次嘗試解決方案都有相同的成功機會。這只是關於進行多次嘗試。所以當另一個礦工找到一個有效的區塊時,你可以稍微改變你正在處理的問題,因為每次嘗試仍然有平等的機會。

  • 礦工使用什麼軟體來競爭?比特幣?還有什麼?

礦工可以向任何實現該協議的客戶端宣布他們的新區塊。bitcoind 是一個顯而易見的選擇。但是,很多人都在進行池化挖礦,礦池會為他們提供部分問題,當一個礦工找到解決方案時,池會宣布新的區塊。這意味著池化礦工不需要像 bitcoind 這樣的比特幣客戶端來挖礦,而只需要一個支持池化挖礦的礦工程序。

  • 礦工可以用上面的#3(比特幣或其他)的介面編寫自定義軟體,還是“不允許”?

如果我理解正確,你問礦工是否可以編寫自己的比特幣客戶端來宣布他們的區塊?他們當然可以。比特幣有一個開放的協議,每個正確實現該協議的客戶端都將被網路接受。

  • 礦工可以在多台電腦上劃分“塊出價”問題,還是“不允許”?

當然。這就是礦池本質上所做的事情。他們將問題分發給所有註冊的礦工。當其中一個人找到一個區塊時,獎勵是所有連接的礦工之間的份額,與他們對解決問題的相對貢獻成正比。

什麼是允許的,什麼是不允許的?

回答你的問題標題:一切都是允許的

你可以使用任何技術進行比特幣探勘。這是比特幣安全的重要組成部分,你不能作弊,因為一切都是允許的。

但是,當您不遵循比特幣協議時,您的任何行為都不會被網路接受。所以基本上,你可以做任何事情,但有些事情是你不應該做的,因為當你這樣做時,比特幣網路中的其他人會忽略你。

引用自:https://bitcoin.stackexchange.com/questions/10387