關于比特幣,我們應該如何理解

2018-05-02    閱讀次數:86    區塊鏈

區塊鏈大火,讓我等吃瓜群眾猝不及防。雖然網上文章鋪天蓋地,比如“一圖看懂”系列,但仍然雞同鴨講,莫衷一是,并不知其所以然,頂多知道是個同步賬本。作為一篇學習總結,我希(盡)望(力)本文能作為一篇普及貼,也能讓其他人看懂。所以這里不會深入探討技術原理,大佬們請繞過。

 


三大問題與解決方案

比特幣是世界上第一個通過密碼學,而非中央銀行發行的電子加密貨幣。因為其發行總量固定,無中央銀行干預,讓許多”民主人士“認為這是極為先進的民主思想技術革命。然而去中心化的系統帶來了一些新問題:

  • 沒有政府背書和資產擔保,貨幣信任、交易真實性成了問題。

  • 每個人都有權了解這個世界在發生什么,信息一旦變化,所有數據庫需要同步更新,平等對稱。

  • 沒有集中決策,為了信息對稱,如何達成共識,變成了難題。

三大問題“交易信任”、“數據對稱”、“共識達成”

解決辦法“非對稱加密”、“P2P網絡”、“共識機制”

中本聰用以上三種方法,構架出了區塊鏈技術結構,讓比特幣的發行流通構想得以實現。


什么是比特幣  

比特幣(bitcoin)誕生于2008年的一篇論文《A Peer-to-Peer Electronic Cash System》并規定了一些基礎協議:

fetch_filec4de457d217a0446880d7b992ca9e81c-picture

圖:比特幣協議特點

  • 比特幣總量為2100萬枚

  • 平均10分鐘誕生一個區塊。

  • 被寫入區塊的交易按照手續費高低排優先級

  • 區塊的大小只有 1MB,一筆交易大概是500字節左右,因此一個區塊最多只能包含2000多筆交易。

  • 挖到新區塊的礦工將獲得獎勵,一開始(2008年)是50個比特幣,然后每4年減半,目前(2018年)是12.5個比特幣

  • 一筆交易確認需要等待6個區塊

比特幣網絡每10分鐘,最多只能處理2000多筆交易,換算一下,就是處理速度為3~7筆/秒。

也就是說,比特幣區塊鏈每秒最多只能處理7筆交易,要是交易數據再大點,可能連7筆都達不到。而支付寶一秒處理12萬筆交易。這本應在1秒處理的12萬筆交易,比特幣需要10小時。

每4年獎勵減半,那么到了2140年,礦工將得不到任何獎勵,比特幣的數量也將停止增加。這時,礦工的收益就完全依靠交易手續費了。

這些數據是怎么確定的,眾說紛紜。比如一個區塊鏈的大小是1MB,中本聰在設計之初也并未預料到會發展到今天的規模,其本身是一個構想的實驗。很多數據并未驗證,甚至可以說是拍腦袋定的。

 


 讓交易被信任——非對稱加密 

fetch_filee779f1d9c5c40287f3e5154c4c10a374-picture

比特幣的基礎是加密學,如果不知道一筆錢從哪來,是誰的,誰敢拿它當貨幣呢?非對稱加密從技術上解決了可信性問題。這也是這一類數字憑證被稱為"加密貨幣"的原因。

所謂非對稱加密,其實很簡單:加密和解密需要一把公鑰和一把私鑰。

交易的第一件事就是你必須擁有自己的公鑰和私鑰(任何交易所開戶或錢包類網站都會給)。

Artboard Copy 5.png

圖:比特幣交易加密過程通俗版

驗證一筆交易是否有效,需要兩步:

1.FROM(誰發送的,包括兩部分)
Previous tx: 這筆錢的來源賬單的id, 驗證資金來源。
scriptSig: 這筆交易的簽名,就是把交易用私鑰做hash

2.TO(誰接受,包括兩部分)
Value: 要發多少
scriptPubKey: 接收方的公鑰,也就是比特幣地址

對于比特幣,錢不是支付給個人的,而是支付給某一個地址,沒有人知道,那些私鑰和地址背后的主人是誰——匿名性。

 


什么是區塊鏈  

區塊鏈(blockchain)是比特幣使用的一種特殊的數據庫,是比特幣存在的基礎。任何人都可以架設服務器,加入區塊鏈網絡,成為一個節點。

