簡單易懂地介紹什麼是區塊鏈

時間 2021-07-24 00:12:53

1樓:

區塊鏈是一種按照時間順序將資料區塊以順序相連的方式組合成的一 種鏈式資料結構, 並以密碼學方式保證的不可篡改和不可偽造的分散式賬本。廣義來講,區塊鏈技術是利用塊鏈式資料結構來驗證與儲存資料、利用分散式節點共識演算法來生成和更新資料、利用密碼學的方式保證資料傳輸和訪問的安全、利用由自動化指令碼**組成的智慧合約來程式設計和運算元 據的一種全新的分散式基礎架構與計算正規化。

比特幣、萊特幣、普銀、以太幣等數字加密貨幣的底層技術都是區塊鏈,他們都只是區塊鏈的一種應用。

2樓:**騎士

以下為汪樂針對《區塊鏈是什麼,如何簡單易懂地介紹區塊鏈》的回答。

區塊鏈本質上是一個去中心化的分散式賬本資料庫(感謝@程劍宇指出:在與比特幣相關的區塊鏈應用中可使用這一術語,但區塊鏈技術可能並不包含「賬本」)。其本身是一串使用密碼學相關聯所產生的資料塊,每一個資料塊中包含了多次比特幣網路交易有效確認的資訊。

這是區塊鏈的定義,因此要逐步瞭解區塊鏈,我們需要一步步瞭解如下東西。

去中心化

先來考慮一箇中心化集中式處理的過程。你要在某寶上買一部手機,交易流程是:你將錢打給支付寶-支付寶收款後通知賣家發貨-賣家發貨-你確認收貨-支付寶把錢打給賣家。

圖1: 中心化集中式交易模式

在這個過程中,雖然你是在和賣家交易,但是這筆交易還牽扯到了除了你和賣家的第三方,即支付寶,你和賣家的交易都是圍繞支付寶。因此,如果支付寶系統出了問題便會造成這筆交易的失敗。並且雖然你只是簡單的買了一個手機,但是你和賣家都要向第三方提供多餘的資訊。

因此考慮極端情況,如果支付寶跑路了或者是拿了錢不卻不承認你的交易或者是支付寶所在的城市因為開g20把所有人都趕走了(?),那麼你就悲劇了。

而去中心化的處理方式就要顯得簡單很多,你只需要和賣家交換錢和手機,然後雙方都聲稱完成了這筆交易,就ok了。可以看出在某些特定情況下,去中心化的處理方式會更便捷,同時也無須擔心自己的與交易無關的資訊洩漏。其實如果只考慮兩個人的交易並不能把去中心化的好處完全展示出來,設想如果有成千上萬筆交易在進行,去中心化的處理方式會節約很多資源,使得整個交易自主化、簡單化,並且排除了被中心化**控制的風險。

去中心化是區塊鏈技術的顛覆性特點,它無需中心化**,實現了一種點對點的直接互動,使得高效率、大規模、無中心化**的資訊互動方式成為了現實。

當然,上述的例子有一個很大的潛在問題:沒有了權威的中心化**,怎樣保證每筆交易的準確性和有效性呢?比如:

如果沒有了權威的中心化**,張三某一天借了我100塊錢,但是不還錢還不承認怎麼辦?這裡就引出了區塊鏈的其它特性。

兩個基礎難題

在去中心化以後,整個系統中沒有了權威的中心化**,資訊的可信度和準確性便會面臨問題。

問題1:類兩軍問題

第一次聽說這個問題居然是在tcp的課上,大致說的是有兩個相距很遠的軍隊要傳遞資訊,紅軍派遣一個信使去跟藍軍說:「你他**把義大利炮拿出來!」。

藍軍收到資訊後又派了一個信使去紅軍說:「收到指令!」。

然後紅軍又派一個信使去藍軍說:「知道你收到指令了!」。

然後藍軍又派一個信使去紅軍說:「知道你知道我收到指令了!」。

然後紅軍又派一個信使去藍軍說:「知道你知道我知道你收到指令了!」……然後就沒完沒了了。

圖2:在分散式計算中在非同步系統和不可靠的通道上達到一致性是不可能的

在這種情況下,因為是點對點的通訊,雙方不可能在這種情況下達到資訊的一致性。嚴謹一點,就是「在分散式計算上,試圖在非同步系統和不可靠的通道上達到一致性是不可能的」。

問題2:拜占庭將軍問題

