欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

當前位置:主頁 > 區(qū)塊鏈 > 區(qū)塊鏈技術(shù) > 比特幣原理知識分享

比特幣原理詳解(什么是比特幣及挖礦原理)

2021-04-07 11:53:54 | 來源:CSDN | 作者:東大大數(shù)據(jù)組Zzzcg
這篇文章主要介紹了比特幣原理詳解(什么是比特幣及挖礦原理),區(qū)塊鏈并不等同于比特幣,比特幣也不是區(qū)塊鏈,區(qū)塊鏈只是比特幣應用的一種技術(shù),這個技術(shù)能給我們帶來啟發(fā),比特幣的偉大之處在于應用了前所未有的區(qū)塊鏈技術(shù)。那么比特幣原理是什么,一起來看看吧!

比特幣原理詳解

比特幣原理詳解(什么是比特幣及挖礦原理)

一、什么是比特幣

比特幣是一種電子貨幣,是一種基于密碼學的貨幣,在2008年11月1日由中本聰發(fā)表比特幣白皮書,文中提出了一種去中心化的電子記賬系統(tǒng),我們平時的電子現(xiàn)金是銀行來記賬,因為銀行的背后是國家信用。去中心化電子記賬系統(tǒng)是參與者共同記賬。比特幣可以防止主權(quán)危機、信用風險。其好處不多做贅述,這一層面介紹的文章很多,本文主要從更深層的技術(shù)原理角度進行介紹。

二、問題引入

假設現(xiàn)有4個人分別稱之為ABCD,他們之間發(fā)起了3個交易,A轉(zhuǎn)給B10個比特幣,B轉(zhuǎn)給C5個比特幣,C轉(zhuǎn)給D2個比特幣。如果是傳統(tǒng)的記賬方式,這些交易會記錄在銀行的系統(tǒng)中,這些信息由銀行來記錄,我們相信銀行不會隨意添加、刪除或修改一條交易記錄,我們也不會關(guān)注到底有哪些交易,我們只關(guān)注自己的賬戶余額。而比特幣的記賬方式為ABCD每個人保存了這樣一份賬本,賬本上記錄了上述交易內(nèi)容,如果每個人賬本實時的一致,ABCD就不再需要銀行。

比特幣是這樣做的,每當有人發(fā)起一筆交易,他就要將一筆交易廣播至全網(wǎng),由全網(wǎng)中的某一個人,把一段時間內(nèi)的交易打包好記錄到一個區(qū)塊上,再按照順序把這些區(qū)塊,一個一個的鏈接在一起,進而形成了一個鏈條,這就是所謂的區(qū)塊鏈。

比特幣原理詳解(什么是比特幣及挖礦原理)

那么問題來了

1、我憑什么要參與這個系統(tǒng),我為什么要動用自己的計算機資源來存儲這些信息呢?

2、以誰的記錄為準呢?比如上面的賬單順序,A用戶可能是這個順序,但是B可能順序不一樣,甚至可能B根本就沒有接收到C給D轉(zhuǎn)賬的這個消息。

3、比特幣如果做到支付功能,保證該是誰的錢就是誰的錢,而且只有其所有者才能花。

4、如何防偽、防篡改以及雙重支付,防偽是驗證每條交易的真的是某人發(fā)出的,比如B可能杜撰一條消息,說某某給我轉(zhuǎn)了一筆錢,這就是一個假消息,或者B說我給某人轉(zhuǎn)了多少錢,但是實際上他并沒有這么多錢,又怎么辦。防篡改指的是B可能想從區(qū)塊鏈上把自己曾經(jīng)轉(zhuǎn)給某人錢的記錄刪掉,這樣他的余額就會增加。雙重支付是指,B只有10比特幣,他同時向C和D轉(zhuǎn)10個比特幣,造成雙重花費。

三、為什么要記賬?

因為記賬有獎勵,記賬有手續(xù)費的收益,而且打包區(qū)塊的人有系統(tǒng)獎勵,獎勵方案是,每十分鐘生成一個區(qū)塊,每生成一個區(qū)塊會獎勵一定數(shù)量的比特幣,最開始是50個BTC,過4年會獎勵25個BTC,再過4年再減少一半,以此類推。這樣比特幣的產(chǎn)生會越來越少,越來越趨近于一個最大值,計算公式是:50×6×24×365×4×(1+1/2+1/4+1/8+…)≈2100萬,其中最初獎勵50個比特幣,每小時有6個區(qū)塊,每天24小時,每年365天,前四年是如此,之后每四年減半。