fetch_file8a7c8550d1de11765382520ab3960b6b-picture

圖:區塊鏈結構示意圖

 

區塊鏈由一個個區塊(block)組成。區塊很像數據庫的記錄,每次寫入數據,就是創建一個區塊。每個區塊包含兩個部分,區塊頭和區塊體。

區塊頭(Head):記錄當前區塊的元信息。其中包含:

  •     生成時間

  •     上一個區塊的 Hash

  •     區塊體的Hash

區塊體(Body):實際交易數據

其中比較重要的概念是“Hash”。所謂 Hash 是對任意內容,計算出一個長度相同的特征值。而且保證,只要原始內容不同,對應的 Hash 一定是不同的。比特幣區塊用的SHA256加密算法。

  • 每個區塊的 Hash 都是不一樣的,通過 Hash 標識區塊。

  • 如果區塊的內容變了,它的 Hash 一定會改變。

fetch_file60bbe5432b9cf77c00105588f63ecad8-picture

圖:區塊結構示意圖

 


 如何把交易寫入區塊鏈——“挖礦” 

“挖礦”指的是把網絡上待確認的交易寫入新區塊,并獲得比特幣獎勵的過程。

“礦工”是用GPU等硬件設備進行數據計算的一群人。正是這群人,把交易者的數據一筆一筆記入帳中。“挖礦”的機器叫“礦機”;成規模“挖礦”的場地叫“礦廠”。

回顧挖礦歷史,比特幣挖礦總共經歷了以下五個時代:CPU(20MHash/s)→GPU(400MHash/s)→FPGA(25GHash/s)→ASIC(3.5THash/s)→大規模集群挖礦(3.5THash/s*X)。

fetch_filef7a6fb786bcd7fda239b100aa741fd57-picture

圖:礦廠

 

“挖礦”道理其實很簡單,想要挖到新區塊必算出符合要求的哈希值。你可能會有一個疑問,計算一個哈希值為什么這么難?原來正確的哈希值是有一定要求的:

fetch_file34c9302fe0fe0715aed06155faa2b6d6-picture

圖:515798號區塊信息

 

1.Difficulty

區塊頭包含一個難度系數(difficulty),這個值決定了計算 Hash 的難度。舉例來說,第515798個區塊的難度系數是 3462542391191.56,而第100000個區塊鏈難度可只有14484.162361。

2.Target

區塊鏈協議規定,使用一個常量除以難度系數,可以得到目標值(target)。

Target = Targetmax/ Difficulty 顯然,難度系數越大,目標值就越小。

Hash 的有效性跟目標值密切相關,只有小于目標值的Hash 才是有效的。這就是采礦如此之慢的根本原因。

3.Nonce

區塊頭里面還有一個 Nonce 值,記錄了 Hash 重算的次數。

第 515798 個區塊的 Nonce 值是213587466,即計算了 2.1 億次,才得到了一個有效的 Hash,該區塊才能加入區塊鏈。

4.難度系數的動態調節

實際上,新的區塊有時候幾分鐘就可能被算出來,有的可能需要幾小時。為了保證新區塊在10分鐘左右的時間內產生,并且考慮到硬件設備的升級,中本聰將Difficulty每2016個區塊調整一次以保證新區塊平均產生時間在10分鐘。

 


挖礦的意外——分叉 

fetch_file0d3da65b364e95b95b0fae04109fec56-picture

圖:分叉示意圖

 

在挖礦的過程中,如果同時生成了兩個新區快,鏈接著同一個上級區塊,便形成了分叉。

如果發生這種狀況:認定率先達到6個新區塊的一條鏈為有效鏈(比特幣交易的六次確認)。即需要1小時左右。

 

一個很直觀的例子可以說明為何這種經濟博弈模式:

超市付款需要排成一隊,可能有人不守規矩要插隊。超市管理員會檢查隊伍,認為最長的一條隊伍是合法的,并讓不合法的分叉隊伍重新排隊。只要大部分人不傻,就會自覺在最長的隊伍上排隊。

 


 讓信息對稱——P2P網絡結構 

P2P網絡保證每個人的信息同步,任何人都可以成為一個節點。每個節點都包含了整個區塊鏈(目前100G),并且節點之間時刻不停的同步信息。

當你發生了一筆交易。你所在的節點就會把這筆交易告訴另一個節點,直到傳遍整個網絡。“礦工”搜集各種新發生的交易,將他們寫入區塊鏈。一旦寫入成功,此“礦工”所在節點的區塊鏈就成了最新版本,其他節點會來復制新增的區塊,保證全網同步。

