還不懂區塊鏈?你知道“人體蜈蚣”嗎

你是不是覺得我在吹牛逼,區塊鏈跟那部驚悚的恐怖片“人體蜈蚣”有什麼關係?

說起來也沒什麼太大的關係,哈哈哈,就是鏈式結構的關係啦。

啥?你說你沒看過“人體蜈蚣”?來!上圖!


還不懂區塊鏈?你知道“人體蜈蚣”嗎


嗯?是不是覺得很刺激?不過這是怎麼跟區塊鏈有關呢?

還是讓我們從區塊鏈的單位“區塊”先說起,請大家準備好,下面開始對區塊鏈的結構進行解剖!


還不懂區塊鏈?你知道“人體蜈蚣”嗎


哇!雖然分出了區塊頭和區塊體,但是一點都不可愛呢!好吧好吧,我再簡化了一下:


還不懂區塊鏈?你知道“人體蜈蚣”嗎


哈哈哈哈,畫工這麼棒的嗎?

在區塊中,有兩個比較重要的參數(嗯,我覺得比較重要),一個是前一個區塊的哈希值,又稱到父。還有一個是默克爾根。他們兩都在儲存在區塊頭裡面。

啥?哈希是啥freestyle?


還不懂區塊鏈?你知道“人體蜈蚣”嗎


哈希並不是嘻哈。

哈希是一種將任意長度的消息壓縮成固定長度的算法。你可以想想成你的工資。無論你這個月是勤勤懇懇的每天工作8小時,還是不要命的每天工作24小時,你的工資都是25張100元。

這種算法還有一個特點,就是輸入只要有一位不同,輸出就完全不同。還是拿工資舉例。同樣是每天工作8小時的兩個月,這個月你在工作中摳了下腳,和沒摳腳的那個月工資發放的方式就會完全不同。摳腳的月工資是發的25張100的人民幣,沒摳腳的月也是發的25張,有100美元,有100日元。不過值得慶幸的是總數都是2500,匯率什麼的無所謂嘛。

以哈希算法SHA256為例,它無論算啥都是256位。讓它分別加密"Hello, world!0","Hello, world!1"和"Hello, world!4250"。則

"Hello, world!0" 就變成了1312af178c253f84028d480a6adc1e25e81caa44c749ec81976192e2ec934c64

"Hello, world!1" 就變成了e9afc424b79e4f6ab42d99c81156d3a17228d6e1eef4139be78e948a9332a7d8

"Hello, world!4250" 就變成了0000c3af42fc31103f1fdc0151fa747ff87349a4714df7cc52ea464e12dcd4e9

咦?不是256位嗎?上面的長度咋是64位呢?因為上面的是16進制!


還不懂區塊鏈?你知道“人體蜈蚣”嗎


哈希懂了,那默克爾根又是啥?其實就是對兩兩哈希進行哈希所形成的一棵樹。還是拿工資舉例,就是你一個月每天干8小時拿2500,你的領導只管你和隔壁老王,但是領導一個月每天干8小時也拿2500。可你的領導一個月乾的活彙總了你和老王乾的活的信息量。而你們單位的不管中層領導還是CEO,只要是領導就只管兩個人,但人人都拿2500。好開心啊!一點貧富差距都沒有呢!它的模樣請看下圖:


還不懂區塊鏈?你知道“人體蜈蚣”嗎


有了默克爾根,想要驗證綠色的HK就只需要相關四個藍色塊,就可以湊出虛線框的哈希,而不需要把所有塊都收集齊,從而大大減少計算量。

默克爾根的存在保證瞭如果想篡改一個區塊的一筆交易,就要更改這個區塊的默克爾根和該區塊的哈希值。而該區塊的下一個區塊頭包含了這個區塊的哈希值,那下一個區塊的哈希也會發生更改,該一筆交易就得篡改一條區塊鏈。簡而言之就是牽一髮而動全身。

那麼區塊鏈就可以如下表示,是不是很有趣啊。

還不懂區塊鏈?你知道“人體蜈蚣”嗎


好的,今天先介紹到這裡,有什麼問題,儘管留言問我。

寫這篇文章的時候,比特幣市值為45000左右。炒幣有風險,入市需謹慎。

PS:這部電影建議大家不要吃飯的時候看哦!


分享到:


相關文章: