1. 如何挖比特币
1、首先连接好网线,把网线插进矿机的网线接口,记得插紧一点哦。只有连接上网线矿机才能挖矿,宽带没有限制。
(1)比特币挖矿机怎么连接矿池扩展阅读
用户可以买到比特币,同时还可以使用计算机依照算法进行大量的运算来“开采”比特币。在用户“开采”比特币时,需要用电脑搜寻64位的数字就行,然后通过反复解谜密与其他淘金者相互竞争,为比特币网络提供所需的数字,如果用户的电脑成功地创造出一组数字,那么就将会获得25个比特币。
由于比特币系统采用了分散化编程,所以在每10分钟内只能获得25个比特币,而到2140年,流通的比特币上限将会达到2100万。换句话说,比特币系统是能够实现自给自足的,通过编码来抵御通胀,并防止他人对这些代码进行破坏。
2. 浠涔堟槸鐭挎睜锛
鐭挎睜鏄浠涔堬紵
鍦ㄥ叏缃戠畻鍔涙彁鍗囧埌浜嗕竴瀹氱▼搴﹀悗锛屽崟鍙版満鍣ㄦ寲鍒板潡鐨勬傜巼鍙樺緱闈炲父鐨勪綆銆傝繖绉嶇幇璞$殑鍙戝睍锛屼績浣夸竴浜涒渂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杩涜岀粨绠椼
3. 姣旂壒甯佹寲鐭夸骇涓氶摼鏄鎬庢牱鐨勫憿
姣旂壒甯佹寲鐭夸骇涓氶摼涓昏佺敱鍥涢儴鍒嗘瀯鎴愶紝鍒嗗埆鏄鐭挎満鐢熶骇鍟嗐佺熆鍦恒佺熆姹犮佺熆宸ャ1.鐭挎満鐢熶骇鍟嗭細鐭挎満鐢熶骇鍟嗘槸鎸栫熆棰嗗煙鐨勪笂娓革紝鏈澶х殑鐭挎満鐢熶骇鍟嗘瘮鐗瑰竵澶ч檰鍚屾椂涔熷湪缁忚惀鐭挎睜绛変笟鍔★紝瀵规暣涓浜т笟閾惧叿鏈夊緢寮虹殑鎺у埗鍔涖2.鐭垮満锛氱熆鍦轰笌鐭挎睜鏄浜т笟閾句腑鐨勪腑娓革紝瀹冧滑鏄鎻愪緵鍩虹璁炬柦锛岀被浼间簬鈥滄敹杩囪矾璐光濈殑瑙掕壊銆傜熆鍦轰富瑕佹槸璧氱$悊璐广佺數璐圭殑宸棰濈瓑锛岀熆姹犱富瑕佹敹鍙栨湇鍔¤垂銆備竴鑸鐭ュ悕鐨勭熆姹犱竴骞寸殑鏀跺叆涔熷湪鏁板崈涓囷紝鍒╂鼎闈炲父涓板帤銆3.鐭挎睜锛氱熆宸ヤ綅浜庝骇涓氶摼鐨勪笅娓革紝闇瑕佷粠鐭挎満鐢熶骇鍟嗚喘涔扮熆鏈猴紝鐒跺悗灏嗘満鍣ㄦ墭绠″湪鐭垮満锛岀劧鍚庡姞鍏ョ熆姹狅紝绛夊緟鐭挎睜灏嗗彈鐩婂彂鏀惧埌璐︽埛涓銆4.鏃峰伐锛氱熆宸ョ殑鏀跺叆涓烘寲鍒扮殑姣旂壒甯侊紝鐭垮伐鐨勬垚鏈鏈変袱涓澶ч」锛屼竴椤规槸涓娆℃ф姇鍏ョ殑鐭挎満璐涔版垚鏈锛屼竴椤规槸姣忓ぉ闇瑕佹敮浠樼殑鐢佃垂銆
鎴戜滑閫氳繃浠ヤ笂鍏充簬姣旂壒甯佹寲鐭夸骇涓氶摼鏄鎬庢牱鐨勫憿鍐呭逛粙缁嶅悗,鐩镐俊澶у朵細瀵规瘮鐗瑰竵鎸栫熆浜т笟閾炬槸鎬庢牱鐨勫憿鏈変竴瀹氱殑浜嗚В,鏇村笇鏈涘彲浠ュ逛綘鏈夋墍甯鍔┿
4. 铓傝殎D3鐭挎満鎬庝箞鏍疯
铓傝殎D3鐭挎満鎬庝箞璁剧疆
铓傝殎D3鐭挎満鏄涓绉嶄笓涓氱殑鍔犲瘑璐у竵鎸栫熆璁惧囷紝瀹冨彲浠ョ敤鏉ユ寲鎺樺氱嶄笉鍚岀殑鍔犲瘑璐у竵锛屼緥濡傛瘮鐗瑰竵銆佽幈鐗瑰竵銆佽揪涓栧竵绛夌瓑銆備互涓嬫槸铓傝殎D3鐭挎満鐨勮剧疆姝ラわ細
杩炴帴鐢垫簮鍜岀綉绾匡細棣栧厛锛屽皢铓傝殎D3鐭挎満杩炴帴鍒扮數婧愬拰璺鐢卞櫒銆傜‘淇濈數婧愬拰缃戠嚎閮借繛鎺ョ墷鍥恒
杩涘叆鐭挎満璁剧疆鐣岄潰锛氬湪鐢佃剳涓婃墦寮娴忚堝櫒锛岃緭鍏ョ熆鏈虹殑IP鍦板潃锛堥粯璁や负192.168.1.254锛夛紝鎵撳紑鐭挎満鐨勮剧疆鐣岄潰銆
璁剧疆鐭挎睜淇℃伅锛氬湪璁剧疆鐣岄潰涓锛岄夋嫨鈥滅熆姹犺剧疆鈥濋夐」锛岃緭鍏ユ偍鎯宠佹寲鐭跨殑鐭挎睜淇℃伅锛屼緥濡傜熆姹犵綉鍧銆佺鍙e彿銆佺敤鎴峰悕鍜屽瘑鐮佺瓑绛夈傝风‘淇濊緭鍏ョ殑鐭挎睜淇℃伅姝g‘鏃犺銆
璁剧疆鎸栫熆鍙傛暟锛氬湪璁剧疆鐣岄潰涓锛岄夋嫨鈥滄寲鐭胯剧疆鈥濋夐」锛岃緭鍏ユ寲鐭垮弬鏁帮紝渚嬪傚伐浣滄ā寮忋佹寲鐭垮己搴︾瓑绛夈傝锋牴鎹鎮ㄧ殑闇姹傚拰鐭挎睜瑕佹眰杩涜岃剧疆銆
淇濆瓨璁剧疆锛氬畬鎴愪互涓婃ラゅ悗锛岃峰姟蹇呯偣鍑烩滀繚瀛樿剧疆鈥濇寜閽锛岀‘淇濇偍鐨勮剧疆鐢熸晥銆
寮濮嬫寲鐭匡細瀹屾垚浠ヤ笂姝ラゅ悗锛屾偍鍙浠ュ紑濮嬫寲鐭夸簡銆傜熆鏈哄皢鑷鍔ㄨ繛鎺ュ埌鎮ㄨ剧疆鐨勭熆姹犲苟寮濮嬫寲鐭裤
闇瑕佹敞鎰忕殑鏄锛屽湪璁剧疆铓傝殎D3鐭挎満鏃讹紝鎮ㄩ渶瑕佷簡瑙d竴浜涗笓涓氭湳璇鍜屾妧鏈鐭ヨ瘑銆傚傛灉鎮ㄤ笉鐔熸倝鎸栫熆璁惧囩殑鎿嶄綔鍜岃剧疆锛屽缓璁鍏堜簡瑙g浉鍏崇煡璇嗗啀杩涜岃剧疆銆
5. 比特币怎么挖
第一步:准备矿机和矿池
如果你想挖比特币,你必须准备好专业的设备。 目前市面上有很多专业的矿机,矿池也是必不可少的。 在选择矿池时,还应该比较每个矿池。 产出和收入差距,然后选择最合适的矿池。
第二步:注册矿池账号并设置
准备好矿池后,需要注册一个矿池账号,设置一个普通的邮箱。 设置矿工账号时,每个CPU或GPU都需要设置一个矿工账号。
第 3 步:下载比特币矿工
注册并设置帐户后,您需要下载比特币矿工。 下载矿机时,一定要选择能最大限度发挥你的CPU和显卡性能的矿机。 下载后,设置服务器、用户名、密码、设备等。
第 4 步:采矿
设置好矿机后,点击“开始挖矿”按钮,矿机进入全速运行状态,矿机自动开始挖矿。
6. 比特币矿池的协议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协议的配合下,矿池终于可以大声的对矿工说,让算力来的更猛烈些吧。
7. 比特币怎么挖 挖比特币的方法
比特币是一本大账本,账本需要有人来记账,记账的奖励就是比特币。而这个记账的权利是需要大家来抢的,挖矿就是抢夺记账权。谁的算力大,谁就更有可能抢到这个记账权。
1、准备好矿机和电源,还需要网线和电脑。
2、安装找IP软件(如已下载则跳过此步骤)
每台矿机都有自己的IP,需要配备软件才能识别出来,可以在比特大陆的官网-技术支持-设备支持里上找到该软件,软件叫作IPReporter。
3、准备自己的矿池、矿工号(如已注册则跳过此步骤)
如果没有自己的矿池号和矿工号,那就不能保证挖到的比特币都是到自己账户上了,所以准备这些是必须的。在蚂蚁矿池官网注册一个自己的矿池账号,并创建一个矿工号。
4、矿机接网线
首先连接好网线,把网线插进矿机的网线接口,记得插紧一点哦。只有连接上网线矿机才能挖矿,宽带没有限制。
5、矿机接电源线
把矿机电源的各个接口接入矿机,电源有10根接线,分别接入算力板和控制板。把所有的电源线接口全都接好了,接好线之后记得检查一下有没有插得不够深的地方。接完所有的线就可以让电源通电了,这时候矿机的灯会开始亮,机器开始响。
6、设置IP
打开刚才下载好的IPReporter这个软件,点击“Start”,然后按住矿机的IPReporter这个按钮,按一秒之后松开。此时软件上会自动弹出这台矿机的IP地址,将IP地址复制到浏览器中。点击回车键,在弹出的身份验证中,用户名和密码都输入“root”,点击确定。
7、复制矿池地址
这个时候我们就进入管理矿机的后台,在miner configuration(矿机配置)这里,把蚂蚁矿池的挖矿服务地址复制过来,只复制//后面的内容即可。总共有三个地址,全部都要复制到矿机后台。这一步就是保证挖到币都能到你自己的账户里来。
Worker这一栏填上自己蚂蚁矿池的刚刚创建的矿工名就行,三个都填一样的,密码自己设置即可。点击右下角的Save&Apply;,等待设置完成即可。
8、监控算力
进入Miner Statu(矿机状态),多刷新几次,就可以出现蚂蚁矿机目前的运行情况了,再打开自己的矿池,就可以看到矿机为你挖出了多少币。
8. 鑷宸辨庝箞鏍峰仛姣旂壒甯佺熆
鑷宸辨庝箞鍋氭瘮鐗瑰竵鐭挎睜
鍒涘缓涓涓姣旂壒甯佺熆姹犻渶瑕佷互涓嬫ラわ細
1.鍑嗗囩熆姹犳湇鍔″櫒鍜岀熆鏈猴細鍒涘缓姣旂壒甯佺熆姹犻渶瑕佽嚦灏戜竴涓鐭挎睜鏈嶅姟鍣锛屽拰瓒冲熺殑鐭挎満鏉ュ弬涓庢寲鐭裤傜熆姹犳湇鍔″櫒搴旇ユ湁瓒冲熺殑澶勭悊鑳藉姏鍜屽瓨鍌ㄧ┖闂存潵澶勭悊鐭垮伐鐨勮繛鎺ュ拰鏁版嵁銆
2.閮ㄧ讲鐭挎睜杞浠讹細閫夋嫨涓娆鹃傚悎鐨勬瘮鐗瑰竵鐭挎睜杞浠讹紝濡侭itcoind锛孊FGMiner鎴朿gminer锛屽苟灏嗗叾閮ㄧ讲鍦ㄧ熆姹犳湇鍔″櫒涓娿傝剧疆鐭挎睜鐨勫弬鏁帮紝濡傝垂鐜囥侀毦搴︾洰鏍囧拰濂栧姳缁撴瀯绛夈
3.閰嶇疆鐭垮伐杩炴帴锛氱熆宸ラ渶瑕佽繛鎺ュ埌鐭挎睜鏈嶅姟鍣ㄦ墠鑳藉弬涓庢寲鐭裤備负浜嗘柟渚跨熆宸ヨ繛鎺ワ紝鍙浠ヤ娇鐢╓eb鍓嶇鍜孉PI鎺ュ彛鏉ョ$悊鍜岀洃鎺х熆宸ョ殑杩炴帴鍜屽伐浣溿
4.寮濮嬫寲鐭匡細涓鏃︾熆姹犻厤缃瀹屾垚骞惰繛鎺ュ埌姣旂壒甯佺綉缁滐紝鐭垮伐灏卞彲浠ュ紑濮嬫寲鐭裤傜熆姹犳湇鍔″櫒浼氫负鐭垮伐鎻愪緵宸ヤ綔浠诲姟锛岀熆宸ラ渶瑕佷娇鐢ㄤ粬浠鐨勭熆鏈鸿繘琛岃$畻锛屽苟灏嗗伐浣滅粨鏋滄彁浜ょ粰鐭挎睜鏈嶅姟鍣ㄣ
5.鍒嗛厤濂栧姳锛氬綋涓涓鐭垮伐鎻愪氦涓涓鏈夋晥鐨勫伐浣滅粨鏋滄椂锛岀熆姹犱細鍒嗛厤濂栧姳缁欒ョ熆宸ワ紝濂栧姳鍙浠ユ槸姣旂壒甯併佷氦鏄撹垂鐢ㄦ垨鍏朵粬浠e竵銆傜熆姹犻氬父浼氫娇鐢ㄤ竴绉嶅叕骞崇殑濂栧姳鍒嗛厤鏂规堬紝浠ョ‘淇濇瘡涓鐭垮伐鑾峰緱鍏姝g殑濂栧姳銆
6.绠$悊鍜岀洃鎺э細鍒涘缓姣旂壒甯佺熆姹犻渶瑕佷笉鏂鐩戞帶鍜岀$悊銆傛偍闇瑕佷笉鏂浼樺寲鐭挎睜鐨勫弬鏁板拰閰嶇疆锛岀‘淇濈熆宸ョ殑杩炴帴鍜屽伐浣滄e父杩愯岋紝浠ュ強鍙婃椂澶勭悊浠讳綍鐭挎睜鏁呴殰鎴栨敾鍑汇