此外,記賬獎勵還有每筆交易的小額手續(xù)費,每個交易發(fā)起都會附帶一定的手續(xù)費,這些手續(xù)費是給記賬的礦工的。

四、以誰為準?

各個節(jié)點通過工作量證明機制來爭奪記賬權(quán),他們計算一個很復雜的數(shù)學題,第一個計算出來的節(jié)點就是下一個區(qū)塊的產(chǎn)生者。這個數(shù)學題很難,難到?jīng)]有一個人能同過腦子算出來,它是基于概率的方法,礦工必須通過遍歷、猜測和嘗試的辦法才能解開這個未知數(shù)。那么這個數(shù)學難題到底是什么呢?下面詳細介紹。

4.1哈希函數(shù)

哈希函數(shù)又稱為數(shù)字摘要或散列函數(shù),它的特點是輸入一個字符串,可以生成另外一個字符串,但是如果輸入不同,輸出的字符串就一定不同,而且通過輸出的字符串,不能反推出輸入。舉個簡單的例子,對1-100內(nèi)的數(shù)模10,可以認為是一種哈希方法,比如98%10=8,66%10=6,98和66是輸入,模10是哈希函數(shù),8和6是輸出,在這個模型中,通過6和8無法推斷輸入是66和98,因為還可能是56和88等,當然因為這個例子比較簡單,所以會出現(xiàn)哈希碰撞,即66和56的結(jié)果都是6,輸出的結(jié)果相同。一個優(yōu)秀的哈希函數(shù),可以做到輸出一定不同,哈希碰撞的概率幾乎為0。常見的哈希函數(shù)有很多,比如MD系列和SHA系列等,比特幣采用的SHA256算法,即輸入一個字符串,輸出一個256位的二進制數(shù)。下面是程序運行的結(jié)果。

比特幣原理詳解(什么是比特幣及挖礦原理)

比特幣原理詳解(什么是比特幣及挖礦原理)

比特幣原理詳解(什么是比特幣及挖礦原理)

通過程序結(jié)果可以看出,輸入的源信息不同,得到的結(jié)果也不同(為了方便,結(jié)果用64位16進制表示),即使是orange多了一個句號,也會產(chǎn)生截然不同的結(jié)果。同時,通過輸出的十六進制字符串,也無法倒推出輸入。對于比特幣,只要了解SHA256的功能即可,如果感興趣可以深入了解SHA256的具體算法。需要SHA256的C++源碼留言郵箱或私信。

4.2挖礦原理

首先介紹一下比特幣每個區(qū)塊的數(shù)據(jù)結(jié)構(gòu),每個區(qū)塊由區(qū)塊頭和區(qū)塊體兩部分組成。

區(qū)塊體中包含了礦工搜集的若干交易信息,圖中假設有8個交易被收錄在區(qū)塊中,所有的交易生成一顆默克爾樹,默克爾樹是一種數(shù)據(jù)結(jié)構(gòu),它將葉子節(jié)點兩兩哈希,生成上一層節(jié)點,上層節(jié)點再哈希,生成上一層,直到最后生成一個樹根,稱之為默克爾樹根,只有樹根保留在區(qū)塊頭中,這樣可以節(jié)省區(qū)塊頭的空間,也便于交易的驗證。

區(qū)塊頭中包含父區(qū)塊的哈希,版本號,當前時間戳,難度值,隨機數(shù)和上面提到的默克爾樹根。

比特幣原理詳解(什么是比特幣及挖礦原理)

假設區(qū)塊鏈已經(jīng)鏈接到了某個塊,有ABCD四個節(jié)點已經(jīng)搜集了前十分鐘內(nèi)全網(wǎng)中的一些交易信息,他們選出其中約4k條交易,打包好,生成默克爾樹根,將區(qū)塊頭中的信息,即發(fā)區(qū)塊哈希+版本號+時間戳+難度值+隨機數(shù)+默克爾樹根組成一個字符串str,通過兩次哈希函數(shù)得出一個256的二進制數(shù),即SHA256(SHA256(str)) = 10010011……共256位,比特幣要求,生成的結(jié)果,前n位必須是0,n就是難度值,如果現(xiàn)在生成的二進制數(shù)不符合要求,就必須改變隨機數(shù)的值,重新計算,只到算出滿足條件的結(jié)果為止。假設現(xiàn)在n是5,則生成的二進制數(shù)必須是00000……(共256位)。一旦挖礦成功,礦工就可以廣播這個消息到全網(wǎng),其他的礦工就會基于該區(qū)塊繼續(xù)挖礦。下一個區(qū)塊頭中的父區(qū)塊哈希值就是上一個區(qū)塊生成的00000……這個數(shù)。

解決這個數(shù)學難題要靠運氣,理論上,運氣最好的礦工可能1次哈希就能算出結(jié)果,運氣差的可能永遠都算不出來。但是總體來看,如果一個礦工的算力越大,單位時間內(nèi)進行的哈希次數(shù)就越多,就越可能在短時間內(nèi)挖礦成功。

那么n是如何確定的呢?比特幣設計者希望,總體上平均每十分鐘產(chǎn)生一個區(qū)塊,總體上來看,挖礦成功的概率為1/2^n?,F(xiàn)假設世界上有1W臺礦機,每臺礦機的算力是14T次/s = 1.4×10^13次/s,單位次/s稱之為哈希率,10分鐘是600s,所以10分鐘可以做8×10^19次哈希運算,從概率角度看,想要挖礦成功需要做2^n次運算,可以列出等式2^n = 8×10^19,可以解出n約為66。所以對于這種方法,我們沒有辦法使得自己的運氣變的更好,只能提高自己的算力,盡快的算出結(jié)果。

另外,需要模擬挖礦過程的C++代碼可以回復郵箱,代碼可以通過調(diào)整難度值,模擬比特幣的挖礦算法,控制區(qū)塊產(chǎn)生的速度。

五、如何防偽、防篡改、防雙重支付等問題

這部分是理解比特幣很重要的部分。

5.1電子簽名技術(shù)

身份認證技術(shù)在生活中很常見,可以是人臉識別、簽字、指紋等,但是這些方法在數(shù)字貨幣領(lǐng)域并不安全,因為它們一旦數(shù)字化,都可以通過復制的方法偽造。所以比特幣采用了電子簽名的方法。

注冊成為比特幣用戶時,系統(tǒng)會根據(jù)隨機數(shù)生成一個私鑰,私鑰會生成一個公鑰,公鑰又會生成一個地址,其中私鑰必須保密,可以保存到硬盤里或者記到腦子里,因為這個私鑰是使用相應地址上的比特幣的唯一標識,一旦丟失,所有的比特幣將無法使用。下面介紹具體的轉(zhuǎn)換過程,不感興趣可以不看,只要知道隨機數(shù)->私鑰->公鑰->錢包地址這個過程,其中私鑰可以對一串字符進行加密,而公鑰可以對其進行解密,這就是非對稱加密,這類算法總體上的功能都是一樣的,只是具體算法有區(qū)別,由于這些算法比較復雜,與SHA265算法一樣不多做介紹,感興趣可以深入了解具體算法,但是對于比特幣系統(tǒng),只要了解其功能即可。典型的算法是RSA,比特幣采用橢圓曲線加密算法。

轉(zhuǎn)換過程(選讀,不影響理解)

1、首先使用隨機數(shù)發(fā)生器生成一個私鑰,它是一個256位的二進制數(shù)。私鑰是不能公開的,相當于銀行卡的密碼。

2、私鑰經(jīng)過SECP256K1算法生成公鑰,SECP256K1是一種橢圓曲線加密算法,功能和RSA算法類似,通過一個已知的私鑰,生成一個公鑰,但是通過公鑰不能反推出私鑰。

3、同SHA256算法一樣,RIPEMD160也是一種HASH算法,由公鑰可以得到公鑰的哈希值,而通過哈希值無法推出公鑰。

4、將一個字節(jié)的版本號連接到公鑰哈希頭部,然后對其進行兩次SHA256運算,將結(jié)果的前4字節(jié)作為公鑰哈希的校驗值,連接在其尾部。

5、將上一步的結(jié)果使用BASE58進行編碼,就得到了錢包地址(相當于銀行賬戶)。比如A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa

比特幣原理詳解(什么是比特幣及挖礦原理)

所以,通過以上的過程我們可以總結(jié)出私鑰、公鑰、錢包之間的關(guān)系如下圖??梢钥吹酵ㄟ^私鑰可以推出所有的值,公鑰哈希和錢包地址之間可以通過BASE58和BASE58解碼算法相互轉(zhuǎn)化。

比特幣原理詳解(什么是比特幣及挖礦原理)