fetch_file4156205a0a5829e87c0a2a40b9b584e3-picture

圖:P2P節點分布全球,每個節點信息一致

 


 關于挖礦方法爭論——共識機制 

 

“挖礦”這種行為的本質是尋求達到某一共識,再把信息寫入區塊的勞動。這種共識決策其實不只比特幣所使用的一種方法。

目前主流共識機制目前有:

POW(Proof of Work)、POS (Proof of Stake)、DPOS(Delegated Proof of Stake)

1.POW(Proof of Work)

一句話介紹:干的快,收的越多。

工作量證明協議。比特幣所用共識機制。它要求發起者進行一定量的運算,也就意味著需要消耗計算機一定的時間。

優點:

1)算法簡單,容易實現;

2)節點間無需交換額外的信息即可達成共識;

3)破壞系統需要投入極大的成本;

缺點:

1)浪費能源;

2)區塊的確認時間難以縮短;

3)新的區塊鏈必須找到一種不同的散列算法,否則就會面臨比特幣的算力攻擊;

4)容易產生分叉,需要等待多個確認;

5)永遠沒有最終性,需要檢查點機制來彌補最終性;

2.POS (Proof of Stake)

一句話介紹:持有越多,獲得越多。

權益證明,最早在 Peercoin 系統中被實現,類似現實生活中的股東機制,擁有股份越多的人越容易獲取記賬權。在POW中,如果用戶花費2000美元購買硬件設備,當然會獲得兩倍算力來挖礦;同樣,在POS機制中投入兩倍的代幣作為押金,就有兩倍大的機會獲得產生新區塊的權利。

優點:

在一定程度上縮短了共識達成的時間;

不再需要大量消耗能源挖礦。

缺點:

還是需要挖礦,本質上沒有解決商業應用的痛點;

3.DPOS (Delegated Proof of Stake)

一句話介紹: 選出代表,高效運算

Dan Larimer發明的這種新共識算法被稱為股份授權證明機制(DPoS),應用于比特股和Steemit社區。

每個股東按其持股比例選定代表,每個股東將選票授予一名代表。獲票數最多的前100位代表加1位隨機代表按既定時間表輪流產生區塊。每名代表分配到一個時間段來生產區塊。所有的代表將收到等同于一個平均水平的區塊所含交易費的10%作為報酬。該模式可以每30秒產生一個新區塊,每次單人有序生產區塊在正常的網絡條件下區塊鏈分叉的可能性極其小,即使發生也可以在幾分鐘內得到解決。

優點:高效

缺點:整個共識機制還是依賴于代幣,很多商業應用是不需要代幣存在的。

 


 區塊鏈2.0——以太坊 

fetch_filec11fbc9bd764fd3ab55ad43ca443ce62-picture

為什么會有以太坊呢?它的創始人Vitalik Buterin在《以太坊白皮書》前言部分挑明:因為比特幣沒有賬戶狀態的概念;而且POW機制效能低,浪費大量時間和資源。而以太坊作為區塊鏈平臺將區塊鏈技術的發展帶入到 2.0 時代。

以太坊要實現的是一個內置了編程語言(Solidity)的區塊鏈協議,那么理論上任何區塊鏈應用都可以用這門語言進行定義,運行于以太坊的區塊鏈協議之上(該協議的意義與互聯網時代的 TCP/IP 協議相似)。這使得區塊鏈應用開發者們高效快速地開發頂層應用,變為可能。

以太坊涉及的問題非常多,很難一言蔽之。這里只對其地位和意義做簡要了解。如果感興趣可以登陸其官網:https://www.ethereum.org/

 ICO和其他電子加密貨幣 

fetch_file19ade9f056b783191871fd410ed44b7e-picture

圖:火幣pro上市幣種

目前交易所上市的電子加密貨幣已經不下1000種。那他們是什么?從哪來?什么是山寨幣,分叉幣,ICO?

山寨幣

是我們最初指除比特幣以外的加密貨幣。

分叉幣

是由主鏈分叉出來的新幣,比如比特幣BTC分叉的比特現金BCH。

ICO是Initial Coin Offering的簡稱

