區塊鏈是什麼一圖看懂
A. 區塊鏈是什麼意思
什麼是區塊鏈
區塊鏈本質上是一個分布式賬本技術。如果以數學函數來類比的話,我們可以將分布式網路、共識機制、去中心化、加密算祛、智能合約、許可權許可、價值和資產等要素理解為函數中的變數或因子。這些變數和因子的有機組合形成了區塊鏈有別於傳統技術的些新的技術特徵。 在對 區塊鏈進行更加深入的技術解 讀前,我們需要先對區塊鏈中的一些核心概念進行梳理 。
更多解釋:網頁鏈接
B. 簡單易懂地介紹什麼是區塊鏈
區塊鏈是一種按照時間順序將數據區塊以順序相連的方式組合成的一 種鏈式數據結構, 並以密碼學方式保證的不可篡改和不可偽造的分布式賬本。廣義來講,區塊鏈技術是利用塊鏈式數據結構來驗證與存儲數據、利用分布式節點共識演算法來生成和更新數據、利用密碼學的方式保證數據傳輸和訪問的安全、利用由自動化腳本代碼組成的智能合約來編程和操作數 據的一種全新的分布式基礎架構與計算範式。
比特幣、萊特幣、普銀、以太幣等數字加密貨幣的底層技術都是區塊鏈,他們都只是區塊鏈的一種應用。
C. 區塊鏈是什麼意思
是一種數據結構(棧和隊列也是一種數據結構),既然他是一種數據結構,那區塊鏈的作用自然也就不言而喻了:組織並存儲數據。剩下的一些定語如「去中心化」、「分布式」這些無非就是對這種數據結構的修飾罷了。比特幣就是應用這種技術製作的數字貨幣。相信很多人都會想到什麼去中心化、分布式、不可篡改之類的名詞。說實話我剛開始由於姿勢水平不夠看到這些名詞的時候也是一頭霧水,《區塊鏈技術發展現狀與展望》一文給出如下定義:狹義來講,區塊鏈是一種按照時間順序將數據區塊以鏈條的方式組合成特定數據結構, 並以密碼學方式保證的不可篡改和不可偽造的去中心化共享總賬(Decentralized shared ledger),能夠安全存儲簡單的、有先後關系的、能在系統內驗證的數據。廣義的區塊鏈技術則是利用加密鏈式區塊結構來驗證與存儲數據、利用分布式節點共識演算法來生成和更新數據、利用自動化腳本代碼(智能合約)來編程和操作數據的一種全新的去中心化基礎架構與分布式計算範式。想要形成一個鏈,那總得有頭吧,鏈頭的區塊學名叫做創世區塊(Genesis Block)。前一個區塊稱為後一個區塊的父區塊,反之則稱為子區塊。所以,其實區塊鏈就長上面那樣,沒什麼神秘的。區塊鏈的技術原理並不復雜,但是他的『社會意義』卻是巨大的。區塊鏈本質上是一種解決信任問題、降低信任成本的技術方案,其目的就是為了去中心化。
好了,這里又出現了一個新的概念,去中心化?這個名詞只要一提到區塊鏈就一定會被提到,所以你一定想知道去中心化到底是什麼。不急,在談去中心化之前,我們先談一下另一個詞——信任。1. 挖礦
什麼是挖礦?每增加一筆交易,即形成一個區塊的過程,就是所謂的挖礦。2. 廣播如果我們想要新增一筆交易(也就是在區塊鏈中新增一個區塊),我們需要廣播到整個區塊鏈網路中,讓所有的節點都承認這條記錄 。區塊鏈的廣播機制
下圖畫出了區塊鏈廣播機制的一個流程:節點A收到一個區塊,對其進行驗證並將其廣播給其附近的區塊;節點B收到inv消息後,如果他之前沒有接收過這個區塊,則向節點A發送一個getdata消息;
節點A收到getdata消息後,就會把區塊和交際記錄的具體信息發送給節點B。此時節點B也就收到了一個區塊,重復1、2、3操作給其附近的區塊的。3. 記錄
一旦A節點新增一條記錄並廣播到網路中,網路中的其他節點如B、C、D等都會在自己的小本本上新增這條記錄。一旦記錄,之後就不可撤銷,且不能隨意銷毀。
D. 區塊鏈是什麼如何簡單易懂地介紹區塊鏈
很多人不知道區塊鏈是什麼,這邊給大家詳細的介紹一下,區塊鏈就是顛覆舊模式的新技術,就像人們容易忽視看不見卻不可或缺的氧氣一樣,人們往往忽視了市場經濟中至關重要的東西,那就是信任。沒有信任,任何交易都無法成立。
此外不同的種族、民族、文化、宗教信仰等,會形成信任鴻溝。由於陌生人之間缺乏相互理解和必要的信任,交易很難發生。市場經濟在陌生人中大量出現。市場經濟的產生和發展在於一種新機制的誕生,它解決了陌生人之間的信任問題。
區塊鏈的概念最早是在2008年由比特幣創始人中本聰撰寫的論文中提出的,區塊鏈可以理解為一種公共會計的技術方案,所有數據都將公開透明,不需要中央伺服器作為信任中介,從而在技術層面上保證信息的真實性、不變性和可信度,數據的不變性非常重要。
由於區塊鏈具有大規模擴展、數據公開透明的技術特點,並且由於每個客戶端的數據都是一致的,即使部分客戶端被破壞,也不會影響數據安全的可靠性,尤其是可以有效解決陌生人之間的信任問題,因此這項技術可以擴展到所有可以數字化的領域,如數字貨幣、支付清算、數字票據、權益證明、徵信、政務服務、病歷等,如果區塊鏈技術發達了,未來將與大家息息相關。
E. 區塊鏈指的是什麼
區塊鏈是分布式數據存儲、點對點傳輸、共識機制、加密演算法等計算機技術的新型應用模式。
區塊鏈的實質很簡單:它是一個由人來制定協議規則,由分布式網路的各個節點來執行規則,共同維護網路狀態的一個檔案庫。
與傳統的賬本相比,區塊鏈有更神奇的地方,賬本上的交易能夠自動地驗證,賬本的狀態能夠自動地確認,形成共識。賬頁上的交易都能夠向前追溯,提供透明性和可審計性。
區塊鏈技術的基本特點
1、分布式資料庫
區塊鏈上的每一方都可以訪問整個資料庫及其完整的歷史記錄。沒有單一方控制數據或信息。每一方都可以直接驗證其交易合作夥伴的記錄,而無需中間人。
2、對等傳輸
通信直接在對等體之間發生,而不是通過中心節點。每個節點存儲並轉發信息到所有其他節點。
3、透明的匿名性
任何有權訪問系統的用戶都可以看到每個事務及其關聯值。區塊鏈上的每個節點或用戶都有一個唯一的30以上的字母、數字組成的地址,用於標識自身。
4、記錄的不可逆性
一旦在資料庫中輸入事務並更新了帳戶,則不能更改記錄,因為它們鏈接到它們之前的每個交易記錄。
F. 什麼是區塊鏈通俗易懂解釋
區塊鏈其實就相當於一個去中介化的資料庫,是由一串數據塊組成的。它的每一個數據塊當中都包含了一次比特幣網路交易的信息,而這些都是用於驗證其信息的有效性和生成下一個區塊的。
狹義的來講,區塊鏈是就是一種按照時間順序來將數據區塊以順序相連的方式組合成的一種鏈式數據結構,並以密碼學方式保證的不可篡改和不可偽造的分布式賬本。
而從廣義來講,區塊鏈其實是一種分布式基礎架構與計算方式,它是用於保證數據傳輸和訪問的安全的。
區塊鏈分類
1、公有
公有區塊鏈(Public Block Chains)是指:世界上任何個體或者團體都可以發送交易,且交易能夠獲得該區塊鏈的有效確認,任何人都可以參與其共識過程。公有區塊鏈是最早的區塊鏈,也是應用最廣泛的區塊鏈,各大bitcoins系列的虛擬數字貨幣均基於公有區塊鏈,世界上有且僅有一條該幣種對應的區塊鏈。
2、聯合
行業區塊鏈(Consortium Block Chains):由某個群體內部指定多個預選的節點為記賬人,每個塊的生成由所有的預選節點共同決定(預選節點參與共識過程),其他接入節點可以參與交易,但不過問記賬過程(本質上還是託管記賬,只是變成分布式記賬,預選節點的多少,如何決定每個塊的記賬者成為該區塊鏈的主要風險點),其他任何人可以通過該區塊鏈開放的API進行限定查詢。
G. 剛剛了解,誰能告訴我區塊鏈是什麼通俗解釋一下區塊鏈技術的方法
大家共同記賬的方式,也被稱為「分布式」或「去中心化」,因為人人都記賬,且賬本的准確性由程式演算法決定,而非某個權威機構。
這就是區塊鏈,核心講完了,區塊鏈就這么簡單,一個共同記賬的賬本
區塊鏈技術六大核心演算法:
區塊鏈核心演算法一:拜占庭協定
拜占庭的故事大概是這么說的:拜占庭帝國擁有巨大的財富,周圍10個鄰邦垂誕已久,但拜占庭高牆聳立,固若金湯,沒有一個單獨的鄰邦能夠成功入侵。任何單個鄰邦入侵的都會失敗,同時也有可能自身被其他9個鄰邦入侵。拜占庭帝國防禦能力如此之強,至少要有十個鄰邦中的一半以上同時進攻,才有可能攻破。然而,如果其中的一個或者幾個鄰邦本身答應好一起進攻,但實際過程出現背叛,那麼入侵者可能都會被殲滅。於是每一方都小心行事,不敢輕易相信鄰國。這就是拜占庭將軍問題。
區塊鏈核心演算法二:非對稱加密技術
在上述拜占庭協定中,如果10個將軍中的幾個同時發起消息,勢必會造成系統的混亂,造成各說各的攻擊時間方案,行動難以一致。誰都可以發起進攻的信息,但由誰來發出呢?其實這只要加入一個成本就可以了,即:一段時間內只有一個節點可以傳播信息。當某個節點發出統一進攻的消息後,各個節點收到發起者的消息必須簽名蓋章,確認各自的身份。
區塊鏈核心演算法三:容錯問題
我們假設在此網路中,消息可能會丟失、損壞、延遲、重復發送,並且接受的順序與發送的順序不一致。此外,節點的行為可以是任意的:可以隨時加入、退出網路,可以丟棄消息、偽造消息、停止工作等,還可能發生各種人為或非人為的故障。我們的演算法對由共識節點組成的共識系統,提供的容錯能力,這種容錯能力同時包含安全性和可用性,並適用於任何網路環境。
區塊鏈核心演算法四:Paxos 演算法(一致性演算法)
Paxos演算法解決的問題是一個分布式系統如何就某個值(決議)達成一致。一個典型的場景是,在一個分布式資料庫系統中,如果各節點的初始狀態一致,每個節點都執行相同的操作序列,那麼他們最後能得到一個一致的狀態。為保證每個節點執行相同的命令序列,需要在每一條指令上執行一個「一致性演算法」以保證每個節點看到的指令一致。一個通用的一致性演算法可以應用在許多場景中,是分布式計算中的重要問題。 節點通信存在兩種模型:共享內存和消息傳遞。Paxos演算法就是一種基於消息傳遞模型的一致性演算法。
區塊鏈核心演算法五:共識機制
區塊鏈共識演算法主要是工作量證明和權益證明。拿比特幣來說,其實從技術角度來看可以把PoW看成重復使用的Hashcash,生成工作量證明在概率上來說是一個隨機的過程。開采新的機密貨幣,生成區塊時,必須得到所有參與者的同意,那礦工必須得到區塊中所有數據的PoW工作證明。與此同時礦工還要時時觀察調整這項工作的難度,因為對網路要求是平均每10分鍾生成一個區塊。
區塊鏈核心演算法六:分布式存儲是一種數據存儲技術,通過網路使用每台機器上的磁碟空間,並將這些分散的存儲資源構成一個虛擬的存儲設備,數據分散的存儲在網路中的各個角落。所以,分布式存儲技術並不是每台電腦都存放完整的數據,而是把數據切割後存放在不同的電腦里。就像存放100個雞蛋,不是放在同一個籃子里,而是分開放在不同的地方,加起來的總和是100個。想了解更多可以多利用網路搜索,網路搜索結果-小知識
H. 漫畫圖解 什麼是區塊鏈
漫畫圖解:什麼是區塊鏈
什麼是區塊鏈?
區塊鏈,英文 Blockchain,本質上是一種去中心化的分布式資料庫。任何人只要架設自己的伺服器,接入區塊鏈網路,都可以成為這個龐大網路的一個節點。
區塊鏈既然本質是資料庫,裡面究竟存儲了什麼東西呢?讓我們來了解一下區塊鏈的基本單元:區塊(Block)。
一個區塊分為兩大部分:
1.區塊頭
區塊頭裡面存儲著區塊的頭信息,包含上一個區塊的哈希值(PreHash),本區塊體的哈希值(Hash),以及時間戳(TimeStamp)等等。
2.區塊體
區塊體存儲著這個區塊的詳細數據(Data),這個數據包含若干行記錄,可以是交易信息,也可以是其他某種信息。
剛才提及的哈希值又是什麼意思呢?
想必大家都聽說過MD5,MD5就是典型的哈希演算法,可以把一串任意長度的明文轉化成一串固定長度(128bit)的字元串,這個字元串就是哈希值。
而在我們的區塊鏈中,採用的是一種更為復雜的哈希演算法,叫做SHA256。最新的數據信息(比如交易記錄)經過一系列復雜的計算,最終會通過這個哈希演算法轉化成了長度為256bit的哈希值字元串,也就是區塊頭當中的Hash,格式如下:
區塊與Hash是一一對應的,Hash可以當做是區塊的唯一標識。
不同的區塊之間是如何進行關聯的呢?依靠Hash和PreHash來關聯。每一個區塊的PreHash和前一個區塊的Hash值是相等的。
為什麼要計算區塊的哈希值呢?
既然區塊鏈是一個鏈狀結構,就必然存在鏈條的頭節點(第一個區塊)和尾節點(最後一個區塊)。一旦有人計算出區塊鏈最新數據信息的哈希值,相當於對最新的交易記錄進行打包,新的區塊會被創建出來,銜接在區塊鏈的末尾。
新區塊頭的Hash就是剛剛計算出的哈希值,PreHash等於上一個區塊的Hash。區塊體的Data存儲的是打包前的交易記錄,這部分數據信息已經變得不可修改。
這個計算Hash值,創建新區塊的過程就叫做挖礦。
用於進行海量計算的伺服器,叫做礦機。
操作計算的工作人員,叫做礦工。
計算哈希值究竟難在哪裡?咱們來做一個最粗淺的解釋,哈希值計算的公式如下:
Hash = SHA-256(最後一個區塊的Hash + 新區塊基本信息 + 交易記錄信息 + 隨機數)
其中,交易記錄信息也是一串哈希值,它的計算涉及到一個數據結構 Merkle Tree。有興趣的小夥伴可以查閱相關資料,我們暫時不做展開介紹。
這里關鍵的計算難點在於隨機數的生成。猥瑣的區塊鏈發明者為了增大Hash的計算難度,要求Hash結果的前72bit必須都是0,這個幾率實在是太小太小。
由於(最後一個區塊的Hash + 新區塊基本信息 + 交易記錄信息)是固定的,所以能否獲得符合要求的Hash,完全取決於隨機數的值。挖礦者必須經過海量計算,反復生成隨機數進行「撞大運」一般的嘗試,才有可能得到正確的Hash,從而挖礦成功。
同時,區塊頭內還包含著一個動態的難度系數,當全世界的硬體計算能力越來越快的時候,區塊鏈的難度系數也會水漲船高,使得全網平均每10分鍾才能產生出一個新區塊。
小夥伴們明白挖礦有多麼難了吧?需要補充的是,不同的區塊鏈應用在細節上是不同的,這里所描述的挖礦規則是以比特幣為例。
區塊鏈的應用
比特幣(BitCoin)的概念最初由中本聰於2008年提出,而後根據這一思路設計發布了開源軟體以及建構其上的P2P網路。比特幣是一種P2P形式的數字貨幣。點對點的傳輸意味著一個去中心化的支付系統。
什麼是P2P網路呢?
傳統的貨幣都是由中央銀行統一發行,所有的個人儲蓄也是由銀行統一管理,這是典型的中心化系統。
而比特幣則是部署在一個全世界眾多對等節點組成的去中心化網路之上。每一個節點都有資格對這種數字貨幣進行記錄和發行。
至於比特幣底層的數據存儲,正是基於了區塊鏈技術。比特幣的每一筆交易,都對應了區塊體數據中的一行,簡單的示意如下:
交易記錄的每一行都包含時間戳、交易明細、數字簽名。
表格中只是為了方便理解。實際存儲的交易明細是匿名的,只會記錄支付方和收款方的錢包地址。
至於數字簽名呢,可以理解為每一條單筆交易的防偽標識,由非對稱加密演算法所生成。
接下來說一說比特幣礦工的獎勵:
比特幣協議規定,挖到新區塊的礦工將獲得獎勵,從2008年起是50個比特幣,然後每4年減半,目前2018年是12.5個比特幣。流通中新增的比特幣都是這樣誕生的,也難怪大家對挖掘比特幣的工作如此趨之若鶩!
區塊鏈的優勢和劣勢
區塊鏈的優勢:
1.去中心化
區塊鏈不依賴於某個中心節點,整個系統的數據由全網所有對等節點共同維護,都可以進行數據的存儲和檢驗。這樣一來,除非攻擊者黑掉全網半數以上的節點,否則整個系統是不會遭到破壞的。
2.信息不可篡改
區塊內的數據是無法被篡改的。一旦數據遭到篡改哪怕一丁點,整個區塊對應的哈希值就會隨之改變,不再是一個有效的哈希值,後面鏈接的區塊也會隨之斷裂。
區塊鏈的劣勢:
1.過度消耗能源
想要生成一個新的區塊,必須要大量伺服器資源進行大量無謂的嘗試性計算,嚴重耗費電能。
2.信息的網路延遲
以比特幣為例,任何一筆交易數據都需要同步到其他所有節點,同步過程中難免會受到網路傳輸延遲的影響,帶來較長的耗時。
幾點補充:
1.本漫畫部分內容參考了阮一峰的博文《區塊鏈入門教程》,感謝這位大神的科普。
2.由於篇幅有限,關於Merkle Tree 和 非對稱加密 的知識暫時沒有展開細講,有興趣的小夥伴們可以查閱資料進行更深一步的學習。
I. 什麼是區塊鏈
用最簡單的術語來說,區塊鏈是一個分布式分類賬。
要理解這意味著什麼,我們首先要看一下它的對立面:一個集中的分類賬。因為區塊鏈技術是從金融開始的,下面我們也將使用銀行作為例子進行介紹。
以下是我們使用銀行借記卡交易的過程:
你可以在商店刷卡購買商品。
商家向你的銀行發送賬單,以獲得商定的金額。
你的銀行會驗證你是否可能授權購買。
銀行將錢匯給商家。
最後,銀行在其分類賬中記錄了這些信息。
這里涉及很多技術,但基本上就是這樣。最後一步很重要 - 銀行記錄了客戶所做的所有交易。這個分類賬一直回到銀行做的第一筆交易。
該分類賬由銀行保管,維護和監管。你可以在自己的在線銀行帳戶中閱讀,但無法對其進行更改。銀行完全控制。如果它決定做出改變,那麼你無能為力。
至關重要的是,如果黑客能夠訪問銀行的分類賬,那就可能導致很多問題。他們可以更改帳戶余額,使其看起來像某些交易從未發生過,等等。
這就是分布式賬本如此酷的原因。
區塊鏈網路可視化
如果銀行在分布式分類賬上運作,銀行的每個成員都會有一份分類賬的副本,每當銀行的任何成員進行購買時,他們都會告訴銀行的其他所有成員。
每個成員都將驗證事務並將其添加到分類帳(添加的記錄稱為「塊」)。這有一些重要的好處,因為沒有可以操縱記錄的集中許可權。黑客訪問一個分類帳不會是一個大問題,因為其他分類帳可以輕松驗證它。
另一方面,它需要大量的工作。簡而言之,第二個系統是區塊鏈(至少在財務方案中)。
如上所述,區塊鏈是一個分散的交易清單。如果我發送小明2個比特幣,我會向網路中的每個人發送一條消息,說「我正在發送小明2個比特幣」,他們都會記錄交易。
區塊鏈的未來,它將如何改變我們的生活?
關於區塊鏈,有一點很重要,它是公共資源,沒有人真正擁有它,因為每個人都擁有它。
區塊鏈不僅僅是科幻小說。我們不需要理解這項技術背後的機制,但你需要明白,它在未來20年裡可能會徹底改變我們的生活。
這聽起來很大膽,但請記住,20年前,我們還在Netscape上瀏覽互聯網,使用最先進的摩托羅拉翻蓋手機,購買我們的第一台DVD播放機。當時,如果我們幻想電腦可以拿在手裡,在上面還可以買車、付款、看電影,那一定會被認為是天方夜譚。
雖然區塊鏈的影響可能不像互聯網那樣明顯,也不如手機那麼有形,但區塊鏈將切實解決日常生活中的諸多煩惱。比如中介坑人、交易拖延等。在我們現在的生活中,中間商隨處可見,我們理所當然地認為他們是生活的一部分。如果有一天,這些中介不復存在,你會發現這個世界將會變成另外一個樣子。
幻想一下,到2040年,區塊鏈或將成為一種成熟的、應用廣泛的技術。當某一天,你離不開區塊鏈就像現在離不開互聯網一樣,你就會驚覺這種去中心化的記賬技術已化繁就簡,成為你生活方式的一部分