比特币挖矿算的到底是什么
Ⅰ 姣旂壒甯佺殑鎸栫熆鍒板簳鎸栫殑鏄浠涔
姣旂壒甯佹渶鍚稿紩浜虹殑鏄鎸栫熆銆備负浠涔堥噰鐭垮傛よ糠浜猴紵鍥犱负鎸栫熆鍙浠ュ緱鍒版瘮鐗瑰竵銆傚湪鍐欒繖绡囨枃绔犵殑鏃跺欙紝姣旂壒甯佺殑浠锋牸鏄3900缇庡厓銆傚傛灉鑳芥寲鍒颁竴涓鍖哄潡锛屽彲浠ヨ幏寰48750缇庡厓鐨勫紑閲囨敹鍏ュ拰澶х害6000缇庡厓鐨勪氦鏄撹垂鏀跺叆銆傝繖闅鹃亾涓嶄护浜虹潃杩峰悧锛
閭d箞鍒板簳浠涔堟槸閲囩熆鍛锛熺熆宸ュ備綍閫氳繃鎸栫熆鑾峰緱姣旂壒甯侊紵杩欓渶瑕佷粠姣旂壒甯佸尯鍧楅摼绯荤粺閲囩敤鐨凱oW(宸ヤ綔閲忚瘉鏄)鍏辫瘑鏈哄埗璇磋捣銆
鏈変竴涓鏉戝瓙锛屽緢澶氫簨鎯呴渶瑕佷竴璧峰喅瀹氥傛瘮濡傛湁涓澶╂潙闀块渶瑕佹墍鏈夋潙姘戜竴璧峰喅瀹氫粖澶╀腑鍗堝湪鏉戦熷爞鍖呴ズ瀛愯繕鏄鍗烽潰鏉°傞氬父鎴戜滑鑳芥兂鍒扮殑鏂瑰紡鏄鎶曠エ鈥斺旀瘡涓鏉戞皯涓绁锛屽皯鏁版湇浠庡氭暟銆備絾鏄鏈変簺鏉戞皯涓嶆効鎰忓湪椋熷爞鍚冮キ锛屽彲鑳戒細鎶婅嚜宸辩殑绁ㄨ╃粰鍒浜猴紝鍙鑳戒細瀵艰嚧涓嶅叕骞炽傚ぇ閮ㄥ垎鍦ㄩ熷爞鍚冮キ鐨勪汉锛屽彲鑳介兘瀹炵幇涓嶄簡鑷宸辩殑鎰挎湜銆
浜庢槸鏉戦暱鎹浜嗕竴绉嶆柟寮忋10鐐50鍒嗭紝浠栫敤鍠婅瘽鍣ㄥ悜鍏ㄤ綋鏉戞皯骞挎挱锛氣滀腑鍗堟垜浠鍦ㄩ熷爞閫夊仛楗哄瓙杩樻槸闈㈡潯銆傛兂鍘婚熷爞鍚冮キ鐨勶紝灏辨帹椋熷爞闂ㄥ彛鐨勫法鐭炽11鐐规暣锛岀煶澶翠細鎺ㄥ埌澶ч棬涓滆竟锛屼粬浠涓鍗堝悆楗哄瓙锛涙帹鍒板ぇ闂ㄨタ杈癸紝涓鍗堝悆闈銆傗
浜庢槸鎯冲湪椋熷爞鍚冮キ鐨勪汉璺戝幓鎺ㄧ煶澶淬傝础鐚澶氱殑浜烘渶鍚庡疄鐜颁簡鎰挎湜锛岃础鐚灏戠殑浜哄績鐢樻儏鎰匡紝鍥犱负鏉戦噷涓鐩村氨鏄杩欐牱鐨勮勭煩銆
杩欎釜鏁呬簨璁茶堪浜嗕竴绉嶅湪姘戜紬涓杈炬垚鍏辫瘑鐨勬柟寮忥紝鎴戜滑鍙浠ョО涔嬩负鈥滃伐浣滈噺璇佹槑鏈哄埗鈥濄傜敤鍔鍔涚殑澶氬皯鏉ヨ瘉鏄庤嚜宸辩殑閫夋嫨鎰忔効銆
鍦ㄦ湰绯诲垪鐨勭涓绡囨枃绔犱腑锛屾垜浠璁ㄨ轰簡鍙浠ヤ繚鎸佹瘡涓浜虹殑璐︾翱涓鑷寸殑鍖哄潡閾剧郴缁熴傝繖绉嶄繚鎸佹墍鏈夎妭鐐规暟鎹涓鑷寸殑鏈哄埗绉颁负鍏辫瘑鏈哄埗銆備笉鍚岀殑鍏辫瘑绠楁硶鍙浠ヨ揪鍒颁笉鍚屾ц兘鐨勫叡璇嗘晥鏋滐紝鏈缁堢洰鐨勬槸淇濇寔鏁版嵁涓鑷淬
娉ㄦ剰绗涓涓锛屽湪浠讳綍鍧椾腑锛岀涓涓閮芥病鏈夎浆鍑哄湴鍧锛屼篃灏辨槸鎵璋撶殑CoinBase(miningtransaction)銆傛病鏈変汉浠樼粰鐭垮伐杩欎簺閽憋紝浣嗘槸鐭垮伐鍙鏄鍐欑潃浠栦滑寰楀埌浜12.5涓姣旂壒甯併傛墍鏈夎妭鐐归兘鍚屾剰鐭垮伐杩欐牱鍐欙紝鎵浠ョ熆宸ヨ幏寰楅噰鐭挎敹鍏ャ
涓嶅悓鐭垮伐濉鍧楃殑鏃跺欙紝鏁版嵁鑲瀹氭槸涓嶄竴鏍风殑锛屽洜涓烘瘡涓鐭垮伐鐨勭涓鏉¤勫垯鑲瀹氭槸涓嶄竴鏍风殑锛岀熆宸ュ彧浼氭妸寮閲囨墍寰楄浆鍒拌嚜宸辩殑鍦板潃銆傛墍浠ョ熆宸ヨ繄鍏嬪皵鐨凜oinBase鏄鈥滆繄鍏嬪皵鑾峰緱浜12.5涓姣旂壒甯佲濓紝鐭垮伐鍗楀笇鐨凜oinBase鏄鈥滃崡甯岃幏寰椾簡12.5涓姣旂壒甯佲濄
姣忎釜鐭垮伐閮藉~濂戒簡鑷宸辨敹闆嗙殑浜ゆ槗鍜屽簲璇ュ緱鍒扮殑鏀跺叆銆傞偅涔堬紝璋佺殑璁板綍浼氬緱鍒板ぇ瀹剁殑璁ゅ彲鍛锛熸瘮鐗瑰竵浣跨敤宸ヤ綔閲忚瘉鏄庢満鍒讹紝璁╃熆宸ョ浉浜掔珵浜夋潵瑙e喅涓涓鏁板﹂棶棰樸傝皝鍏堣В鍐筹紝璋佸氨寰楀埌澶у剁殑璁ゅ彲銆傚氨鍍忓紑绡囨晠浜嬩腑璁茶堪鐨勯偅涓鏉戝簞涓鏍凤紝姣忎釜鐭垮伐閮藉湪鐢ㄥ姏鎺ㄧ潃宸ㄧ煶銆備竴鏃︾煶澶村帇浣忎簡浠栫殑璐︽埛椤甸潰锛屼粬鍠婇亾锛氣滄垜鐨勫伐浣滈噺璇佹槑鏄鎴愬姛鐨勩傚揩鏉ョ湅锛佲濇墍鏈夌殑鐭垮伐閮芥潵浜嗭紝鎶勪笅閭d竴椤佃处鐩锛岃创鍦ㄨ处鏈鍚庨潰锛岀劧鍚庡紑濮嬫柊鐨勮拌处娴佺▼銆傚懆鑰屽嶅嬶紝鐢熺敓涓嶆伅锛岃处鏈涓椤甸〉鐨勫炲姞锛岃处鏈瓒婃潵瓒婂帤銆
褰撲腑鏈鑱鍐冲畾閲囩敤宸ヤ綔閲忚よ瘉鏈哄埗鏃讹紝鍑哄彂鐐规槸涓轰簡閬垮厤绯荤粺鍙楀埌鏀诲嚮銆傗滀腑鏈鑱鈥濊や负锛屽傛灉鏀诲嚮鑰呮兂閫氳繃鎼炰贡璐︽湰鏉ユ敾鍑伙紝浠栭渶瑕佽冻澶熺殑璁$畻鑳藉姏銆傛崲鍙ヨ瘽璇达紝浠栨瘮澶у氭暟鎺ㄧ煶澶寸殑浜洪兘鍘夊炽傝繖鏍蜂粬瑕佷粯鍑哄法澶х殑鎴愭湰锛屼絾鍥炴姤涓嶈冻浠ユ姷娑堟垚鏈锛屾墍浠ユ敾鍑昏呮病鏈夌粡娴庡姩鏈哄幓鏀诲嚮姣旂壒甯佺郴缁熴
浣嗘槸锛岀幇鍦ㄧ敱浜庢瘮鐗瑰竵鐨勪环鏍艰秺鏉ヨ秺楂橈紝鎺ㄧ煶澶寸殑浜哄凡缁忎笉婊¤冻浜庤嚜宸卞幓鎺ㄤ簡锛岃屾槸鎶婂堕噷鐨勫ぇ楠″瓙澶ч┈閮芥淳涓婂幓骞叉椿浜嗐傚湪鈥滀腑鏈鑱鈥濇渶鍒濈殑璁捐¢噷锛屼竴涓狢PU涓绁锛岀敤绠楀姏鏉ュ喅瀹氬摢涓鐭垮伐璁扮殑璐︽垚涓烘渶缁堢殑璐︾洰銆傞殢鐫姣旂壒甯佷环鏍肩殑澧為珮锛屽紑濮嬪嚭鐜颁簡GPU鎸栫熆锛屽悗鏉ヤ汉浠鍙堜笉婊¤冻浜嶨PU鐨勯熷害锛屽紑濮嬪埗閫犱笓鐢ㄨ姱鐗囨寲鐭裤備笓鐢ㄨ姱鐗囧湪璁$畻姣旂壒甯侀棶棰樼殑鑳藉姏涓婃槸鏅閫欳PU鐨勬暟涓囧嶏紝鍥犳ょ幇鍦ㄦ瘮鐗瑰竵宸茬粡涓嶆槸鈥滀竴涓狢PU涓绁ㄢ濅簡锛岃繖涔熻儗绂讳簡褰撳垵鈥滀腑鏈鑱鈥濈殑璁捐★紝姣旂壒甯佺綉缁滃凡缁忓熀鏈涓婅鍑犲ぇ鐭挎睜鎵鍨勬柇锛岃儗绂讳簡鍘讳腑蹇冨寲璐у竵杩欎竴鍒濊》銆
闆烽攱缃戠壒绾︾夸欢锛屾湭缁忔巿鏉冪佹㈣浆杞姐傝︽儏瑙佽浆杞介』鐭ャ
鐩稿叧闂绛旓細鏄惧崱鎸栫熆鏄浠涔堟剰鎬濓紵涓轰粈涔堟樉鍗′环鏍煎拰鎸栫熆鏈夊叧锛
浣滀负涓涓鏇剧粡鈥滄ⅵ鎯充竴澶滄毚瀵岋紝鏈鍚庤鏈鏃犲綊鈥濈殑鈥滆佺熆宸モ濓紝鏉ュ洖绛旇繖涓闂棰橈紝鏈鏂囧敖閲忕敤閫氫織鐨勮瑷鏉ユ弿杩颁竴涓嬫寲鐭裤佹樉鍗℃寲鐭垮拰鏄惧崱浠锋牸鐨勪竴浜涚浉鍏抽棶棰樸
绠鍗曟潵璁诧紝鎸栫熆灏辨槸浜х敓鏁板瓧璐у竵鐨勬剰鎬濓紝鏁板瓧璐у竵鏈夊緢澶氱嶏紝鍖呮嫭鎴戜滑鍚鍒拌繃姣旂壒甯併佽幈鐗瑰竵銆佷互澶鍧娿佸竵瀹夊竵銆佺嫍鐙楀竵绛夈
杩欓噷锛屾垜浠浠ユ瘮鐗瑰竵涓轰緥锛屾潵澶ц嚧浜嗚В涓涓嬶紝姣旂壒甯佸氨鏄涓绉峆2P褰㈠紡鐨勬暟瀛楄揣甯侊紝P2P鐨勫幓涓蹇冨寲鐗规т笌绠楁硶鏈韬鍙浠ョ‘淇濇棤娉曢氳繃澶ч噺鍒堕犳瘮鐗瑰竵鏉ヤ汉涓烘搷鎺у竵鍊笺傛墍浠ワ紝姣旂壒甯佸叾鎬绘暟閲忔湁闄愶紝璇ヨ揣甯佺郴缁熸浘鍦4骞村唴鍙鏈変笉瓒呰繃1050涓囦釜锛屼箣鍚庣殑鎬绘暟閲忓皢琚姘镐箙闄愬埗鍦2100涓囦釜銆
浣嗘槸锛屼笌澶у氭暟璐у竵涓嶅悓锛屾瘮鐗瑰竵涓嶄緷闈犵壒瀹氳揣甯佹満鏋勫彂琛岋紝瀹冧緷鎹鐗瑰畾绠楁硶锛岄氳繃澶ч噺鐨勮$畻鏈烘暟鎹璁$畻鑰屼骇鐢燂紝姣忛殧涓瀹氭椂闂村氨浼氶氳繃鈥滄寲鐭库濅骇鐢熶竴閮ㄥ垎姣旂壒甯併
鈥滄樉鍗℃寲鐭库濇槸浠涔堟剰鎬濓紵鎴戜滑鐭ラ亾浜嗏滄寲鐭库濈殑鍚涔夛紝绠鍗曞湴璇达紝涓嶅氨鏄璁╃數鑴戣繘琛屽ぇ閲忚$畻鍚楋紵杩欎笉姝f槸鐢佃剳鐨勯暱澶勫悧锛
閭d箞锛屼负浠涔堚滄寲鐭库濇昏佹嬁鏄惧崱鍘绘寲锛屾洿涓哄帀瀹崇殑CPU锛屽畠涓嶈兘鎸栧悧锛熸瘯绔燂紝鏄惧崱涓鑸閮芥槸鐢ㄦ潵鎵撴父鎴忕殑锛屾庝箞浼氬拰鏁板瓧璐у竵鎵涓婂叧绯诲憿锛
杩欓噷灏辫佹彁鍒颁竴涓璇嶈锛氱畻鍔涖
鎴戜滑瑕佺煡閬擄紝鎸栫熆鏈閲嶈佺殑灏辨槸鐢佃剳纭浠剁殑绠楀姏澶у皬锛岀浉杈冧簬CPU鐨勫嶆潅杩愮畻锛屾樉鍗¤繘琛岀殑鍒欐槸閫氱敤璁$畻锛屽線寰閮戒細鍫嗗彔涓婂崈鐢氳嚦鍑犲崈涓娴佸勭悊鍣ㄣ傜劧鑰屾eソ锛屾寲鐭垮彧闇瑕侀氱敤璁$畻灏辫兘鎼炲畾锛屽嶆潅杩愮畻鍗村畬鍏ㄥ埄鐢ㄤ笉涓婏紝鎵浠ワ紝鏄惧崱鐨勫彟澶栦竴涓鐢ㄦ︿箣鍦板氨鏄鎸栫熆锛
鐩稿綋浜庝粈涔堟剰鎬濆憿锛熶妇涓渚嬪瓙绠鍗曠殑渚嬪瓙锛氭垜浠闇瑕佸湪澶ч噺鐨勭櫧绾镐笂闈㈠啓涓婁竴涓鏁板瓧1锛屾垜浠瀹夋帓10涓鑰佸笀鍜1000涓灏忓︾敓鏉ュ仛杩欎欢浜嬶紝鍦ㄧ浉鍚屾椂闂村唴锛岃繖1000涓灏忓︾敓鐨勫畬鎴愰噺鑲瀹氳佹瘮10涓鑰佸笀瀹屾垚鐨勬洿澶氾紝铏界劧鑰佸笀鑳藉姏鏇村己锛屼絾鏄鍦ㄥ勭悊杩欑嶇畝鍗曚簨鎯呬笂锛屾灦涓嶄綇灏忓︾敓浜哄氬晩銆
鍏跺疄锛屾棭鏈熺殑鈥滄寲鐭库濓紝纭瀹炴槸鐢–PU鏉ヨ繘琛岀殑锛屽悗鏉ワ紝鐢变簬鎸栫熆鐨勯毦搴﹁秺鏉ヨ秺澶э紝CPU鐨勯氱敤璁$畻浣犺兘鍔涘凡缁忓苟鏃犳硶婊¤冻鎸栫熆鐨勯渶姹備簡锛屾墍浠ュ氨鐢ㄥ埌鏄惧崱鏉ユ寲鐭裤傚弽鑰岋紝瀵逛簬鎴戜滑骞虫椂娉ㄩ噸鐨勭數鑴戞ц兘鎻愬崌鐨勯噸鐐圭‖浠禖PU鍜屽唴瀛樿佹眰骞朵笉楂橈紝鏈夌殑鏃跺欎粎浠呴渶瑕佽兘澶熶繚璇佽繍琛屾搷绯荤粺鍜岀浉鍏宠蒋浠跺氨琛屻傛垜褰撳垵鑷宸遍厤缃鐨勫皬鍨嬬熆鏈猴紝浣跨敤鐨凜PU鍜孋PU鏁g儹閮芥槸浜屾墜璐э紝鍐呭瓨浠呬负4GB锛屼娇鐢ㄧ殑纭鐩樹粎涓60G锛岀劧鑰屾惌閰嶇殑纭鏄6鍧楁樉鍗″拰鍙浠ユ彃6鍧楁樉鍗$殑涓绘澘銆
涓轰粈涔堟樉鍗′环鏍煎拰鎸栫熆鏈夊叧锛鍏充簬鏄惧崱鐨勪环鏍间笌鎸栫熆鐨勫叧绯伙紝涓鑸鍙浠ヤ粠鏂版樉鍗″拰浜屾墜鏄惧崱甯傚満鐨勪环鏍兼潵鍒嗗埆璇翠竴涓嬨
绗涓锛屾柊鏄惧崱鏂归潰銆
鍏跺疄锛屾柊鏄惧崱鐨勪环鏍间笂娑锛屼富瑕佹槸鍦ㄥ墠涓ゅ勾锛屾渶杩戞樉鍗′环鏍兼e湪閫愭笎鍥炶惤銆傝屽綋鍒濓紝鏄惧崱浠锋牸涓婃定璺熷綋鏃舵瘮鐗瑰竵鐨勫競鍦鸿屾儏鏈夊緢澶у叧绯汇傚綋鏃剁殑姣旂壒甯佷环鏍煎彲璋撴槸杈惧埌浜嗙柉鐙傜姸鎬侊紝鎵浠ュ偓鐢熶簡澶ч噺鐨勪笓涓氣滅熆宸モ濆拰鈥滄寲鐭垮叕鍙糕濓紝褰撶劧锛屼篃鍖呮嫭澶ч噺鐨勫儚鎴戜竴鏍风殑鈥滄寲鐭挎暎鎴封濄
褰撴椂锛屾湁濯掍綋鎶ラ亾锛屾湁閮ㄥ垎鍦板尯鐨勭綉鍚х珶鐒跺叧闂ㄦ瓏涓氾紝鎴樿岃繘琛屼笓涓氭寲鐭匡紝鍏剁伀鐑绋嬪害鍙鎯宠岀煡銆
鍚庢潵锛岀敱浜庢暟瀛楄揣甯佷环鏍煎洖钀斤紝骞朵笖鐩稿叧鐩戠¢儴闂ㄥ规暟瀛楄揣甯佸強鎸栫熆椤圭洰鐨勮勮寖鍖栫$悊锛岃屼笟姝i愭ュ洖褰掔悊鎬у拰姝h勶紝鍔犱笂鎸栫熆琛屼笟涓庣幆澧冧繚鎶ょ浉鎮栵紝鎵浠ュぇ閲忕殑鐭垮伐杞琛屻佺熆鏈哄叧闂锛屽悓鏃讹紝鐩稿叧浼佷笟涔熺爺鍙戝嚭浜嗕笓鐢ㄧ殑鎸栫熆鏈哄櫒锛岄犳垚鏄惧崱闇姹傛寔缁涓嬮檷锛屾樉鍗′环鏍奸殢涔嬩笅闄嶃
澶ч噺鐨勫競鍦洪渶姹傦紝瀵艰嚧鏄惧崱鐨勪环鏍间竴娑ㄥ啀娑锛涘競鍦洪渶姹傞檷浣庯紝鏄惧崱浠锋牸涔熼愭ュ洖钀斤紝杩欎笌甯傚満鐨勪緵闇鍏崇郴鍜屼环鏍兼诞鍔ㄦ槸鐩稿尮閰嶇殑銆
绗浜岋紝浜屾墜鏄惧崱鏂归潰銆
鎸栫熆鐢ㄧ殑鏄惧崱锛屾垜浠淇楃О鐭垮崱銆傞殢鐫鐭挎満瀵规樉鍗$殑澶ч噺闇姹傦紝浜屾墜鏄惧崱涔熻寰堝氱熆宸ユ墍闈掔潗锛涗絾鍙堥殢鐫澶ч噺鐭挎満鍏抽棴锛屽ぇ閲忕熆鍗¤偗瀹氭祦鍏ヤ簩鎵嬪競鍦猴紝鑰屽緢澶氳壇蹇冧汉澹锛屾槸涓嶅缓璁鏅閫氱敤鎴疯喘涔颁簩鎵嬬熆鍗$殑銆傛墍浠ワ紝鏄惧崱浜屾墜甯傚満鐨勭殑浠锋牸涔熷氨闅忕潃鎸栫熆琛屼笟鐨勮屾儏鍙樺寲鑰屽彉鍖栥
涓句釜鐪熷疄鐨勪緥瀛愶紝AMD鏇炬帹鍑轰簡涓娆炬樉鍗″彨Radeon 鈪︼紝浜2019骞2鏈堝彂甯冿紝7鏈堜唤鍋滀骇锛屽彂甯冩椂浠锋牸浠呬负5000澶氥備絾鏄锛屽湪鍋滀骇涓骞村崐杩囧悗锛屽叾浜屾墜浠锋牸绔熼珮杈8000鍏冨乏鍙筹紝鑰岃繖浠呬粎鏄鐢变簬杩欏潡鏄惧崱鍚勬柟闈㈢殑鎬ц兘鏁版嵁鏇村姞鏈夊埄浜庢寲鐭裤
鎬讳綋鑰岃█锛屾樉鍗℃寲鐭垮氨鏄涓绉嶅埄鐢ㄦ樉鍗℃湰韬鐨勪紭鍔挎潵杩涜屾暟瀛楄揣甯佺殑鐢熶骇锛岃屾寲鐭胯屼笟鐨勫叴琛帮紝灏辩洿鎺ュ奖鍝嶄簡鏄惧崱浠锋牸鐨勬尝鍔ㄣ
鍦ㄦわ紝濂夊姖杩樻湭杩涘叆鑰屽張鎯宠繘鍏モ滅熆鍦堚濈殑鏅閫氱帺瀹讹紝鏀惧純鍚э紝鍥犱负鏈夊彲鑳斤紝涓嬩竴涓鈥滆鏈鏃犲綊鈥濈殑锛屽氨鏄浣狅紒
简单回顾下挖矿的流程。
首先先要对所有的交易做验证,剔除有问题的,然后通过一套自定义的标准来选择哪些交易希望打包进区块,比如说提供的交易费与交易占用的字节大小的比值超过某个门槛,这样的交易才被认为有利可图。当然,节点也可以特意选择要加入某条交易,或者故意忽略某些交易。如果是通过矿池挖矿的话,矿池的服务器会去筛选交易,然后分配给每个参与的矿机一个独立的任务。
一旦筛选好交易数据,层层约减,通过这些交易就可以计算出一棵Merkle树,可以确定一个唯一的摘要,这就是Merkl树的根。
然后我们再依次获取挖矿需要的其他信息,这些信息组成一个区块的头。
区块头的字节分配
区块头只有80个字节,挖矿只需要对区块头进行运算即可。交易数据都通过merkle树固定了下来,不需要再包含进来。
这些信息中大部分已经是固定下来的,或者是可计算的。
我们以区块277316为例,其信息来自网站 http://blockchain.info
Bitcoin Block #277316blockchain.info
选择这个区块的原因是在《Mastering Bitcoin》一书中,中文社区译本和英文原版在介绍这部分内容时有出入,而且作者Antonopoulos并没有提到一个关键点,就是字节顺序的问题,相信很多人可能会踩这个坑。这里还原的细节可以帮助读者与书籍做相互参考。
请大家注意下面的每个步骤,注意每一个变化,这是比特币最核心的算法。
转换时间,记住,一定要转为utc的时间戳,此处遇到过坑,小心。
这一步的发现异常艰辛,耗费了大量的查询,大坑,大坑,谨记。发明人中本聪可能为了让机器计算更快,而变为了更接近机器的编码方式little-endian.
最终得到的结果就是
16进制下前面15个0,然后是1; 而难度目标对应的数字是
16进制下前面15个0,然后是3. 计算结果小于难度目标,符合要求。这个结果与网站上公布的数字一致。
在挖矿时,nonce随机数是未知的,要从0试到2^32,但是这个数字其实不大,只有4294967296,以现在的矿机动辄14T每秒的算力,全部算完到上限也不需要一秒。刚才提到在这种情况下,需要使用创币交易中的附带信息,额外的字符串成为extra nonce。
另外,创世区块也可以通过上面的方法来验证,有好奇的朋友可以尝试下。
提示:
Ⅲ 比特币挖矿计算的是什么
1、计算的就是比特币本身。这一计算过程就是比特币的发行过程。
2、因上述原因,我觉得可以理解为没有实际意义。
3、你说的是货币包的数目吧?那个就是你连接的其他客户端的数量(毕竟是P2P),这很重要!这个数值要达到一定程度账户才可正常运作。一直开着就好了。
Ⅳ 比特币矿机运算的是什么
从用户的角度来看,比特币就是一个手机应用或电脑程序,可以提供一个个人比特币钱包,用户可以用它支付和接收比特币。这就是比特币对于大多数用户的运作原理。
在幕后,整个比特币网络共享一个称作“块链”的公共总帐。这份总帐包含了每一笔处理过的交易,使得用户的电脑可以核实每一笔交易的有效性。每一笔交易的真实性由发送地址对应的电子签名保护,这使得用户能够完全掌控从他们自己的比特币地址转出的比特币。另外,任何人都可以利用专门硬件的计算能力来处理交易并为此获得比特币奖励。这一服务经常被称作“挖矿”。
比特币挖矿经历了三个发展阶段,在比特币刚刚诞生时,比特币的价格很低,大家只是把比特币当做一种游戏,使用自己普通的电脑进行挖矿,但在2012年随着比特币价格的上升,人们发现显卡挖矿速度较快,因此,人们开始购买大量显卡组装到一起进行挖矿,俗称“烧显卡”;第三阶段,就是大家熟知的ASIC矿机挖矿,自从阿瓦隆生产出世界上第一台ASIC比特币矿机,比特币挖矿就彻底的被颠覆了,挖矿成为了一个特别专业的事情。
Ⅳ 比特币挖矿到底在计算什么
要知道挖矿到底在计算什么,首先得知道比特币的本质及产生的过程。比特币是基于网络的电子货币,实际是互联网的一串代码,依靠算法计算得出。挖矿是完成算法的过程,也是生产比特币的唯一方式。而且由于算法规定,比特币目前只有2100万个。
1、挖矿既能生产比特币,又能保障交易信息
类似于,一个数学系统包含2100万个数学题,需要通过庞大的计算量不断的去寻求这个每个数学题的特解。另外,特解是唯一的。
下面来具体解释挖矿,从作用来说,挖矿不仅可以增加比特币货币供应,而且还可以保护比特币交易安全、防止欺诈交易。从过程来说,比特币网络是一个点对点的支付系统,任何人都可以通过交易程序进行交易。
为了确保交易过程被如实记录,就需要“矿工”这个角色来负责记录比特币交易信息,这个时间间隔是10分钟,矿工中记账最好的交易记录就会被打包存储到一个新的区块中,相应的矿工也会得到一定数量的比特币奖励。
2、挖矿过程极其复杂,非人力所能为
具体的流程如下,当某一个矿工监听到这笔交易时,首先会对交易信息进行验证。通过验证的交易则会被矿工记录下来,保存在自己的数据库里面。全世界可能有成千上万个矿工在进行同一件事,但在每十分钟内,只有一个矿工有权创建新的区块,使自己记录的交易信息被大家所承认并永久地存储下来。
接下来,矿工们就需要争夺记账权,这是一场算力竞赛的比拼,其核心是用计算机完成大量的计算任务,找到一个超难的随机数,这个随机数就是第一段所说的方程特解,最先算出正确随机数的矿工胜出。根据游戏规律,一个矿工获得记账权的几率与其算力占全网算力之和的比例成正比。换句话说,找到该随机数的概率相当于将一亿个骰子扔出,最后骰子总和小于1亿零50。因此,挖矿需要大量的计算机,安装特定的算法软件,日夜重复运行,非人力所能为。
3、比特币挖矿其实就是“村民记账”
可能还是有网友不懂,那就举个例子。在一个村里,村民之间经常会发生借款行为,哪怕写了字据也有违约的风险。那么,在每次村里有借款行为发生的时候,就用村里的大喇叭告知大家,所有的村民(矿工)就在自己的账簿里记下所有交易记录。
Ⅵ 比特币中挖矿是什么
比特币就是由一种开源的P2P软件产生的一串代码,我们称之为加密货币、电子货币等等。比特币是由挖矿产生的,比特币挖矿通俗点说就是利用你的硬件设备计算SH265算法的数学难题,确认网络交易,保证整个网络系统的安全,作为奖励比特币系统会根据矿工贡献算力的大小给与一定的比特币奖励。
挖矿就是抢比特币。比特币每隔一段时间会生成几个,谁抢到了就是谁的,而接入比特币系统的电脑,就是抢比特币的工具“矿机”。至于国家承认比特币的问题,简单来说就是看可能对国家的影响来决定了。
Ⅶ 比特币挖矿是什么
比特币挖矿是一种获得比特币的方式,简单来讲就是全网矿工一起来做一道题目,谁先做出来,谁就会得到比特币奖励,“矿工”需要在区块努力工作,就是消耗计算资源来处理交易,挖矿对于设备的配置要求相当高,提高设备配置,可以加强运算能力,也能更快的获得比特币。 比特币是一种电子货币,由开源的P2P软件产生,可以用来交易,也可以通过交易来获利,比特币挖矿运用的是哈希算法,在比特币系统里面,需要进行大量哈希运算,计算的值需要符合规定,谁运算的快,谁能挖到的比特币就越多。
拓展资料
比特币挖矿,是一种利用电脑硬件计算出比特币的位置并获取的过程。 挖矿是在比特币系统中进行记录数据的一个激励过程,在比特币系统个人用户通过利用CPU或者GPU进行哈希运算,稿颂当计算出特定的哈希值之后便拥有了打包区块的权利。 而为了奖励这个用户进行打包区块,系统就给予一定的比特币作为报酬。因为这个过程很像现实生活中“挖矿”所以大多数人就把这个过程叫做挖矿。除了比特币外,其他的电子虚拟货币也可以通过挖矿奖励获取,如以太坊、门罗币等等
挖矿风险:
1,货币安全
比特币的支取需要多达数百位的密衡信钥,而多数人会将这一长串的数字记录于电脑上,但经常发生的如硬盘损坏等问题,会让密钥永久丢失,这也导致了比特币的丢失。
2,系统风险
系统风险在比特币这个里面非常常见,最常见的当属于分叉。分叉会导致币价下跌,挖矿收益锐减。不过很多情况表明,分叉反而让矿工收益,分叉出来的竞争币也需要矿工的算力来完成铸币和交咐敬轮易的过程,为了争取更多的矿工,竞争币会提供更多的区块奖励及手续费来吸引矿工。风险反而成就了矿工。
Ⅷ 比特币挖矿到底是在计算什么
专业的说,是在算哈希值SHA-256。如果不懂计算机的话,简单地说,就是算一些没有意义的随机数,谁的随机数被比特币区块链接受了,谁就有钱拿。所以比特币计算除了赚钱之外,其实并没有任何实际作用。如果这些算力用来做科学计算,真的可以做很多事情,但是没办法,谁让比特币赚钱啊
Ⅸ 比特币挖矿是在进行什么计算吗
为了证明时间 保证整个网络的安全性
如果没有这个计算 整个体系是不安全的 所以这些看似没有意义的计算是为了保证大家的安全
Ⅹ 挖矿到底在计算什么
比特币挖矿到底在计算什么?如何看待比特币挖矿,比特币的挖矿对于不同的矿工而言是一种竞争记账权的合作记账行为,在合作的大框架下有序地竞争。也就是利用电脑硬件计算出比特币的位置并获取的过程称之为挖矿。挖矿既能生产比特币,又能保障交易信息,下面来具体解释挖矿。
比特币在2017年底暴涨至将近20万人民币一枚,不仅火了数字货币行业,更是火爆了区块链行业,正因为如此,很多人想方设法去挖矿,获取比特币来实现自己的财富自己,首先,”比特币“挖矿是怎挖的,比特币是一中虚拟货币,基于区块链技术。如果我们简单地把区块链的区块比作一个个的账本,那么”挖矿“就是“打包”过去十分钟整个区块链网络的交易,把这些交易写入新的区块,那么就“打包”完成,那就是完成了“挖矿”旅搭誉。完成了挖矿之后就获得了系统分发给你的比特币。这就是比特币“挖矿”比较简化的说法,当中的原理和运行还是相当复杂的。
如何分配“打包权”
比特币的价格超过2w元一个,每一次获得“打包权”,完成工作就会获得12.5个比特币(会随时间递减),获利可谓相当丰厚。
天下熙熙皆为利来天下攘攘皆为利往,只要有利润的地方就有人。网络上矿工众多,那么如何确定应该分配给哪个矿工去做这事呢?
比特币的创始人中本聪采用这种方法:采用一种叫“工作证明(Proof Of Work,简称POW)机制,即工作量的证明。
这种方法通常来说只能从结果证明,因为监测工作过程通常是繁琐与低效的。这是用来确认你做过一定量的工作,但是监测工作的整个过程极为低效,而通过对工作的结果进行认证来证明完成了相应的工作量,则是一种非常高效的方式。
我们可以比喻成,要证明您会开车技术好,企业不可能给您几天时间,跟着您在市区上走。但是,你可以提供驾驶证和之前在公交车公司当公交车司机的工作证明, 来说明您得能力。你要获得这个能力需要付出大量的时间和精力,但是企业验证却非常简单。
比特币这种加密系统所使用工作量证明机制的证明是哈希现金,需要算出对应的哈希函数。哈希现金是一种工作量证明机制,它是亚当·贝克在1997年发明的,主要用于抵抗邮件的拒绝服务攻击及垃圾邮件网关滥用。在比特币之前,哈希现金被用于垃圾邮件的过滤,也被微软用于hotmail等产品中。
对于比特币这种加密系统所使用的哈希函数,它需要具备以下的性质:
1. 免碰撞,即不会出现输入x≠y,但是H(x)=H(y)
2. 隐匿性,也就是说,对于一个给定的输出结果H(x),想要逆推出输入x,在计算上是不可能的。
3. 不存在比穷举更好的方法,可以使哈希结果H(x)落在特定的范围。
比特币在区块链的生枝锋成过程中使用了POW机制,一个符合要求的区块哈希函数由N个前导零构成,零的个数取决于网络的拆段难度值。
要得到合理的区块哈希码需要经过大量尝试计算。当某个节点提供出一个合理的区块哈希值,那就是说明该节点确实经过了大量的尝试计算,那么系统就把”打包权“分配给该节点(矿工)
当然这不能得出计算次数的绝对值,因为寻找合理hash是一个概率事件,所以当节点(矿工)拥有占全网n%的算力时,该节点基本上就是有n/100的概率找到区块哈希。那就是意思上说比拼算力。
当能不能记住前面几个0,然后可以使用呢?不能的,因为难度值不一样, 0的数量就不一样。而且要证明的数是一个哈希码,而且需要验证的工作量证明非常庞大,基本上无法造假。只存在一个方法:穷举!
那么意味着,你不仅要算出你的哈希值,还需要对比对不对,如果不对的话继续算。
所以需要大量的显卡进行大量的并行运算,获取哈希值。让我们来看看,矿场是一个怎么样的存在:
这些矿场都是用很贵的显卡来算,他们的算里是人工的N倍。如果单靠人力,算十年都没有它们工作一小时的工作量大。
比特币和传统货币不同,美元和英镑这种法币由央行和金融机构管理,进行转账交易时这些机构也同时参与,而比特币只在分布式账本中进行交易,每一项交易就储存在比特币的全球网络节点中,不可复制,不可篡改。所以每个储存数据的节点都会有相应的奖励,目前已经开采的节点有1700万个,比特币总量只有2100万个,意味着还有400万个比特币待开采。