更新時間:2018-04-20 來源:黑馬程序員 瀏覽量:
當下,要問最火爆的概念是什么,那么這個桂冠必定被”區(qū)塊鏈”摘得,自正月以來,“比特幣”、“區(qū)塊鏈”、“ICO”等等概念鋪天蓋地,占據了各大版面,刷爆了我們的朋友圈,幣市井噴式的爆發(fā)讓很多傳統(tǒng)行業(yè)的人驚掉了下巴,同時又匪夷所思的發(fā)問:比特幣到底是什么?區(qū)塊鏈又是什么?兩者有什么關系?比特幣在哪里?能拿在手里么?...
從時間順序講,是先有比特幣,后有區(qū)塊鏈;從從屬關系講,區(qū)塊鏈是從比特幣上抽離出來的概念,比特幣是區(qū)塊鏈上的應用,由于比特幣是區(qū)塊鏈的始祖,雖然其與時下區(qū)塊鏈概念有一些區(qū)別,但它仍極具代表性,所以,在這里我們主要介紹比特幣(BTC,bitcoin),我們將用一系列文章,從最基本的概念聊起,細數(shù)一下比特幣的前世今生,從多個角度看看比特幣,從比特幣入手,逐步開啟認知區(qū)塊鏈的大門。
關于區(qū)塊鏈,我們聽到最多的描述是:區(qū)塊鏈是一個去中心化的,不可偽造,匿名的,基于密碼學的分布式賬本, 這里面涵蓋的信息比較多,我們先了解一下比特幣的基本信息,如下圖:
說說中本聰:
比特幣的創(chuàng)始人“中本聰”是一個神秘人士,至今無法確定其身份,他是“密碼朋克”組織成員之一,“密碼朋克”一個匯集精英IT極客的加密郵件系統(tǒng),維基解密網創(chuàng)始人阿桑奇、萬維網發(fā)明者Tim-Berners Lee爵士等都是其成員。在2008年金融危機爆發(fā)之后,政府和銀行管理經濟的能力遭到各方質疑,信用降入谷底,政府隨意增發(fā)美元,導致物價飛速上漲,中本聰對這種中心機構隨意影響市場的現(xiàn)象十分不滿,他想建立一個無需中心機構參與的金融系統(tǒng),重塑金融秩序,即將貨幣去中心化,所以他在2008年10月31日發(fā)布了比特幣白皮書,即《比特幣:一種點對點的現(xiàn)金支付系統(tǒng)》, 并在次年(2009年1月3日)發(fā)布了首個比特幣系統(tǒng)客戶端,公諸于世,最初比特幣系統(tǒng)僅有幾個人共同使用,且由中本聰自己負責維護代碼,后期隨著比特幣社區(qū)人才的加入,中本聰逐漸隱退,從此銷聲匿跡,將所有維護工作交給社區(qū)人員,現(xiàn)在比特幣有一個專業(yè)的核心開發(fā)團隊維護,社區(qū)良性發(fā)展。
說說比特幣系統(tǒng):
比特幣系統(tǒng)是一個開源的軟件,它對所有人都是開放的,每個人都可以下載并運行,只要在上面創(chuàng)立賬號,每個人都可以參與到比特幣的交易中來,包括接收和發(fā)送比特幣。
我們都知道比特幣系統(tǒng)是一個電子交易系統(tǒng),既然存在交易,那么就一定需要貨幣媒介,在比特幣系統(tǒng)里面,起到流通媒介的貨幣我們稱之為比特幣(BTC),那么它從哪里來呢?比特幣系統(tǒng)是去中心化的,沒有中心發(fā)行貨幣機構,那它到底如何產生呢? 對此,比特幣系統(tǒng)有一個獨特的發(fā)行比特幣機制,即挖礦,挖礦使得比特幣從無到有的產生,并且比特幣系統(tǒng)制定了一個挖礦產生BTC數(shù)量的遞減規(guī)則,隨著挖礦的進行,貨幣持續(xù)發(fā)行量逐漸減少,最終完成全部比特幣的發(fā)行工作,使系統(tǒng)內比特幣數(shù)量穩(wěn)定在一個2100萬這個數(shù)值,且永不增發(fā)。
至此我們了解到比特幣的產生來自于挖礦,挖礦又是什么?誰負責挖礦?想深入了解比特幣網絡,我們需要先了解幾個概念。
說說比特幣的相關概念:
節(jié)點:每一個運行比特幣客戶端的設備都是一個節(jié)點,節(jié)點與節(jié)點間互聯(lián),同步數(shù)據,從而構成整個比特幣網絡
礦工:每個擁有強大計算能力的節(jié)點都可以成為礦工,他們通過運行比特幣的挖礦程序進行挖礦
挖礦:由礦工執(zhí)行挖礦,礦工在設備上(也可能是專業(yè)的挖礦設備)上運行一個程序,這個程序會拼命的找一個滿足要求的數(shù)字,如果找到了,那么這個礦工就有會爭取到記賬的權利,有權對網絡中存在的轉賬交易進行打包,并且記錄到賬本中,進而得到比特幣獎勵,這個過程很像開采埋藏在地底下礦物的過程,所以我們稱之為挖礦,并且該過程沒有捷徑可走,從而有效避免了作弊的可能
算力:算力即計算的能力,上面說了,挖礦要運行計算程序,找到目標數(shù)字,這個算力就是礦工設備的計算能力,即每秒鐘能做多少次運算查找,查找這個數(shù)字的過程是運行一個哈希算法(一個密碼學算法),我們稱之為“哈希碰撞”,算力的單位是hash/s,即每秒種能碰撞多少次,算力越強,計算速度越快,獲得記賬權的幾率就越大
共識機制:是指被整個區(qū)塊鏈網絡共同認可的、能夠讓陌生節(jié)點間達成共同認可的規(guī)則,只要節(jié)點按照這個規(guī)則做事,做出來的結果就會得到對方的認可,從而達到彼此信任的目的。比特幣網絡使用的共識機制是POW(Proof of Work,工作量證明),上述所說的比特幣挖礦過程就是POW共識機制,共識機制還有很多其他的方式,如POS(Proof of stake,權益證明),DPOS(Delegated Proof of stake,股份授權證明機制)等等
區(qū)塊,區(qū)塊鏈:所謂區(qū)塊就是賬本的一頁,里面記錄了在一個時間段內(比特幣系統(tǒng)10分鐘出一個區(qū)塊)整個比特幣系統(tǒng)產生的所有交易,每個區(qū)塊被打上時間戳(時間戳就是把產生這個區(qū)塊的具體時間),按照嚴格的先后順序,連接起來,形成一個賬本,這個賬本就是”區(qū)塊鏈“
介紹的概念比較多,我們整理一份導圖,梳理一下:
現(xiàn)在我們模擬一下整個交易流程,以方便大家理解比特幣系統(tǒng):
Alice是一個客戶,她想買一杯咖啡,向Bob支付0.1個比特幣,具體過程如下:
Alice登錄自己的錢包(比特幣客戶端,或者其他比特幣錢包),輸入對方Bob的地址(相當于銀行卡號),輸入轉賬金額0.1BTC,選擇交易手續(xù)費(手續(xù)費可以為零,那么這條交易被寫入區(qū)塊鏈的優(yōu)先級會降低,轉賬就會被延遲),點擊發(fā)送,那么這條交易就會被發(fā)送到比特幣網絡中去,當某個礦工收到這筆交易之后,會先校驗一下這筆交易的有效性(校驗過程我們后續(xù)再講),當確定這是一筆有效的交易之后,會把這筆交易暫存到本地的“待確認交易池”中,同時將這筆交易廣播到其他節(jié)點,每一個節(jié)點都可以獨立驗證這筆交易的有效性,然后再向外傳播,通過這種P2P網絡,這筆交易迅速的在整個網絡中發(fā)布。當一個新的挖礦周期開始時(10分鐘),礦工會從“待確認交易池”中取出合適的交易,將交易打包,隨即開始挖礦,即做哈希碰撞,試圖最先找到那個符合條件的目標數(shù)字,一旦某個礦工A算出這個數(shù)值,礦工A便向整個網絡公布結果,所有其他礦工收到這條消息后,立刻停止運算,驗證這個數(shù)值是否有效,當其他節(jié)點確認該數(shù)值有效后,礦工A得到記賬權,將他打包的區(qū)塊添加到區(qū)塊鏈上,同時獲得新生的比特幣獎勵,整個網絡同步最新的賬本,隨即進入下一輪挖礦競爭中去,循環(huán)往復。
當包含Alice的這筆轉賬的區(qū)塊被礦工寫入到區(qū)塊鏈之后,Bob的賬戶中便會收到Aclie的轉賬。實際網絡中,需要6個區(qū)塊確認之后,Bob才能使用這筆轉賬,這是比特幣系統(tǒng)為了安全而設置的限制,我們后續(xù)再講。
同樣,我們畫一個圖,便于理解: