當前位置:
首頁 > 最新 > 區塊鏈教程:比特幣中的術語

區塊鏈教程:比特幣中的術語

本文介紹比特幣中常見的術語;

主要參考《精通比特幣》,PDF下載地址:區塊鏈相關網站、資料分享

地址、私鑰、公鑰

比特幣地址由一串字元和數字組成,以阿拉伯數字「1」開頭。如:1DSrfJdB2AnWaFNgSbv3MZC2m74996JafV。

比特幣地址類似於email地址,用戶轉賬的時候,直接使用地址進行轉賬;類似於給某個用戶發送Email。

私鑰和公鑰就是我們常說的非對稱加密的公鑰、私鑰;在比特幣系統中,使用私鑰生成公鑰,公鑰生成比特幣地址,並且都是不可逆的。使用的是橢圓曲線加密演算法(ECDSA)

區塊

一個區塊也就是區塊鏈上的一個節點,是若干交易數據的集合,它會被標記上時間戳、高度號、和前一個區塊的標識碼。

所以可以說:一個區塊通過hash碼唯一標記,有唯一的高度;但是反過來只能說一個hash碼確定唯一區塊,但是不能說一個高度確定唯一區塊。

區塊鏈

通俗的說 區塊鏈就是一個大賬本。

技術上說,就是所有區塊鏈在一起的一個鏈表結構;類似於C/C++中的單項鏈表數據結構。只是每個區塊保存前一個區塊的hash碼值;所以從某個區塊逆向上溯,最終都會找到創世區塊。

如下圖為一個區塊鏈和區塊的結構圖:

比特幣網路

比特幣網路是一個P2P網路,這也是區塊鏈必須依賴的一個環境。因為只有P2P網路才可以實現去中心化。比特幣網路真正實現了我們一直討論的雲計算。整個P2P網路中有很多節點,這些節點可以廣播和同步區塊鏈信息。

礦工、挖礦、獎勵

礦工就是有一定算力的網路節點(機器)。

挖礦就是對交易 確認的計算,也叫工作量證明(POW)。

獎勵就是比特幣系統贈送的比特幣或者交易費用。獎勵最終會顯示在錢包(軟體)中,其實獎勵就是一個UTXO。

難度、工作量證明

網路會通過調整「難度」這個變數來控制生成工作量證明所需要的計算力。滿足全網目標難度的情況下求解SHA256演算法。

UTXO

比特幣交易的基本單位是未經使用的一個交易輸出,簡稱UTXO。某個用戶錢包中的比特幣數量(金額)就是交易最後到他賬號中的所有UTXO的總和。所以比特幣系統並不像某寶這樣的中心化的存儲,一旦資料庫宕掉,你的餘額(存儲在資料庫中)就看不到了

。比特幣餘額是整個區塊鏈中UTXO的計算,所以永遠不會宕機!

交易

一次BTC的轉移就可以看做一個交易。當然交易的形式有很多種,但是歸根結底還是區塊鏈中的一次BTC流轉。

腳本

比特幣的交易驗證引擎依賴於兩類腳本來驗證比特幣交易:一個鎖定腳本和一個解鎖腳本。

如果你還是不懂,我給你講個故事吧:

比如有個餐廳,每天的交易流水都要記錄在一個本子上,每一頁上面記錄當天的所有交易。那麼我們就可以說這一頁就是一個區塊,它包括了無數次交易記錄。由於每天都有交易,所以每一頁都可以找到上一頁,這就相當於把所有區塊鏈接起來了,那麼這個記賬的本子就是區塊鏈了。

那麼挖礦、獎勵又是什麼呢?比如老闆每天晚上會來查賬,會問:誰能給我準確彙報今天的交易明細、總額?(不同問題難度不一樣),這個時候每個員工的運算速度(算力)是不一樣的,聰明的員工會先算出來給老闆彙報,老闆覺得是正確的,就會給予獎勵,這個過程你可以理解為挖礦和獎勵

所以隨著交易的增多,難度和計算力要求也越來越高,普通人就勝任不了,只有專業的(機器)才可以在一定的時間內給予確認

現在挖礦已經很難了,但是區塊鏈技術的普及才剛剛開始。就像上篇文章我說的那樣,這是一次革命,顛覆生產關係的革命!

可以加小編好友

多年編程經驗,精通Java、Python、NodeJs、C++等;

目前致力於深度學習、大數據分析研發工作;

我們都是程序員!

這裡是程序員實戰基地!


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 程序員實戰 的精彩文章:

Spring Boot 2.0 正式發布啦!

TAG:程序員實戰 |