區塊鏈是什么,如何簡單易懂地介紹區塊鏈?
此不信任的原則,他們拿過張衡路節點所謂挖到的區塊(副本),開始校驗區塊內的小紙條信息是否真實有效等等。在區塊鏈世界里,節點們正是通過校驗小紙條信息的準確性,或間接或直接判斷成功挖出區塊的節點是否撒謊。(如何定義小紙條信息真實有效,后面會講解,這里暫不做贅述)。
在校驗過程中,各個節點們會直接通過下面兩個行為表達自己對張衡路節點的認同(準確無誤)和態度:
- 停止已經進行了一半甚至 80%的挖礦進程;
- 將張衡路節點成功挖出的區塊(副本)追加到自己區塊鏈的末尾。
你可以稍微有點困惑:停止可能已經執行了 80%的挖礦行為,那之前 80%的工作不是就白做了嘛?!然后,區塊鏈的末尾又是個什么鬼東西?
對于第一個困惑。我想說,你說的一點沒錯,但是沒辦法,現實就是這么殘酷,即便工作做了 80%,那也得放棄,這 80%的工作勞苦幾乎可以視為無用功,絕對的傷財勞眾。第二個困惑,區塊鏈和區塊鏈的末尾是什么鬼?這里因為事先并沒有講清楚,但是你可以簡單想象一下:區塊是周期性不斷的產生和不斷的被挖出來,一個計算機節點可能事先已經執行了 N 次“從別人手上拿過區塊 -> 校驗小紙條有效性”的流程,肯定在自己的節點上早已經存放了 N 個區塊,這些區塊會按照時間順序整齊的一字排列成為一個鏈狀。沒錯,這個鏈條,就是你一直以來認為的那個區塊鏈。如果你還是不能夠理解,沒關系,文章后面還會有很多次機會深入研究。
# 走進區塊內,探索消息的本質
上面我們構建了一個最簡單的區塊鏈世界的模型,相信大多數同學都已經輕松掌握了。但是別驕傲也別著急,這還只是一些皮毛中的皮毛,坐好,下面我們準備開車了。
前面我們說到“大概每十分鐘會憑空產生一個神奇的區塊,這個區塊里放了一張小紙條,上面記錄了這十分鐘內產生的這唯一一筆交易信息”。顯然,十分鐘內產生的交易肯定遠不止一條,可能是上萬條,這上萬條數據在區塊鏈世界是如何組織和處理的呢?另外,為什么在紙條上記錄的只是某一次的交易信息,而不是某一個人的余額?余額好像更符合我們現實世界的理解才對。
既然存在這樣那樣的疑問。現在我們就把視線暫時從“區塊”、“區塊鏈”這些看起來似乎較大實體的物質中移開,進入到區塊內更微觀的世界里一探究竟,看看小紙條到底是怎么一回事,它的產生以及它終其一生的使命:
- 發起交易的時候,發起人會收到一張小紙條,他需要將交易記錄比如說“盜盜轉賬給張三 40 元”寫在紙上。說來也神奇,當寫完的那一剎那,在小紙條的背面會自動將這段交易記錄格式化成至少包含了“輸入值”和“輸出值”這兩個重要字段;“輸入值”用于記錄數字貨幣的有效來源,“輸出值”記錄著數字貨幣發往的對象。
- 剛剛創建的小紙條立馬被標記成為“未確認”的小紙條。從地下成功挖出區塊并最終連接到區塊鏈里的小紙條一開始會被標記為“有效”。若這條有效的小紙條作為其他交易的輸入值被使用,那么,這個有效的小紙條很快會被標記為“無效”。因為各種原因,區塊從鏈上斷開、丟棄,曾經這個區塊內被標記為“有效”的小紙條會被重新標記為“未確認”。
- 區塊鏈里面沒有賬戶余額的概念,你真正擁有的數字資產實際上是一段交易信息;通過簡單的加減法運算獲知你數字錢包里的余額。
上面的 1、2、3 僅僅作為結論一開始強行灌輸給你的知識點,其中有幾個描述可能會有點繞,讓你覺得云里霧里,沒有關系,因為我們立刻、馬上就開始會細說里面的細枝末節。
上圖就是從無數打包進區塊內的小紙條中,抽取出來的一張,以及它最終被格式化后的縮影。單看右側的圖可能很容易產生誤會,雖然看起來有多行,但實際上就是“盜盜轉賬給張三 40 個比特幣”這一條交易數據另外的一種呈現形態。因為區塊鏈世界里面這么規定,每一條交易記錄,必須有能力追溯到交易發起者 發起這筆交易、其中所涉及金額的上一筆全部交易信息;即這筆錢從何而來的問題。這其實很容易理解,在去中心化的網絡中,通過建立交易鏈、和通過交易鏈上的可溯源性間接保證數據安全和有效。
我們繼續看,在區塊鏈世界里,我們是如何僅通過“盜盜轉賬給張三 40 個比特幣” 這條交易信息完成轉賬流程的。其實跟現實中你在路邊買一個包子的流程大抵上相同。
第一步:判斷是否有足夠的余額完成交易
這里我們再一次重申,區塊鏈世界是沒有余額的概念,余額是通過簡單數字的加減最終獲得,你擁有所謂的數字貨幣實際上是因為你擁一條交易記錄,即 “盜盜轉賬給張三 40 個比特幣”!這里,我們還是拿這條記錄說事:
追溯“輸出值”是“盜盜”相關的全部有效交易記錄作為,對有效交易中的數字進行簡單求和,判斷是否大于等于 40,如果確實大于等于,則將這些有效的交易記錄合并形成一條新的交易記錄(如下圖)。如果小于 40,其實可以不需要再繼續往下探討。
就上圖的例子,我們追溯到曾經轉賬給盜盜的有效交易記錄有“小 A 轉賬給盜盜 10 btc”、“小 B 轉賬給盜盜 20 btc”、“小 C 轉賬給盜盜 25 btc”,我們需要將這三條交易記錄合并成一條更復雜描述的交易記錄,即 “( 小 A 轉賬給盜盜 10 btc + 小 B 轉賬給盜盜 20 btc + 小 C 轉賬給盜盜 25 btc ) 轉賬給張三 40 btc ”
第二步:判斷是否需要找零
對追溯到的有效交易數字求和,如果發現大于需要支付的金額,需要將多出的數字重新支付給自己,相當于找零。對應生成了一條全新的交易記錄(如下圖)。
就上圖例子來說,我們最后合并成的交易記錄 “( 小 A 轉賬給盜盜 10 btc + 小 B 轉賬給盜盜 20 btc + 小 C 轉賬給盜盜 25 btc + 盜盜轉賬給盜盜 15 btc ) 轉賬給張三 40 btc ” 事實上等同于“盜盜轉賬給張三 40 btc”。其中“盜盜轉賬給盜盜 15 btc”就可以理解找零。
第三步:發出去,讓全球節點認同和備份小紙條
這條內部重新處理過的復雜交易記錄被塞進區塊,埋到地下,等待節點挖出來,一旦區塊被挖礦成功,并且該區塊最終被連在了區塊鏈的主鏈上。張三將最終擁有了這條交易記錄,而先前的“小 A 轉賬給盜盜 10 btc” 、“小 B 轉賬給盜盜 20 btc” 、“小 C 轉賬給盜盜 25 btc”都將被視為已經使用過的交易記錄——從此被貼上“無效”的標簽,意味著這些交易記錄將永遠不會再被追溯到。
我們最后一次重申,只是希望讓你加深印象:擁有數字貨幣=擁有交易記錄!
通過設計巧妙的精巧密碼學保證數據安全
記錄著交易信息的小紙條借助區塊這個載體,在分布式的網絡中以不同的軌跡錯綜復雜的傳遞,我們前面說了,你真正擁有的數字資產實際上是一段交易信息,而不是你常規意義上理解的貨幣。所以這個過程就需要重點解決兩個問題:
- 接受到的這條交易記錄在傳輸過程沒有被其他人所篡改
- 接受到的這條交易記錄確實是由發起交易的人所創造
在這里,我們需要事先引入兩個知識點,可能稍微有點難消化,但都是計算機領域較為成熟的和基礎的概念。
第一個知識點:Hash()函數。你只需要知道,任意長度的字符串、甚至文件體本身經過 Hash 函數工廠的加工,都會輸出一個固定長度的字符串;同時,輸入的字符串或者文件稍微做一丟丟的改動,Hash() 函數給出的輸出結果都將發生翻天覆地的改變。注意,Hash()函數是公開的,任何人都能使用。
第二個知識點:非對稱加密。你也只需要了解,任何人手里都有兩把鑰匙,其中一把只有自己知道,叫做“私鑰”,以及一把可以公布于眾,叫做“公鑰”;通過私鑰加密的信息,必須通過公鑰才能解密,連自己的私鑰也無解。公鑰可以通過私鑰生成多把。
有了這些知識點的加持,上面兩個問題開始變得有解。下面我們來看下內部是如何扭轉和工作的吧,這里拿“小 A 轉賬給了小 B 100 元錢” 舉例:
- 第一步:小 A 會先用 Hash 函數對自己的小紙條進行處理,得到一個固定長度的字符串,這個字符串就等價于這張小紙條。
- 第二步:小 A 使用只有自己知道的那一把私鑰,對上面固定長度的字符串進行再加密,生成一份名叫數字簽名的字符串,這份數字簽名能夠充分證明是基于這張小紙條的。你可以這么理解,在現實中,你需要對某一份合同的簽署,萬一有人拿你曾經在其他地方留下的簽名復制粘貼過來怎么辦?!最好的辦法,就是在你每一次簽名的時候,故意在字跡當中留下一些同這份合同存在某種信息關聯的小細節,通過對小細節的觀察可以知道這個簽名有
責任編輯:售電衡衡
-
權威發布 | 新能源汽車產業頂層設計落地:鼓勵“光儲充放”,有序推進氫燃料供給體系建設
2020-11-03新能源,汽車,產業,設計 -
中國自主研制的“人造太陽”重力支撐設備正式啟運
2020-09-14核聚變,ITER,核電 -
探索 | 既耗能又可供能的數據中心 打造融合型綜合能源系統
2020-06-16綜合能源服務,新能源消納,能源互聯網
-
新基建助推 數據中心建設將迎爆發期
2020-06-16數據中心,能源互聯網,電力新基建 -
泛在電力物聯網建設下看電網企業數據變現之路
2019-11-12泛在電力物聯網 -
泛在電力物聯網建設典型實踐案例
2019-10-15泛在電力物聯網案例
-
權威發布 | 新能源汽車產業頂層設計落地:鼓勵“光儲充放”,有序推進氫燃料供給體系建設
2020-11-03新能源,汽車,產業,設計 -
中國自主研制的“人造太陽”重力支撐設備正式啟運
2020-09-14核聚變,ITER,核電 -
能源革命和電改政策紅利將長期助力儲能行業發展
-
探索 | 既耗能又可供能的數據中心 打造融合型綜合能源系統
2020-06-16綜合能源服務,新能源消納,能源互聯網 -
5G新基建助力智能電網發展
2020-06-125G,智能電網,配電網 -
從智能電網到智能城市