不用你自己維護的,系統會自動發放挖礦收益的ETH或BTC到平台賬戶,挖礦時間結束就會停止收益。
⑵ 浠涔堟槸鐭挎睜錛
鐭挎睜鏄浠涔堬紵
鍦ㄥ叏緗戠畻鍔涙彁鍗囧埌浜嗕竴瀹氱▼搴﹀悗錛屽崟鍙版満鍣ㄦ寲鍒板潡鐨勬傜巼鍙樺緱闈炲父鐨勪綆銆傝繖縐嶇幇璞$殑鍙戝睍錛屼績浣誇竴浜涒渂itcointalk鈥濅笂鐨勬瀬瀹㈠紑鍙戝嚭涓縐嶅彲浠ュ皢灝戦噺綆楀姏鍚堝苟鑱斿悎榪愪綔鐨勬柟娉曪紝浣跨敤榪欑嶆柟寮忓緩絝嬬殑緗戠珯渚胯縐頒綔鈥滅熆奼犫(MiningPool)銆
鐭挎睜瀛樺湪鎰忎箟涓烘彁鍗囨瘮鐗瑰竵寮閲囩ǔ瀹氭э紝浣跨熆宸ユ敹鐩婅秼浜庣ǔ瀹氥
鐭挎睜鏄濡備綍榪愪綔錛
鐭挎睜閫氳繃涓撶敤鎸栫熆鍗忚榪炴帴鐭挎満錛岀熆鏈洪氳繃鏈哄櫒鍐呰繍琛岀殑鎸栫熆杞浠惰繛鎺ュ埌鐭挎睜鎸囧畾鐨勫煙鍚嶅拰絝鍙c傜熆鏈哄湪鎸栫熆鏃朵繚鎸佸拰鐭挎睜鏈嶅姟鍣ㄧ殑榪炴帴錛屽拰鍏朵粬鐭挎満鍚屾ュ悇鑷鐨勫伐浣滐紝榪欐牱鐭挎睜涓鐨勪笉鍚岀殑鐭挎満錛堝瑰簲涓嶅悓鐨勭熆宸ワ級鎷垮埌涓嶅悓鐨勬寲鐭誇換鍔★紝涔嬪悗鍒嗕韓鏀剁泭銆傜熆奼犳瘡澶╂寜鐭垮伐璐$尞鏀浠樻敹鐩婂埌鐭垮伐鐨勯挶鍖呭湴鍧錛屼絾鍥犱負鏀浠樻湁鎵嬬畫璐癸紝鐭挎睜閮戒細璁劇疆鏈浣庤搗浠橀噾棰濓紝濡傛灉褰撴棩璧蜂粯閲戦濇湭杈懼埌鐭挎睜鏈浣庤搗浠橀噾棰濓紝鐭挎睜浼氬皢榪欓儴鍒嗛噾棰濈瘡璁★紝鐩村埌鏌愬ぉ鐭垮伐寰呮敮浠樼殑鏀剁泭澶т簬鐭挎睜鐨勬渶浣庤搗浠橀噾棰濄
鍥句負甯佸嵃鐭挎睜鍚勫竵縐嶆渶浣庤搗浠橀噾棰濄
鐭挎睜灝嗗尯鍧楅毦搴︿換鍔★紙job錛夎繘琛屽垎鍓詫紝鍙戦佺粰鐭垮伐涓嶅悓闅懼害鐨勪換鍔★紙job錛夛紝姣忔¤$畻瀹屾垚涔嬪悗錛岀熆宸ヤ究鎻愪氦緇欑熆奼犱竴涓宸ヤ綔閲忥紙share錛夈傚綋鐭挎睜楠岃瘉榪欎簺share娌℃湁闂棰樺悗錛屽氨浼氭帴鏀跺苟緇熻℃暟閲忋傜熆奼犲湪鍒嗛厤鏀剁泭鏃訛紝鏍規嵁鍚勪釜鐭垮伐鎻愪氦鐨剆hare錛屾寜鍗犳瘮錛屾潵鍒嗛厤榪欎簺鏂板竵銆
鐭挎睜鏈澶х殑浼樺娍鍦ㄤ簬鐭挎睜紿佺牬鍦扮悊浣嶇疆鐨勯檺鍒訛紝灝嗗垎鏁e湪鍏ㄧ悆鐨勭熆宸ュ強鐭垮満鐨勭畻鍔涜繘琛岃仈緇擄紝涓璧鋒寲鐭褲傜熆奼犺礋璐e皢浜ゆ槗鎵撳寘錛屾帴鍏ヨ繘鏉ョ殑鐭挎満璐熻矗絝炰簤璁拌處鏉冦傜悊璁轟笂鐭挎睜鐨勭畻鍔涜秺澶э紝瓚婂規槗鎸栧埌鍧楋紝浣嗕粎浠庢傜巼瑙掑害璇達紝鍚勪釜鐭挎睜鍜岀熆宸ヤ韓鏈夊悓絳夌殑鍑哄潡姒傜巼銆
鐭挎睜鏄涓涓鍏ㄨ嚜鍔ㄧ殑寮閲囧鉤鍙幫紝鍗崇熆鏈烘帴鍏ョ熆奼犫斺旂熆鏈烘彁渚涚畻鍔涒斺旇幏寰楁敹鐩娿
鐭挎睜鐨勫嚑縐嶇粨綆楁ā寮忥紵
鐭挎睜灝嗗崟浣嶇熆宸ョ畻鍔涜繘琛屾暣鍚堬紝鍚屾椂灝嗘寲鐭跨殑闅懼害鍒嗘垚寰堝氬皬浠誨姟鍙戦佺粰鐭垮伐錛岀熆宸ユ牴鎹浠誨姟榪涜岃$畻錛屽悓鏃跺悜鐭挎睜鎻愪氦浠誨姟絳旀堬紝涔熷氨鏄鎻愪氦鎴戜滑緇忓父璇寸殑share錛堜竴涓宸ヤ綔閲忥級銆傜粨綆楁敹鐩婃椂錛屽氨闇瑕佹湁涓瀹氱殑緇撶畻妯″紡鏉ュ垎閰嶆寲鐭挎敹鐩娿傚父鐢ㄧ殑妯″紡鍖呮嫭PPS錛孭PLNS錛孭PS+錛孎PPS錛孲OLO絳夈傚叾涓閮ㄥ垎緇撶畻妯″紡涓鏀剁泭鐨勫垎閰嶄細璺熺熆奼犵殑騫歌繍鍊兼寕閽┿
騫歌繍鍊兼寚鐨勫氨鏄鐭挎睜鐨勮繍姘斿ソ鍧忥紝鏁板間笂絳変簬瀹為檯鍑哄潡鏁伴噺/鐞嗚哄嚭鍧楁暟閲*100%銆備婦涓渚嬪瓙錛屽傛灉鐪嬪埌A鐭挎睜騫歌繍鍊200%錛屾剰鍛崇潃榪囧幓24灝忔椂鐞嗚轟笂鍙鎸杗涓鍧楋紝瀹為檯鎸栦簡2n涓銆
涓昏佺殑鍒嗛厤妯″紡錛
PPS錛圥ay Per Share錛
綆鍗曟潵璇達紝PPS灝辨槸鎵撳伐妯″紡錛岀熆宸ユ妸綆楀姏鍗栫粰浜嗙熆奼犲幓鑾峰緱鍥哄畾鏀剁泭錛岀熆奼犺嚜璐熺泩浜忥紝鍥犱負鐭挎睜鎵挎媴浜嗕竴瀹氶庨櫓錛屾墍浠PPS妯″紡鐭挎睜璐圭巼鐩稿硅侀珮涓浜涖
Share鍗蟲彁鍒扮殑鐭垮伐鎻愪氦緇欑熆奼犵殑浠誨姟絳旀堬紝PPS鏀剁泭妯″紡涓嬫牴鎹鐭垮伐鎻愪氦鐨勪換鍔¢噺鏉ヨ$畻銆
涓句釜渚嬪瓙錛氱熆宸ョ殑綆楀姏涓1T錛屾暣涓鐭挎睜綆楀姏100T錛屽叏緗戞葷畻鍔1000T錛屾瘮鐗瑰竵緗戠粶騫沖潎姣10鍒嗛挓鍑轟竴涓鍧楋紝鍑哄潡濂栧姳涓12.5涓狟TC錛岀熆奼犲崰鍏ㄧ綉鎬葷畻鍔涚殑鍗佸垎涔嬩竴錛岀熆奼犳敹鐩婃湡鏈涘間負1.25涓狟TC錛岀熆宸ョ殑綆楀姏鍗犵熆奼犵畻鍔涚殑鐧懼垎涔嬩竴錛屾棤璁虹熆奼犳槸鍚︽寲鍒板尯鍧楋紝鐭垮伐鐨勬敹鐩婇兘鎸夌収鐞嗚烘敹鐩1.25涓狟TC鐨勭櫨鍒嗕箣涓鑾峰緱銆
PPLNS錛圥ay Per Last N Share錛
綆鍗曟潵璇達紝PPLNS鎴愬姛鎸栧埌鍖哄潡鍚庯紝鐭垮伐鏍規嵁鑷宸辮礎鐚鐨剆hare鏁伴噺鏉ュ垎閰嶆敹鐩娿傝繖鏍風殑緇撶畻鏂瑰紡鍜岀垎鍧楋紙涔熷氨鏄涓婃枃鎻愬埌鐨勫垢榪愬礆級灝辨伅鎮鐩稿叧浜嗭紝濡傛灉鐭挎睜涓澶╂寲鍑哄氫釜鍖哄潡錛岀熆宸ユ敹鐩婁細寰堥珮錛涘傛灉鐭挎睜涓澶╀笅鏉ラ兘娌℃湁鑳藉熸寲鍒板尯鍧楋紝閭d箞鐭垮伐涓澶╂敹鐩婃槸0銆
鐭鏈熸潵鐪嬶紝PPLNS妯″紡鍜岀熆奼犵殑騫歌繍鍊煎叧緋誨緢澶э紝鍜孭PS鐩告瘮錛孭PLNS鏇存帴榪戜竴縐嶇粍闃熸ā寮忔寲鐭褲傞渶瑕佹敞鎰忕殑鏄錛岀熆宸ュ姞鍏ュ埌涓涓鏂扮殑PPLNS鐭挎睜錛岃繖涓鏃跺欎細鍙戠幇鍓嶉潰鍑犱釜灝忔椂鐨勬敹鐩婃瘮杈冧綆錛岄偅鏄鍥犱負鍏朵粬鐭垮伐鍦ㄨ繖涓鐭挎睜閲屽凡緇忚礎鐚浜嗗緢澶氫釜share浜嗭紝鏂板姞鍏ョ殑鐭垮伐鐨勮礎鐚榪樺緢灝戱紝鎵浠ュ垎綰㈡椂鏂板姞鍏ョ熆宸ョ殑鏀剁泭閮芥槸姣旇緝浣庣殑銆傝繖鏄鍥犱負PPLNS鍏鋒湁涓瀹氱殑婊炲悗鎯鎬у拰鍛ㄦ湡鎬э紝鏂板姞鍏ョ殑鐭垮伐鐨勬寲鐭挎敹鐩婁細鏈変竴瀹氱殑寤惰繜銆
PPS+ 錛圥ay Per Share + Pay Per Last N Share錛
鏄疨PS鍜孭PLNS涓ょ嶈垂鐜囨ā寮忕殑緇撳悎錛屽嵆瀵瑰嚭鍧楀栧姳鎸夌収PPS妯″紡緇撶畻錛岃屽圭熆宸ヨ垂/浜ゆ槗鎵嬬畫璐規寜鐓PPLNS妯″紡榪涜岀粨綆椼備篃灝辨槸璇達紝鍦ㄨ繖縐嶆ā寮忎笅錛岀熆宸ュ彲鍦≒PS鏀剁泭妯″紡鐨勫熀紜涓婏紝棰濆栬幏寰楅儴鍒嗕氦鏄撹垂鐨勬敹鐩娿
FPPS錛團ull Pay Per Share錛
鍗沖畬鍏≒PS錛屽圭熆奼犵悊璁哄嚭鍧楀栧姳鍜岃繃鍘諱竴孌墊椂闂寸悊璁虹熆宸ヨ垂/浜ゆ槗鎵嬬畫璐瑰潎鎸夌収PPS榪涜岀粨綆椼
⑶ 比特幣礦池的協議stratum
轉自: https://zhuanlan.hu.com/p/23558268
getblocktemplate協議誕生於2012年中葉,此時礦池已經出現。礦池採用getblocktemplate協議與節點客戶端交互,採用stratum協議與礦工交互,這是最典型的礦池搭建模式。
與getwork相比,getblocktemplate協議最大的不同點是:getblocktemplate協議讓礦工自行構造區塊。如此一來,節點和挖礦完全分離。對於getwork來說,區塊鏈是黑暗的,getwork對區塊鏈一無所知,他只知道修改data欄位的4個位元組。對於getblocktemplate來說,整個區塊鏈是透明的,getblocktemplate掌握區塊鏈上與挖礦有關的所有信息,包括待確認交易池,getblocktemplate可以自己選擇包含進區塊的交易。
挖礦有兩種方式,一種叫SOLO挖礦,另一種是去礦池挖礦。前文所述的在節點客戶端直接啟動CPU挖礦,以及依靠getwork+cgminer驅動顯卡直接連接節點客戶端挖礦,都是SOLO挖礦,SOLO好比自己獨資買彩票,不輕易中獎,中獎則收益全部歸自己所有。去礦池挖礦好比合買彩票,大家一起出錢,能買一堆彩票,中獎後按出資比率分配收益。理論上,礦機可以藉助getblocktemplate協議鏈接節點客戶端SOLO挖礦,但其實早已沒有礦工會那麼做,在寫這篇文章時,比特幣全網算力1600P+,而當前最先進的礦機算力10T左右,如此算來,單台礦機SOLO挖到一個塊的概率不到16萬分之一,礦工(人)投入真金白銀購買礦機、交付電費,不會做風險那麼高的投資,顯然投入礦池抱團挖礦以降低風險,獲得穩定收益更加適合。因此礦池的出現是必然,也不可消除,無論是否破壞系統的去中心化原則。
礦池的核心工作是給礦工分配任務,統計工作量並分發收益。礦池將區塊難度分成很多難度更小的任務下發給礦工計算,礦工完成一個任務後將工作量提交給礦池,叫提交一個share。假如全網區塊難度要求Hash運算結果的前70個比特位都是0,那麼礦池給礦工分配的任務可能只要求前30位是0(根據礦工算力調節),礦工完成指定難度任務後上交share,礦池再檢測在滿足前30位為0的基礎上,看看是否碰巧前70位都是0。
礦池會根據每個礦工的算力情況分配不同難度的任務,礦池是如何判斷礦工算力大小以分配合適的任務難度呢?調節思路和比特幣區塊難度一樣,礦池需要藉助礦工的share率,礦池希望給每個礦工分配的任務都足夠讓礦工運算一定時間,比如說1秒,如果礦工在一秒之內完成了幾次任務,說明礦池當前給到的難度低了,需要調高,反之。如此下來,經過一段時間調節,礦池能給礦工分配合理難度,並計算出礦工的算力。
礦池通過getblocktemplate協議與網路節點交互,以獲得區塊鏈的最新信息,通過stratum協議與礦工交互。此外,為了讓之前用getwork協議挖礦的軟體也可以連接到礦池挖礦,礦池一般也支持getwork協議,通過階層挖礦代理機制實現(Stratum mining proxy)。須知在礦池剛出現時,顯卡挖礦還是主力,getwork用起來非常方便,另外早期的FPGA礦機有些是用getwork實現的,stratum與礦池採用TCP方式通信,數據使用JSON封裝格式。
先來說一下getblocktemplate遺留下來的幾個問題:
礦工驅動:在getblocktemplate協議里,依然是由礦工主動通過HTTP方式調用RPC介面向節點申請挖礦數據,這就意味著,網路最新區塊的變動無法及時告知礦工,造成算力損失。
數據負載:如上所述,如今正常的一次getblocktemplate調用節點都會反饋回1.5M左右的數據,其中主要數據是交易列表,礦工與礦池需頻繁交互數據,顯然不能每次分配工作都要給礦工附帶那麼多信息。再者巨大的內存需求將大大影響礦機性能,增加成本。
Stratum協議徹底解決了以上問題。
Stratum協議採用主動分配任務的方式,也就是說,礦池任何時候都可以給礦工指派新任務,對於礦工來說,如果收到礦池指派的新任務,應立即無條件轉向新任務;礦工也可以主動跟礦池申請新任務。
現在最核心的問題是如何讓礦工獲得更大的搜索空間,如果參照getwork協議,僅僅給礦工可以改變nNonce和nTime欄位,則交互的數據量很少,但這點搜索空間肯定是不夠的。想增加搜索空間,只能在hashMerkleroot下功夫,如果讓礦工自己構造coinbase,那麼搜索空間的問題將迎刃而解,但代價是必要要把區塊包含的所有交易都交給礦工,礦工才能構造交易列表的Merkleroot,這對於礦工來說壓力更大,對於礦池帶寬要求也更高。
Stratum協議巧妙解決了這個問題,成功實現既可以給礦工增加足夠的搜索空間,又只需要交互很少的數據量,這也是Stratum協議最具創新的地方。
再來回顧一下區塊頭的6個欄位80位元組,這個很關鍵,nVersion,nBits,hashPrevBlock這3個欄位是固定的,nNonce,nTime這兩個欄位是礦工現在就可以改變的。增加搜索空間只能從hashMerkleroot下手,這個繞不過去。Stratum協議讓礦工自己構造coinbase交易,coinbase的scriptSig欄位有很多位元組可以讓礦工自由填充,而coinbase的改動意味著hashMerkleroot的改變。從coinbase構造hashMerkleroot無需全部交易,
如上圖所示,假如區塊將包含13筆交易,礦池先對這13筆交易進行處理,最後只要把圖中的4個黑點(Hash值)交付給礦工,同時將構造coinbase需要的信息交付給礦工,礦工就可以自己構造hashMerkleroot(圖中的綠點都是礦工自行計算獲得,兩兩合並Hash時,規定下一個黑點代表的hash值總是放在右邊)
。按照這種方式,假如區塊包含N筆交易,礦池可以濃縮成log2(N)個hash值交付給礦工,這大大降低了礦池和礦工交互的數據量。
Stratum協議嚴格規定了礦工和礦池交互的介面數據結構和交互邏輯,具體如下:
1. 礦工訂閱任務
啟動挖礦機器,使用mining.subscribe方法鏈接礦池
返回數據很重要,礦工需本地記錄,在整個挖礦過程中都用到,其中:
Extranonce1,和 Extranonce2對於挖礦很重要,增加的搜索空間就在這里,現在,我們至少有了8個位元組的搜索空間,即nNonce的4個位元組,以及 Extranonce2的4個位元組。
2. 礦池授權
在礦池注冊一個賬號 ,添加礦工,礦池允許每個賬號任意添加礦工數,並取不同名字以區分。礦工使用mining.authorize方法申請授權,只有被礦池授權的礦工才能收到礦池指派任務。
3. 礦池分配任務
以上每個欄位信息都是必不可少,其中:
有了以上信息,再加上之前拿到的Extranonce1 和Extranonce2_size,就可以挖礦了。
4. 挖礦
1) 構造coinbase交易
用到的信息包括Coinb1, Extranonce1, Extranonce2_size 以及Coinb2,構造很簡單:
為啥可以這樣,因為礦池幫礦工做了很多工作,礦池已經構建了coinbase交易,系列化後在指定位置分割成coinb1和coinb2,coinb1和coinb2包含指定信息,比如coinb1包含區塊高度,coinb2包含了礦工的收益地址和收益額等信息,但是這些信息對於礦工來說無關緊要,礦工挖礦的地方只是Extranonce2 的4個位元組。另外Extranonce1是礦池寫入區塊的指定信息,一般來說,每個礦池會寫入自己礦池的信息,比如礦池名字或者域名,我們就是根據這個信息統計每個礦池在全網的算力比重。
2) 構建Merkleroot
利用coinbase和merkle_branch,按照上圖方式構造hashMerkleroot欄位。
3) 構建區塊頭
填充餘下的5個欄位,現在,礦池可以在nNonce和Extranonce2 里搜索進行挖礦,如果嫌搜索空間還不夠,只要增加Extranonce2_size為多幾個位元組就可輕而易舉解決。
5. 礦工提交工作量
當礦工找到一個符合難度的shares時,提交給礦池,提交的信息量很少,都是必不可少的欄位:
礦池拿到以上5個欄位後,首先根據任務號ID找出之前分配任務前存儲的信息(主要是構建的coinbase交易以及包含的交易列表等),然後重構區塊,再驗證shares難度,對於符合難度要求的shares,再檢測是否符合全網難度。
6. 礦池給礦工調節難度
礦池記錄每個礦工的難度,並根據shares率不斷調節以指定合適難度。礦池可以隨時通過mining.set_difficulty方法給礦工發消息另其改變難度。
如上,Stratum協議核心理念基本解析清楚,在getblocktemplate協議和Stratum協議的配合下,礦池終於可以大聲的對礦工說,讓算力來的更猛烈些吧。
⑷ 礦機挖幣是怎麼回事
比特幣挖礦制度是通過計算機硬體是比特幣網路開展數學運算的過程,提供服務的礦工可以得到一筆不小報酬,因為網路報酬依據的是礦工完成的任務量來計算,因此挖礦的競爭十分激烈。在全世界裡發行有上百種的數字貨幣,人們知道的最多的就是比特幣了。比特幣是一種網路上的虛擬貨幣,部分網站是可以使用比特幣支付的。
比特幣挖礦開始於CPU或者GPU這種低成本的硬體,不過隨著比特幣在生活里的流行,挖礦的過程出現了很大變化。
現在,挖礦活動已經轉移到現場可編程門陣列上來,通過優化可以實現哈希速度,這種模式的挖礦的效率非常快並且效率。
挖礦是電腦性能的競爭、裝備中的競爭,有些挖礦機是更多像這樣的顯卡陣列組成的,數十乃至過百的顯卡一同上陣,硬體價格等各種成本本身就很高,挖礦存在非常大的支出。
在比特幣的系統里,記錄交易生產區塊是最重要的工作,為了鼓勵大家都來參與交易賬本的記錄,中本聰設計出了獎勵機制,用比特幣作為獎勵。
但是記賬這個工作可不是那麼簡單,因為基於比特幣去中心化的思想,每個節點每個礦工都參與記賬,而且必須保證所有人記錄的賬本都是相同的。
礦工在收集交易信息並記錄的時候,每個礦工記錄的內容並不完全相同,特別是第一條,礦工記的肯定是把挖礦的獎勵給自己。但是每產生一個區塊鏈只有一次獎勵,這個獎勵給誰?這就需要立一個規矩,並且是大家都認可的規矩,也就是工作量證明PoW機制。
比特幣系統會讓大家求解一個數學題(計算hash值),誰最先求解出來,那麼他所記錄的區塊就會被認同,獎勵就歸他所有,而求解速度就要看誰的電腦/機器性能更高。
正是如此,所以現在每個人都在增強自己的電腦、挖礦機的運算性能,提高解題速度,誰的速度(算力)最高,挖到礦的幾率就越高,賺到的錢也就越多。
用個形象的比喻,工作量證明機制與拔河比賽很類似,哪一方的力量大(算力高)哪一方就能拉贏對方。而且拔河的繩子兩邊,並不在意你是胖子還是瘦子或人數有多少;於是,為了得到獎勵,可以很多人聚集為一夥,最後得獎了根據每個人出力多少來瓜分獎勵。
而這在比特幣挖礦里,召集好多人一起挖礦,就是「礦池」的概念,我們將在下一篇文章中詳細的解讀。
綜上,比特幣礦機挖礦,實際上就是用機器去參加一場數學比賽,誰先計算出來答案,誰就會獲得比特幣獎勵。
⑸ 什麼是挖礦,怎麼挖礦
簡單來說,挖礦就是利用晶元進行一個與隨機數相關的計算,得出答案後以此換取一個虛擬幣。虛擬幣則可以通過某種途經換取各個國家的貨幣。運算能力越強的晶元就能越快找到這個隨機答案,理論上單位時間內能產出越多的虛擬幣。由於關繫到隨機數,只有恰巧找到答案才能獲取獎勵。有可能一塊晶元下一秒就找到答案,也有可能十塊晶元一個星期都沒找到答案。越多晶元同時計算就越容易找到答案,內置多晶元的礦機就出現了。而多台礦機組成一個「礦場」同時挖礦更是提高效率。而礦池則是由多個「個體戶」加入一個組織一起挖礦,無論誰找到答案挖出虛擬幣,所有人同時按貢獻的計算能力獲得相應的報酬,這種方式能使「個體戶」收入更穩定。
舉一個通俗的例子:
我在一張紙上隨便寫一串數字,給出部分提示,誰猜對就給他獎金(挖礦)
聰明的人根據提示能作出更多猜測(計算能力)
有人出錢請許多人回來一起猜測(礦場)
有人召集大家一起猜測,無論誰猜到,按照每個人猜測次數比例分配獎金(礦池)
上面舉的例子大家可以看到,越聰明的人能作出越多次猜測,猜到的機會就越大,相應地能獲得越多的收益。
我們經常看到有礦工為了挖礦,不斷升級計算機配置,或者買多台計算機,其實質目的就是為了提高自己的算力。挖礦的過程是每一個礦工,在一個時間段里,和所有的礦工競爭計算那一份比特幣,實質就是一個人的算力PK全球的算力,由此可見,挖礦沒那麼容易。
什麼是算力?
在「挖礦」的過程中,我們需要找到其相應的解,而要找到其解,並沒有固定演算法,只能靠計算機隨機的哈希碰撞。一台礦機每秒鍾能做多少次哈希碰撞,就是其「算力」的代表,單位寫成hash/s。