拜占庭羅馬帝國在軍事行動中,採取將軍投票的策略來決定是進攻還是撤退,也就是說如果多數人決定進攻,就上去幹。但是軍隊中如果有奸細(比如將軍已經反水故意亂投票,或者傳令官叛變擅自修改軍令),那怎麼保證最後投票的結果真正反映了忠誠的將軍的意願呢?拜占庭將軍問題反映到資訊交換領域中來,可以理解為在一個去中心的系統中,有一些節點是壞掉的,它們可能向外界廣播錯誤的資訊或者不廣播資訊,在這種情況下如何驗證資料傳輸的準確性。

區塊鏈技術的誕生

現在讓我們來一步一步在去中心化的系統中解決這些問題,見證區塊鏈技術雛形的誕生。

我們先來建立一個去中心化的系統,為了方便理解,我們來看一個簡單的去中心化借貸模型:如果a借了b 100塊錢,這個時候,a在人群中大喊「我是a,我借給了b 100塊錢!」,b也在人群中大喊「我是b,a借給了我100塊錢!

」,此時路人甲乙丙丁都聽到了這些訊息,因此所有人都在心中默默記下了「a借給了b100塊錢」。你看,這個時候一個去中心化的系統就建立起來了,這個系統中不需要銀行,也不需要借貸協議和收據,嚴格來說,甚至不需要人與人長久的信任關係(比如b突然又改口說「我不欠a錢!」,這個時候人民群眾就會站出來說「不對,我的小本本上記錄了你某天借了a100塊錢!

」)。圖3:去中心化借貸模型

可能你已經發現了,在上述的模型中,所謂的「100塊錢」已經不重要了。換句話說,任何東西都可以在這個模型中交換,甚至你可以憑空杜撰一個東西,只要大家承認,你就可以讓你杜撰的東西流通。比如:

我在人群中高喊一聲「我創造了10個查克拉!」,我甚至不需要知道查克拉是什麼,也不需要關心世界上是不是真的有查克拉,只要大家都聽到,然後在自己的小本本上記下「laiw3n有10個查克拉」,於是我就真的有100個查克拉了。從此以後,我便可以聲稱我給了某人1個查克拉,只要路人甲乙丙丁都收到並且承認了這一資訊,那我就算完成了這次交易,哪怕世界上沒有查克拉。

你現在腦海中是不是浮現出了三個字——「比特幣」?由於真正的區塊鏈和比特幣比我上述的模型複雜太多,細節也豐富太多,因此以下還是以查克拉舉例,畢竟本文是blockchain for babies.(笑)

假設過了很長一段時間,我憑空創造的查克拉已經在這個系統中流通了起來,大家都開始認可了查克拉。但是這個系統中一共就只有10個查克拉,於是有人動了壞心思,他在人群中高呼「我有10個查克拉!」怎麼辦?

大家是直接在本本上記下他有10個查克拉麼,這樣不是人人都可以偽造查克拉了麼?

為了防止這種現象發生,我決定在我創造查克拉的時候給我的查克拉打上標記(更準確地說,我是給我喊的那句「我創造了10個查克拉」打上標記,比如標記為001),這樣以後在每一筆交易的時候,我在高喊「我給了某某1個查克拉!」的時候,會附加上額外的一句話:「這1個查克拉的**是記為001的那條記錄,我的這句話標記為002!

」。我們再抽象一點,某人喊話的內容的格式就變成了:「這句話編號***,上一句話的編號是yyy,我給了某某1個查克拉!

」,這樣就解決了偽造的問題。其實上述模型就變成一個簡化的中本聰第一版比特幣區塊鏈協議:

圖4:查克拉模型和中本聰第一版區塊鏈協議對比圖

好了,看到這裡你基本已經能夠生動形象又不涉及任何細節地向你的弱智室友解釋區塊鏈了。但是也許你的室友是一個有打破沙鍋問到底精神求是學子,因此你最好繼續準好回答以下這幾個問題。

1. 「憑啥?」

你室友可能會問:「憑啥你喊一句話我就幫你記?我的小本本不要錢麼?

」。為了激勵大家幫我傳話和記賬,我決定給第一個聽到我喊話並且記錄在小本本上的人一些獎勵:第一個聽到我喊話並記錄下來的人,你就憑空得到了1個查克拉,這個查克拉是整個系統對你幸苦記賬的報酬,而你記錄了這句話之後,要馬上告訴其它人你已經記錄好了,讓別人放棄繼續記錄這句話,並給你自己的記錄編號讓別人有據可查,然後你再把我的話加上你的記錄編號一起喊出來,供下一個人記賬。

當這個規則定下以後,這個系統中一定會出現一批人,他們開始豎著耳朵監聽周圍發出的聲音,以搶佔第一個記賬的權利。對的,你腦海中是不是又浮現出了「比特幣挖礦」的字眼?

值得一提的是,關於比特幣挖礦,@玲瓏邪僧舉了一個很形象的例子:

2. 「聽誰的?」

在這個系統中,如果我和另一個人c幾乎同時地喊出一句:「為了艾澤拉斯!」。

由於聽眾所處的位置不同,一定會有人先聽到我說的那句話,而另外一些人則先聽到c的那句話,如果我們規定只能有一個人說出這句話,那到底這句話是誰說的?

如果不加任何條件,那麼上述的情況一定會這樣發展:一部分人認為這句話是我說的,在聽到這句話之後開始記賬,之後他們所做的所有事情都是基於這個事實,並且隨著這個資訊一次次的傳下去,這條資訊鏈會越來越深;而另外一群認為是c先說這句話的人,也會按照這樣的趨勢發展。這樣,原本是一條唯一的資訊鏈,在我們喊出「為了艾澤拉斯」這句話之後,分叉了!?

圖5:「區塊鏈」分叉

這會導致怎樣的情況呢?按照我們的設想,應該每個人的小本本上記錄的東西都是一樣的,都是一條可以把所有資訊串聯起來的鏈條。但是在這一刻,他們小本本上記錄的東西不一樣了!

這還玩毛啊?以後還怎麼確定交易和資訊的真實性!?

為了解決這個問題,我又追加了新的規則:每個人在記錄小本本的時候,需要脫鞋然後用腳拿筆,在小本本上用正楷體書寫!有了這個規定,由於用腳寫字難度很大,每個人至少需要10分鐘才能寫完,而且由於每個人用腳寫字的熟練度不通,寫完這句話所用的時間也不同,因此一定會有人先寫完然後高呼「我寫完了!

那句話是laiw3n喊的!」,這樣其它正在寫這句話的人便會停筆,然後在小本本上重新開始寫「那句話是來文寫的,上一句的編號是***」。

如果你對上述我的解決方法感興趣,你可以對照我上面的比喻去了解以下知識:

「聽誰的」——中本聰破解「拜占庭將軍問題」的演算法

「在小本本上記錄」——比特幣挖礦

「脫鞋用腳寫字」——比特幣挖礦難度

「脫鞋寫字速度」——算力

「新的規則」——工作量證明鏈

3. 「雙花」問題

這個時候你的室友可能又要問:如果我同時宣佈我給了a一個查克拉和我給了b一個查克拉,但是我只有一個查克拉,那咋整?是a和b都收到了查克拉還是咋地?

這個時候你只需要托起他的下巴,溫柔地看著他的眼睛,用手刮刮他的鼻子,說:「小妖精,你把這種情況帶到上面的規則中去試試?」

區塊鏈是什麼時候,什麼是區塊鏈?

區塊鏈是一項先進的網際網絡底層技術,並不只屬於某個行業,現如今部分領域已經開始使用這些技術並加一應用。區塊鏈 blockchain 是比特幣的乙個重要概念,火幣聯合清華大學五道口金融學院網際網絡金融實驗室 新浪科技發布的 2014 2016全球比特幣發展研究報告 提到區塊鏈是比特幣的底層技術和基礎架構。...

區塊鏈技術中的區塊是什麼,什麼是區塊鏈技術?區塊鏈到底是什麼?什麼叫區塊鏈?

區塊鏈是一個資訊科技領域的術語。從本質上講,它是一個共享資料庫,儲存於其中的資料或資訊,具有 不可偽造 全程留痕 可以追溯 公開透明 集體維護 等特徵。付費內容限時免費檢視 回答親您好 開心 開心 很高興為您解答問題每個區塊由區塊頭和區塊主體構成。區塊頭儲存結構化的資料,大小是80位元組 而區塊主體...

區塊鏈的原理是什麼?什麼是區塊鏈,它的原理是什麼?

區塊鏈是一種分散的分類賬,可以保留所有交易的實際記錄。例如,當使用此技術管理匯款時,分類帳看起來類似於銀行對帳單,記錄金額,日期,發件人和收件人等資訊。資料結構包含著加密技術,允許網路的每個成員安全地管理分類帳,而無需集中執行。系統內缺乏 權威這是區塊鏈技術最具影響力的創新之一。一旦資訊被記錄在區塊...