區塊鏈執行在乙個p2p網路中,所有使用者都是這個網路中的節點,地位都是均等的。人人都可以建立、傳送和**交易資訊,因此會有很多交易資訊在這個網路中流轉。可是,沒有中心節點,該由誰來把交易資訊記錄下來呢?假設假設有乙個好心人,他自願把所有收到的合法交易記錄下來,形成乙個賬本,並向全網公開。
存在問題:有人篡改賬本
解決方法:將帳本劃分成多個區塊,並且每個區塊中包含有上一區塊的雜湊值,可以保證區塊內容未被刪改。以及每個區塊中的nonce值,由於密碼學雜湊函式具有單向性,記賬人沒有辦法根據雜湊值小於n的要求逆推出乙個合法的nonce值。記賬人只能隨機嘗試不同的nonce值才能讓區塊的雜湊值達到合法要求。而且密碼學雜湊函式具有運算高效的特性,所以嘗試一次nonce值並不需要花費太多的時間。
這樣以來,記賬人如果再要篡改某一筆交易,不僅這個區塊的雜湊值會變得不合法(當然,這並不是絕對的。),而且由於下乙個區塊還記錄著上乙個區塊的雜湊值。為了保持一致,還需要同步的篡改下乙個區塊中所記錄的上乙個區塊的雜湊值,這樣一來下乙個區塊的雜湊值也會變得不合法(當然,這也不是絕對的)。為了讓整個區塊鏈賬本合法,記賬人需要為此後的所有區塊都找到乙個恰當的nonce值。找到乙個nonce都要付出巨大的工作量,更何況是找多個nonce值。那肯定是不可能在短時間內完成的工作量。所以,只要記賬人能做到我們對每個區塊的雜湊值的要求(小於 ),我們就可以放心大膽的相信他的賬本是沒有被篡改過的。
在這種機制下, 記賬人付出了巨大的工作量來向我們證明他的賬本沒有被篡改,所以這種機制就叫做工作量證明,簡稱pow(proof of work)。
計算出nonce值的過程被稱為挖礦。
完成這個操作的人當然就被稱做礦工。
通過上述方式,應用工作量證明的機制使得賬本變得全網可信,但nonce值的加入,在一定程度上加大了記賬的工作量。那麼問題來了,誰願意來做上文提到的好心人呢?
為了解決這一問題,數字貨幣中設立了一套獎勵機制,誰記賬,就獎勵誰。比如在,位元幣系統中,誰通過挖礦記錄了下乙個區塊就會獲得一定數量的位元幣獎勵。
獎勵**:位元幣的獎勵機制一般有兩個**,一是無中生有,二是交易手續費。
無中生有:是位元幣的發幣機制。礦工每記錄乙個區塊,都可以在這個區塊中額外記錄一筆轉出賬戶為空,轉入賬戶是自己賬戶。
交易手續費:有的使用者在建立轉賬交易時,願意額外付出一些交易費,那麼他就會把交易費也記錄在交易資訊中。而礦工在記錄下乙個區塊時,就會優先收集哪些有交易費的交易打包成區塊。
以上便是區塊鏈概念簡述,其所應用的技術說明見之後的博文。
區塊鏈學習 區塊概念
區塊是區塊鏈的基本結構單元。它是資料檔案,它由元資料的區塊頭和交易資料的區塊主體構成。區塊通過鏈結上乙個區塊形成乙個鏈式結構,就稱為區塊鏈。區塊引數 魔法數 客戶端解析block資料的識別碼,每種幣種魔法數不同。區塊頭 版本號,上一區塊雜湊值,merkle根節點,時間戳,難度值,隨機數。每個區塊頭通...
區塊鏈的概念
2008年,中本聰發表 位元幣 乙個點對點的電子現金系統 在 中首次提出位元幣的概念,他建立了乙個完全去中心化的電子現金系統,並在2009年成功挖出第乙個礦 50個位元幣 隨著位元幣的發展,人們開始關注位元幣中使用的底層技術 點對點的網路 時間戳 加密技術 工作量證明等,這些技術不僅僅可以用到數字貨...
區塊鏈加密演算法簡述
加密簡單而言就是通過一種演算法將明文資訊轉換成密文資訊,資訊的的接收方能夠通過金鑰對密文資訊進行解密獲得明文資訊的過程。根據加解密的金鑰是否相同,演算法可以分為對稱加密 非對稱加密和對稱加密和非對稱加密的結合。對稱加密顧名思義就是加密和解密的金鑰是相同的。如下圖所示 簽名是用私鑰來完成的,用公鑰來驗...