了解了公鑰、私鑰、地址的概念后,防偽驗證的過程就很容易理解,當A發(fā)起一筆交易后,對消息進行哈希,生成數(shù)字摘要,對數(shù)字摘要,通過私鑰加密,生成一個密碼。之后A會廣播這個條交易消息、公鑰以及密碼。收到消息的人首先對交易信息進行哈希生成摘要1,再通過公鑰對密碼進行解密,生成摘要2,這樣,如果兩個摘要相同,說明這個消息確實是A發(fā)出的。所謂的簽名,就是密文。

比特幣原理詳解(什么是比特幣及挖礦原理)

5.2余額檢查

余額的概念應該說根深蒂固,余額是伴隨著稱之為借貸記賬法而產(chǎn)生的,也是目前銀行普遍采用的方法,將一個人的交易記錄統(tǒng)計好后算出一個余額,但是在比特幣中沒有余額這個概念,因為其采用的是UXTO模型的記賬方法。比如A->B10個比特幣,B->C5個比特幣,對于第二筆交易來說,B在發(fā)起這筆交易時要注明第一筆交易的信息,這樣就可以知道B曾經(jīng)從A那里收到過10個比特幣,說明滿足第二筆交易發(fā)起的條件。所以比特幣中余額的檢查是通過追溯的方法。

比特幣原理詳解(什么是比特幣及挖礦原理)

上圖描述了兩筆交易,交易10001中,B向C轉(zhuǎn)了10個比特幣,驗證這筆交易的過程是:首先將B的簽名通過B的公鑰解密,然后再和交易的具體內(nèi)容(B簽名左側(cè))對比,如果相同,說明消息是B發(fā)出的,然后再檢查10000這個交易是否真的存在以及它的內(nèi)容的真實性。這兩點都滿足了,就說明交易10001是可以被接受的,否則拒絕接受。

實際上,真實的交易比這個復雜的多,因為有可能是多筆交易構(gòu)成了輸入,比如B->C20個比特幣,是由多筆交易A->B10,D->B10構(gòu)成的,則前一筆交易ID就是兩個ID,甚至可能更多。這里為了簡單描述,只列舉一筆交易。

5.3雙重支付

A同時發(fā)了兩條消息,同時給B和C轉(zhuǎn)了10個比特幣,實際上他只有10個會怎么樣?假設D節(jié)點先收到了轉(zhuǎn)給B10個BTC,然后收到了轉(zhuǎn)給C10個比特幣,通過上面的驗證方法,自然會拒絕后面的一個,與此同時,E節(jié)點可能先收到了轉(zhuǎn)給C10個BTC,然后收到了轉(zhuǎn)給B10個比特幣,他自然會拒絕后者。至于哪一筆交易最終會上鏈,就要看D和E哪個先解決難題,成功挖礦。

5.4防止篡改

假設A轉(zhuǎn)給B10個比特幣,但是他想把這個信息從區(qū)塊鏈上刪除,這樣大家就都不知道這個事情存在,就可以賴賬。

首先說一下最長鏈原則,假設某一個區(qū)塊后面有兩個礦工同時挖到了礦,或者由于網(wǎng)絡延遲等原因產(chǎn)生了分歧,這時,各個節(jié)點先隨意根據(jù)自己認為對的區(qū)塊挖礦,只到下一個區(qū)塊產(chǎn)生,這時會有兩條鏈,但是有一條是長的,比特幣規(guī)定,以最長的鏈為準。如果某個節(jié)點仍然的固執(zhí)的以較短的鏈為準,他就是在和大多數(shù)算力作對,這樣做的結(jié)果是,他挖的塊不被大家認可,會浪費時間和算力。

比特幣原理詳解(什么是比特幣及挖礦原理)

回到上面的場景,A想賴賬,就只能從記錄了A->B10個比特幣這個消息的區(qū)塊的前一個區(qū)塊開始重新挖礦,造出一個支鏈來,但是實際上的區(qū)塊已經(jīng)前進了很多,他只能不停的追趕,而且在追趕的同時,主鏈也在前進,他必須以比主鏈快的速度前進,如果他的算力足夠大,理論上通過較長的時間確實可以追趕成功,就實現(xiàn)了對交易信息的篡改。然而其實這幾乎是不可能的,因為就算算力再大,平均出塊速度也是10分鐘,從非技術(shù)的角度講,一個人如果掌握了全網(wǎng)一半以上的算力,他為什么不在主鏈上繼續(xù)挖礦呢?一個富可敵國的人應該不會甘愿去做一個小偷吧。

比特幣原理詳解(什么是比特幣及挖礦原理)

六、總結(jié)

