1.預期收益
縱觀現在大量的以太坊礦池,絕大多數的挖礦模式都是PPS/PPS+. 這種每日相對穩定的收益模式也被大多數的礦工們所接受.相對應的,為了宣傳自己,礦池們都會在首頁上展示他們的每日預期收益. 不要被這些數據迷惑了哦.那些看起來預期收益最高的礦池,實際到手的收益卻可能大打折扣. 因為這種所謂的預期收益很可能只是空頭支票,不能兌現的. 實際上,很多礦池因為相互之間的競爭關系,在收益上展示的預期收益數據都會稍稍做一點假,以此來吸引更多的用戶. 所以,一定不要只是看到所謂的預期收益就信以為真,真正到手的才是最可靠的.
2.礦池抽成
前面說到當下絕大多數的以太坊礦池都是用的PPS/PPS+模式,這種模式的背後往往隱藏著礦池額外的抽成. 因為每天挖到以太坊數量的未知性,而礦池們每天需要給礦工們支付相對固定的收益,這樣就存在入不敷出的風險性,為了保障礦池自己的利益,礦池就會對礦工們額外抽成來彌補自己的損失. 所以,不要被礦池1%,甚至是0%的收益抽成所迷惑,理所當然的覺得礦池抽成低,自己的收益就會高. 依然是那句話,真正到手的收益才是最可靠的.
3.算力
我們的收益與算力息息相關.這個算力不是指你在挖礦軟體上看到那個算力,那個算力只能算作是你的本地算力.雖然最後的收益與之有一定的關系,但本地算力更多的是作為一個參考值. 與我們的收益掛鉤的是在礦池中顯示的算力,這個算力決定了我們的收益. 礦池中顯示的算力本質上是被礦池方所承認的算力,就好像每天的工作量一樣,礦池方認為你今天為他幹了多少活,就會給你與之相對應的』工資』.因為礦池中顯示的算力是掌握在礦池的手中,有些時候就會出現剋扣工作量的事情,雖然可能很少量,不容易被礦工們發現,所以一定要注意哦.這種情況,就好像你覺得幹了200份的活,礦池老闆卻認為你只幹了150份,只支付了150份報酬.這個時候本地算力的作用就體現出來了,本地算力能讓你對今天的工作量有個大概估值,當礦池剋扣你算力的時候,你也能有所警覺.
4.抽成返水
我們都知道Claymore會有1%的軟體抽成,自然相對應的會有很多破解抽成的軟體,這其中有一些自稱是返還0.5%抽成,甚至1%全抽成返還的軟體.當使用這些所謂的抽成返還的軟體時就要擦亮眼睛注意了,警惕這些軟體是否做到了抽成返還.
929754407 --自發組織的一個顯卡挖礦交流群,歡迎大家加群討論更多的相關問題哦.
此外,給大家推薦一個比較好用的挖礦軟體,算是我目前用過的比較良心的一款的,不多說附上鏈接: http://www.neopool.cc/ .
2. 以太坊stratum協議原理
參照比特幣的 stratum協議 和 NiceHash的stratum協議規范 編寫了一版以太坊版本的stratum協議說明.
stratum協議是目前最常用的礦機和礦池之間的TCP通訊協議。
以太坊是一個去中心化的網路架構,通過安裝Mist客戶端的節點來轉發新交易和新區塊。而礦機、礦池也同時形成了另一個網路,我們稱之為礦工網路。
礦工網路分成礦機、礦池、錢包等幾個主要部分,有時礦池軟體與錢包安裝在一起,可合稱為礦池。
礦機與礦池軟體之間的通訊協議是 stratum ,而礦池軟體與錢包之間的通訊是 bitcoinrpc 介面。
stratum是 JSON 為數據格式.
礦機啟動,首先以 mining.subscribe 方法向礦池連接,用來訂閱工作。
礦池以 mining.notify 返回訂閱號、ExtraNonce1和ExtraNonce2_size。
Client:
Server:
其中:
是 訂閱號 ;
080c是 extranonce ,Extranonce可能最大3位元組;
礦機以 mining.authorize 方法,用某個帳號和密碼登錄到礦池,密碼可空,礦池返回 true 登錄成功。該方法必須是在初始化連接之後馬上進行,否則礦機得不到礦池任務。
Client:
Server:
難度調整由礦池下發給礦機,以 mining.set_difficulty 方法調整難度, params 中是難度值。
Server:
礦機會在下一個任務時採用新難度,礦池有時會馬上下發一個新任務並且把清理任務設為true,以便礦機馬上以新難度工作。
該命令由礦池定期發給礦機,當礦機以 mining.subscribe 方法登記後,礦池應該馬上以 mining.notify 返回該任務。
Server:
任務ID : bf0488aa ;
seedhash : 。每一個任務都發送一個seedhash來支持盡可能多的礦池,這可能會很快地在貨幣之間交換。
headerhash : 。
boolean cleanjobs : true 。如果設為true,那麼礦工需要清理任務隊列,並立即開始從事新提供的任務,因為所有舊的任務分享都將導致陳舊的分享錯誤。如果是 false 則等當前任務結束才開始新任務。
礦工使用seedhash識別DAG,然後帶著headerhash,extranonce和自己的minernonce尋找低於目標的share(這是由提供的難度而產生的)。
礦機找到合法share時,就以」 mining.submit 「方法向礦池提交任務。礦池返回true即提交成功,如果失敗則error中有具體原因。
Client:
任務ID : bf0488aa
minernonce : 6a909d9bbc0f 。注意minernonce是6個位元組,因為提供的extranonce是2個位元組。如果礦池提供3位元組的extranonce,那麼minernonce必須是5位元組
Server:
一般的礦機與礦池通訊過程就如下所示: