最近,區塊鏈的概念是火爆了,就在最近,騰訊公司與中國信通院發表白皮書,將主導中國區塊鏈發票。可以預見的是,在未來一段時間,區塊鏈還會繼續火爆下去,如果掌握了區塊鏈的技術,不敢說可以改變世界,但是找到一份養家糊口的工作還是非常簡單的。

今天我們來介紹一下區塊鏈的一項核心技術,哈希算法。在區塊鏈技術中,所有的數據都是以塊來存儲。對于每一個數據塊,都存著這么幾個核心數據。
- 真正的數據
- 這塊數據的ID
- 前一塊數據的ID
我們來舉個例子,雙十一就要來了,你可能會在京東或者天貓上面進行剁手,成交了一筆訂單,如果使用區塊鏈進行存儲,那么可能是這樣的,真正的數據塊,存著你購買的交易記錄,從哪個商家購買,花了多少錢,分期還是一次性付款。前一塊的數據可能記錄著你上一次交易的訂單id,亦或是這個商家的上一筆訂單,這個主要看區塊鏈的具體實現,最后,會把本次交易的數據,與上一次交易的數據一起,計算一個唯一的ID,成為這塊數據的真實ID。
在我們日常生活中,通常會使用一些驗簽方法。早在千年之前,人們就發現了這樣的驗簽算法,在以往打戰的時候,通常會采用一些密文進行軍事交流,但是,萬一這份密文落到敵人手中,被破解了怎么辦。被破解了還是小事,最擔心的就是敵人篡改密文,本來下的軍令是全軍出擊,結果被修改成撤退,后果不堪設想。所以,我們機智的祖先會把整個密文按照一定的規則,再計算一個簽名,一旦密文被篡改,那么簽名就很有可能失效,篡改的難度進一步加大!
在計算機世界中,我們也有這樣的算法,我們在網上下載一些文件,通常會有一個MD5校驗碼,一旦文件下載的時候丟失一部分,或者文件被篡改,都會使得MD5失效。舉個例子:我們有一個字符串,叫做阿里巴巴騰訊與百度,計算出來的簽名如下所示。

假如我們調整一下順序,改成騰訊阿里巴巴與百度呢,計算的結果立馬不同。

假如我們把百度替換成華為,那么又是一個不同的結果。

在這樣的加密算法中,隨便一個字符的變更,都會讓結果不同。在區塊鏈中,由于每一個數據都指向上一個數據,所以一旦中間某一個區塊被篡改,即便只是偷偷地篡改了一個字符,后面地鏈路也需要重新計算。在這樣地連鎖反應中,區塊鏈地數據是很難被篡改的,從而保證了數據的安全。
總結
今天我們學習了區塊鏈中的核心技術哈希加密,希望對大家有所啟發,在區塊鏈中還有很多技術值得學習,如果你有興趣,歡迎關注我,我們共同學習,共同進步。大家的支持是我繼續嘮嗑的動力。同名公眾號(沙茶敏碎碎念)