區(qū)塊鏈并不等同于比特幣,比特幣也不是區(qū)塊鏈,區(qū)塊鏈只是比特幣應用的一種技術(shù),這個技術(shù)能給我們帶來啟發(fā),比特幣的偉大之處在于應用了前所未有的區(qū)塊鏈技術(shù)。區(qū)塊鏈技術(shù)還能在哪些方面應用還需繼續(xù)探索。

比特幣是區(qū)塊鏈技術(shù)最成功的應用,但是比特幣本身也有很多問題,它想通過發(fā)行貨幣來挑戰(zhàn)主權(quán)貨幣,這個動機有待商榷。此外,由于比特幣的匿名性,只需要一個公鑰或地址就能進行交易,為黑色產(chǎn)業(yè)提供了很好的平臺。另外,比特幣并不是一個成熟的支付系統(tǒng),它具有吞吐率低,可拓展性差等缺點。

相關(guān)推薦:

如何挖比特幣(家用windows電腦挖)圖文教程

比特幣算力是怎么影響B(tài)TC走勢的?

比特幣和以太坊及其他虛擬貨幣的區(qū)別是什么?

在幣安交易所買比特幣安全嗎?幣安APP安全嗎?

比特幣算力難度增加對礦工是好是壞?算力會對價格造成什么影響?

以上就是比特幣原理詳解(什么是比特幣及挖礦原理)的詳細內(nèi)容,更多關(guān)于比特幣原理知識分享的資料請關(guān)注腳本之家其它相關(guān)文章!

聲明:文章內(nèi)容不代表本站觀點及立場,不構(gòu)成本平臺任何投資建議。本文內(nèi)容僅供參考,風險自擔!

你可能感興趣的文章

幣圈快訊

  • 分析:Circle收入98%來自儲備資產(chǎn)收益,面臨大型機構(gòu)的潛在市場競爭

    2025-06-10 09:19
    金色財經(jīng)報道,穩(wěn)定幣發(fā)行商Circle在美掛牌上市后,其盈利模式獲得披露,其中顯示該公司去年收入中98%來自儲備資產(chǎn)的投資收益。通常儲備需要為優(yōu)質(zhì)、短期而流通性高的資產(chǎn),但Circle提供的數(shù)據(jù)顯示其過去3年儲備資產(chǎn)收益率介乎0.14厘至5.17厘,表明現(xiàn)階段其收入動力相當側(cè)重短債等資產(chǎn)的息率走勢。此外,Circle還面臨一項潛在的市場競爭風險,即:一旦未來有主權(quán)級別機構(gòu)參與穩(wěn)定幣的發(fā)行,可能憑借“零交易對手風險”優(yōu)勢迅速取得一定市占率,分析認為Circle有必要擴闊其加密生態(tài)圈。
  • Strategy比特幣持倉市值突破640億美元,續(xù)創(chuàng)新高

    2025-06-10 09:19
    金色財經(jīng)報道,據(jù)SaylorTracker,Strategy(原MicroStrategy)的比特幣持倉市值突破640億美元,續(xù)創(chuàng)新高。最新數(shù)據(jù)顯示當前Strategy比特幣持倉量為582000枚,市值約為64,000,156,710美元,截至目前收益率為56.85%,收益額約為231.9億美元。
  • 比特幣核心開發(fā)者計劃10月實施OP_RETURN變更

    2025-06-10 09:19
    6月10日消息,比特幣核心開發(fā)者已計劃在今年10月發(fā)布比特幣核心軟件第30版,該版本將不再過濾包含大量非金融數(shù)據(jù)的OP_RETURN輸出。這一變更將把默認的數(shù)據(jù)載體限制從目前的80字節(jié)增加至接近4MB,同時允許節(jié)點運營商手動修改-datacarrier和-datacarriersize參數(shù)。
  • 美國參議院多數(shù)黨領(lǐng)袖提交GENIUS法案終結(jié)辯論動議,本周將進行投票

    2025-06-10 09:10
    金色財經(jīng)報道,據(jù)Cointelegraph披露,美國參議院多數(shù)黨領(lǐng)袖JohnThune已為GENIUS法案及其兩黨修正案提交終結(jié)辯論動議(cloture),該法案將在本周進行投票。
  • 20倍杠桿做多比特幣巨鯨向Hyperliquid存入235萬美元,或?qū)⒓觽}多單

    2025-06-10 09:09
    金色財經(jīng)報道,據(jù)Lookonchain監(jiān)測,昨日開啟20倍杠桿做多比特幣的巨鯨向Hyperliquid存入235萬美元,或?qū)⒓觽}多單。
  • 查看更多