所有成功的數字貨幣以及區塊鏈項目無一不是社區項目。常見的ICO里,數字貨幣和區塊鏈項目向早期愛好者出售項目代幣。項目團隊通過ICO獲取技術開發和市場拓展資金;而項目愛好者通過ICO支持項目,同時也可在對應代幣進入交易市場后選擇交易退出。

可查的首個ICO來自于Mastercoin項目(現已更名為Omni),其在13年7月時在Bitcointalk(最大的比特幣和數字貨幣社區論壇)上宣布通過比特幣進行ICO眾籌,并生成對應的Mastercoin代幣并分發給到眾籌參與者。本質上來說這次ICO是一種以物換物的行為,即參與者用比特幣換得Mastercoin項目里的代幣。一開始ICO只是數字貨幣愛好者的一種社區行為,隨著數字貨幣以及區塊鏈的不斷發展開始被越來越多人接受并參與。絕大部分ICO都是通過比特幣或其他數字貨幣進行的。

幾個著名的ICO案例:

- 2013年7月,Mastercoin(現更名為Omni):可查的最早ICO項目,通過meta-protocol拓展比特幣功能,募集5000 BTC。

- 2013年12月,NXT(未來幣):首個完整的PoS區塊鏈,曾經神秘的開發者,持續發展的強大社區。ICO神話:募集21 BTC(是的你沒看錯,21BTC,約等于當時6000美元),市值峰值曾到達過1億美元。

- 2013年-2014年,Bitshares(比特股):曾經的“數字資產二代幣三劍客”之一(另外兩個為NXT和CounterParty),國內數字貨幣界口水之源,毀譽參半。其社區培養了國內大量早期ICO以及數字資產愛好者。

- 2014年7月,Ethereum(以太坊):ICO時募集3萬余個比特幣曾創下紀錄。將智能合約理念推進到極致的區塊鏈項目,讓全世界重新認識區塊鏈公有鏈的項目。近兩年最成功的ICO,也是至今為止除比特幣以外市值最高的數字貨幣/區塊鏈項目。近期由于TheDAO事件影響晴雨不定。

- 2015年3月,Factom(公正通):雙代幣設計,首提存在性證明的區塊鏈商業化以及由此導出的基金會與公司雙機構設置。

- 2016年3月,Lisk:以太坊挑戰者,利用側鏈的Dapp解決方案。

- 2016年5月,TheDAO:等值1.5億美元破世界紀錄的ICO眾籌,非典型ICO(其本身不是區塊鏈)。向世界大聲宣告智能合約時代到來后一個月即被黑客攻克,在歷史上刻下了深深的雙重驚嘆號 (該項目目前已經失敗)。

- 2017年6月, EOS (Enterprise Operation System) :為商用分布式應用設計的一款區塊鏈操作系統。 創始人是比特股創始人、DPOS發明者Dan Larimer,已經創造了一個新的ICO記錄——5天內籌集了1.85億美元。它是以以太坊為募集基礎的代幣。

 


這是個平等的世界嗎?

 

細心的觀眾可能已經發現,這套民主思想的技術,似乎并沒有那么公平。如果你有足夠資本建立礦場,將會持有大量的比特幣(尤其前期難度不高)。資本逐漸慢慢聚攏到算力集中的少數礦場的手里,形成馬太效應,去中心化效應減弱。比如現在的比特大陸(一度接近51%的算力),郭宏才也是這樣挖礦起家。現在挖礦已經不是小散戶玩的起的游戲了。

擴容問題

 

比特幣的區塊大小為1M,如果比特幣交易越來越多,很多交易就不會在發生后的第一個區塊被打包和確認,可能要等好幾個區塊,甚至更久。比特幣交易的擁堵導致了轉賬速度變慢,手續費也越來越高。

中本聰曾提出了在比特幣容量不夠用的時候應該怎樣進行擴容。白皮書發布之后,他自己在社區留言的第一個問題,就指出了比特幣未來的擴容隱患。


  THE END  

區塊鏈技術性強,技術分支也越來越多,這里也只聊了九牛一毛。

從業務上看,應用卻已經很多:網易星球、阿里的麻吉寶。然而目前給人的感覺都還是為了做區塊鏈而區塊鏈,需求的還沒有真正出現。目前德國、英國、日本等政府認可比特幣的價值,和此前加密貓的誕生,推著幣價一度走高。不過,區塊鏈和比特幣到底是鉆石還是郁金香,等待驗證還有很多。

  028-8453-1500  
幸运28走势分析软件