區塊鏈對我們來說是熟的不能再熟的詞彙,但到底什麼是區塊鏈?如同那個著名的問題“先有雞還是先有蛋”一樣,是先有區塊還是先有鏈?區塊鏈和BTC/" target="_blank"">比特幣是什麼關係?雜湊值是什麼?區塊鏈的分類又是什麼?技術看不懂沒關係,用最簡潔的告訴你!這可是壓箱底的知識,不輕易拿給別人哦!
什麼是區塊鏈
不知道大家有沒有這樣的感覺,在今年,區塊鏈被越來越多的人關注,就連街頭巷尾的大媽也開始談論起區塊鏈來。另一方面,從國家的角度來看,雖然很多國家不接受比特幣,但是沒有聽說哪個國家反對區塊鏈。這個成了香餑餑的區塊鏈技術,到底是什麼?
當初中本聰發表《比特幣白皮書》時,區塊鏈(blockchain)雖然技術存在,但名字還是不存在的,直到2016年,“區塊鏈”才被正式命名,還是個寶寶。區塊鏈技術的發展離不開比特幣,可以說,區塊鏈是為了比特幣而生,反過來看比特幣,也是區塊鏈上迄今最成功的應用。
區塊鏈為解決信任問題而誕生,這份信任的根基既不依賴於人,又不依賴第三方中介,而是基於演算法。數學這門學科嚴謹而客觀,永恆而透明,是解決信任危機的不二之選。
區塊鏈顧名思義就是一個個區塊組合成的一條鏈。這些區塊儲存著大量資料,就是一個個資料庫。這些資料庫連線在一起,可以具象成一條鏈,“區塊鏈”由此得名。
在區塊鏈中,每一個區塊都可以分成兩部分——區塊頭和區塊體,區塊頭包含了上一個區塊的雜湊值(PreHash)和本區塊體的雜湊值(Hash),還有時間戳(TimeStamp)等,這些豐富的內容就像人的五官呈現在區塊頭上,獨一無二的“樣貌”輕鬆區別了不同的區塊。由於區塊頭上的雜湊值越來越多,越靠後的雜湊值區塊頭越大,如果想在中間篡改?哼哼,工作量讓你頭大到放棄修改!
而區塊體裡面儲存著這個區塊的詳細資料,這些資料既可以是比特幣,柚子等虛擬貨幣的交易資訊,也可以是你喜歡的電影、文字、漫畫,總之,區塊體就像是人的肚子,吃進去了什麼,就存進去什麼,一點都不小氣。
什麼是雜湊值
我們仍以最常見的比特幣為例,講講什麼是雜湊值。比特幣使用雜湊演算法來確保資訊的安全,當一個檔案或一段資料資訊透過雜湊運算,得出的一段資料就是雜湊值。每一段雜湊值都是獨一無二的,可以理解為資料的基因。
舉個最常見的例子,就拿比特幣來說吧,比特幣用的是SHA256演算法,對於任意長度的訊息都能轉換為一段256位的二進位制數字。聽起來是不是很酷?有幣友很激動地問:“既然我想說的話都可以用這種方法來加密,我這就去比特幣上加密我的表白,送給我暗戀已久的程式設計師小姐姐!”
先不要激動,我敢保證世界上沒有誰能解出你的表白,你的程式設計師小姐姐也會一臉懵逼。因為雜湊演算法的加密過程是不可逆的,這意味著我們無法透過輸出的雜湊值倒推出原本你寫的情話是什麼。而且輸入和輸出一一對應,一旦有人想要篡改資料,都會導致最終輸出的雜湊值變化,所以不可篡改,真的是牽一髮而動全身呀。
區塊鏈的結構分類
區塊鏈大體上可以分為三類:公有鏈、私有鏈和聯盟鏈。這三個名詞我們多次聽到過,到底是什麼意思呢?
公有鏈是所有人都可以參與的,其區塊鏈資料公開透明,所有人都可以訪問、交易和參與驗證。現在最著名的公鏈有比特幣、以太坊和柚子等等,現在我們常見的DApp,幾乎都是基於這些主流公鏈開發。
私有鏈和公有鏈相對,顧名思義並不是人人都可以參與的,節點只能在特定的或有限的範圍內產生,例如公司內部,企業體系內,而訪問、交易和參與驗證的權利可以根據情況公開或不公開,資料也並非不可篡改,再加上傳統的資料庫區別不大,現在私有鏈已變成了一塊雞肋,慢慢不再被人提及。小編默默心疼私有鏈三秒。
聯盟鏈的節點是事先選好的,節點之間保持著良好的合作關係,其區塊鏈的資料即可公開,又可私有,因為節點是事先選好,小編認為聯盟鏈是可以說是半去中心化的呢。