區(qū)塊鏈?zhǔn)鞘裁茨兀举|(zhì)上講,區(qū)塊鏈?zhǔn)且环N分布式、去中心化的網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng),這個(gè)系統(tǒng)會讓數(shù)據(jù)的存儲、更新、維護(hù)、操作變得不同。我們今天要講的區(qū)塊鏈呢,它有四項(xiàng)不可缺的核心技術(shù),分別是:分布式存儲、共識機(jī)制、密碼學(xué)原理、智能合約。那么我們今天就講一講,與傳統(tǒng)數(shù)據(jù)處理相比,區(qū)塊鏈到底有什么不同,幫助大家了解區(qū)塊鏈?zhǔn)鞘裁?,讓大家對區(qū)塊鏈有一個(gè)總的認(rèn)知。 一、區(qū)塊鏈中的數(shù)據(jù)存儲:塊鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu) 在數(shù)據(jù)存儲方面,區(qū)塊鏈技術(shù)利用的是“塊鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu)”來驗(yàn)證與存儲數(shù)據(jù)的。塊鏈?zhǔn)浇Y(jié)構(gòu)是什么意思呢?鐵鏈子大家都見過吧,一環(huán)套一環(huán)那種,那其實(shí),每一環(huán)我們可以看作是一個(gè)區(qū)塊,很多環(huán)節(jié)扣在一起就形成了區(qū)塊鏈。區(qū)塊里存儲的是數(shù)據(jù),和普通存儲數(shù)據(jù)的不同之處在于:在區(qū)塊鏈上,后一個(gè)區(qū)塊里的數(shù)據(jù)是包含前一個(gè)區(qū)塊里的數(shù)據(jù)的。以讀書為例:我們平時(shí)看書,看完第一頁,接著讀第二頁、第三頁,......那在區(qū)塊鏈里面呢,如果給每個(gè)區(qū)塊標(biāo)注上頁碼,那么第二頁的內(nèi)容是包含第一頁的內(nèi)容的,第三頁的內(nèi)容包含第一頁和第二頁的內(nèi)容......第十頁包含了前九頁的內(nèi)容,就是這樣一個(gè)層層嵌套的鏈條,這樣一來,就可以追溯到最本源的數(shù)據(jù)了,這就是區(qū)塊鏈的可追溯性。二、區(qū)塊鏈中的數(shù)據(jù)更新:分布式節(jié)點(diǎn)共識算法 在數(shù)據(jù)更新方面,區(qū)塊鏈技術(shù)是利用“分布式節(jié)點(diǎn)共識算法”來生成和更新數(shù)據(jù)。每每生成新的區(qū)塊(也就是更新數(shù)據(jù)的時(shí)候),都需要通過一種算法獲得全網(wǎng)51%以上節(jié)點(diǎn)的認(rèn)可才能構(gòu)成新的區(qū)塊,說白了就是投票,超過半數(shù)人同意就可以生成。這就使得區(qū)塊鏈上的數(shù)據(jù)不容篡改,為什么這么說呢,我們還是打一個(gè)比喻:我們把區(qū)塊鏈比作一個(gè)賬本,因?yàn)槎际怯涗洈?shù)據(jù)的嘛,傳統(tǒng)世界里,記賬權(quán)在于記賬先生,賬本屬于記賬先生一個(gè)人的,那么在區(qū)塊鏈里面,每一個(gè)人都擁有這個(gè)賬本,想要更新賬目 呢,就要投票,半數(shù)人以上贊成才可以去更新賬目數(shù)據(jù)。那么在這個(gè)過程中,我們會涉及到這么幾個(gè)名詞:分布式、節(jié)點(diǎn)、共識算法,我們下面講個(gè)故事,來把這幾個(gè)名詞串聯(lián)起來: 我們OK情報(bào)局是由六位非??蓯鄣男「绺缧〗憬憬M成的,那么最近呢,剛好要雙11了,為了敦促大家不要在這一天無限剁手,于是,我們六個(gè)人決定記賬,記賬的權(quán)力呢就交給韭哥了:雙11那天,誰買東西都要告訴韭哥一聲,買了什么東西,花了多少錢,讓韭哥記好賬,之后我們看看誰買的最少,我們其他五個(gè)人將給她發(fā)一個(gè)“最佳節(jié)儉獎(jiǎng)”的微信紅包。 那么問題來了,麥麥我啊,已經(jīng)加了好多東西到購物車了,又偷聽到依依說她啥也不想買,這不行呀,于是我就動了歪心思,我就請韭哥吃飯,讓韭哥給我少記點(diǎn),不巧,這一幕被依依看到了,依依就在群里公開了我和韭哥私下里這點(diǎn)“權(quán)錢交易”。韭哥引咎自責(zé)啊,說我不記了,誰想記誰就來記好了!但是換一個(gè)人記賬也會有這樣的問題呀,大家就決定一起來記賬,誰買了東西都要把訂單截圖發(fā)到群里,大家一起來記錄,這樣一來,每一個(gè)人都有這么一個(gè)記賬的賬本,同步更新。如果有人發(fā)現(xiàn)訂單截圖有問題,可以拒絕記錄,到了最后,以大多數(shù)人都一致通過的賬目為準(zhǔn)。這樣一來,誰改動了數(shù)據(jù),大家都會發(fā)現(xiàn),便沒人有機(jī)會動“篡改賬目的歪心思”了。可是,這種方式的問題在于:如果是雙十一一天記記賬就算了,要是時(shí)間長了,肯定有人會偷懶呀,不愿意這么麻煩地記錄,就希望別人記好賬后,自己拿過來核對一下,沒問題就直接記到自己的賬本上。這下記賬記得最勤的人就會有意見了:憑什么我一個(gè)人辛辛苦苦去記,你們只負(fù)責(zé)審核就行了,太不公平了吧?于是,為了長遠(yuǎn)打算,大家又想了一個(gè)辦法:每天早上在微信群里擲骰子,點(diǎn)數(shù)最大的人負(fù)責(zé)記當(dāng)天的賬目,其他人只要核對一下,超過半數(shù)人認(rèn)為賬目沒有問題就予以通過,然后直接復(fù)制到自己的賬本上。后來大家還決定要設(shè)立一個(gè)獎(jiǎng)勵(lì)辦法:每天被擲到要記錄的人,記錄也不會白記,他能獲得一些獎(jiǎng)勵(lì)。那么,在這個(gè)故事的脈絡(luò),每個(gè)人都記賬(也就是人人擁有賬本,賬本分散在每個(gè)人手里)這就是所謂的“分布式”;而大家討論、投票產(chǎn)生的、一致贊同的記賬辦法,就是所謂的“共識算法”;節(jié)點(diǎn)就更簡單了,我們OK情報(bào)局六個(gè)參與記賬的小哥哥小姐姐就可以看做是六個(gè)節(jié)點(diǎn)了。 三、 區(qū)塊鏈中的數(shù)據(jù)維護(hù):密碼學(xué) 接下來到了數(shù)據(jù)維護(hù)階段,區(qū)塊鏈的不同之處就在于:它利用密碼學(xué)的方式來保證數(shù)據(jù)傳輸和訪問的安全。那么,區(qū)塊鏈中所應(yīng)用的密碼學(xué)原理主要有以下這么幾個(gè):哈希算法、Merkle哈希樹、橢圓曲線算法、Base58。這些原理,其實(shí)呢,他們都是通過一系列復(fù)雜的運(yùn)算以及換算,來保證區(qū)塊鏈上數(shù)據(jù)安全。四、 區(qū)塊鏈中的數(shù)據(jù)操作:智能合約 最后就進(jìn)入到了數(shù)據(jù)的操作階段,也就是我們接著要說的“智能合約”。智能合約,是由計(jì)算機(jī)程序定義并自動執(zhí)行的承諾協(xié)議,說白了,就是用代碼執(zhí)行的一套交易準(zhǔn)則,類似于現(xiàn)在的信用卡自動還款功能,開啟這個(gè)功能,你自己什么都不用管,到期銀行會自動扣除你欠的錢。智能合約的突出優(yōu)勢就是,很大程度上避免了由信任產(chǎn)生的一系列問題。我們很多人啊,都遇到過被借錢的事情:朋友手頭緊了跟你借2000塊錢,承諾下個(gè)月發(fā)了工資還錢,到了下個(gè)月他又找別的借口不還,拖來托去這事兒就沒譜了。本來沒多少錢,還是朋友,雖然你很郁悶,這事也就算了。那么,有了智能合約以后,他就不能賴賬了,因?yàn)樵谥悄芎霞s上,一旦觸發(fā)合約中的條款,代碼就會自動執(zhí)行,不管他愿不愿意,只要他發(fā)了工資、賬戶上有了錢,他就得還你。最后總結(jié)一下今天的節(jié)目內(nèi)容,今天呢我們主要通過數(shù)據(jù)存儲操作的這么一個(gè)流程,介紹了區(qū)塊鏈的基本情況。我們對此做一個(gè)總結(jié),可以發(fā)現(xiàn)區(qū)塊鏈中有四項(xiàng)不可缺的核心技術(shù),分別是:分布式存儲、共識機(jī)制、密碼學(xué)原理、智能合約。那么,我們可以這樣理解:分布式存儲對應(yīng)的是數(shù)據(jù)存儲這個(gè)階段,共識機(jī)制對應(yīng)的是數(shù)據(jù)的處理更新這個(gè)階段,密碼學(xué)對應(yīng)的是數(shù)據(jù)安全,智能合約對應(yīng)的是數(shù)據(jù)的操作問題。 |
|