時(shí)間戳在區(qū)塊鏈中是如何工作的
掃描二維碼
隨時(shí)隨地手機(jī)看文章
在之前,我們已經(jīng)講過UTXO是如何解決雙花問題中的第一類問題,可雙花問題還有另一種情況,就是記賬后的雙花問題,即一筆錢雖然只使用了一次,但是如果有人通過黑客攻擊銀行或者采用造假的方式,把這筆錢又復(fù)制了一份,再次使用怎么辦呢?區(qū)塊鏈為了解決這個(gè)問題,就加入了時(shí)間戳的概念。
所謂時(shí)間戳,按官方定義,就是能表示其他的數(shù)據(jù)在某個(gè)特定時(shí)間之前已經(jīng)完整存在、 并且可以驗(yàn)證的一種數(shù)據(jù),一般是一個(gè)字符序列,能唯一地標(biāo)識(shí)某一刻的時(shí)間。
這句話種有兩個(gè)重點(diǎn),第一、時(shí)間戳也是一種數(shù)據(jù);第二、時(shí)間戳可以證明其他的某個(gè)數(shù)據(jù),在什么時(shí)間點(diǎn),就已經(jīng)完整存在。所以,簡單來說,時(shí)間戳就相當(dāng)于是數(shù)據(jù)的生產(chǎn)日期,并起到數(shù)據(jù)驗(yàn)證的作用。
時(shí)間戳在區(qū)塊鏈中,與密碼學(xué)有著非常緊密的關(guān)系,它其實(shí)也可以說是密碼學(xué)的一個(gè)應(yīng)用。它的工作原理是這樣的:
第一步、節(jié)點(diǎn)會(huì)先對(duì)區(qū)塊中的信息進(jìn)行哈希加密,生成一個(gè)信息摘要,也就是哈希值。
第二步、生成好之后,節(jié)點(diǎn)會(huì)發(fā)送一個(gè)時(shí)間戳的請求,給相關(guān)的時(shí)間戳服務(wù)器,然后時(shí)間戳服務(wù)器會(huì)從中提取該哈希值以及數(shù)據(jù)的時(shí)間信息。
第三步、時(shí)間戳服務(wù)器會(huì)對(duì)這些提取到的哈希值以及時(shí)間信息進(jìn)行簽名,也就是再次加密,打上時(shí)間烙印,生成時(shí)間戳。
最后一步,生成的時(shí)間戳數(shù)據(jù)和交易信息綁定之后,再返回系統(tǒng)。
整個(gè)過程在區(qū)塊鏈中就是,我們先把數(shù)據(jù)進(jìn)行加密處理,處理后放到另一個(gè)地方進(jìn)行公證,以二次加密作為證明,之后再把證明后的東西放到下一個(gè)區(qū)塊中,進(jìn)行打包,然后不停地重復(fù)這樣一個(gè)過程,最后就形成了一個(gè)去中心化,并且經(jīng)歷過哈希算法與時(shí)間戳兩次加密的分布式系統(tǒng)。
這樣的好處在于,提高了區(qū)塊鏈的不可篡改性,因?yàn)槊恳还P數(shù)據(jù)都在時(shí)間戳中進(jìn)行了二次加密,有相關(guān)的時(shí)間記錄。并且區(qū)塊連接時(shí),在哈希算法的基礎(chǔ)上,進(jìn)行了時(shí)間的排序。如果有人想要篡改數(shù)據(jù),不僅要攻破哈希算法,還要更改時(shí)間戳。
時(shí)間戳之所以能解決雙花中的第二類問題,原因在于,它起到了一個(gè)防偽的作用。一方面時(shí)間戳提高了區(qū)塊鏈的安全性,黑客很難去篡改,另一方面,系統(tǒng)會(huì)給每一個(gè)區(qū)塊的交易信息都自動(dòng)打上了時(shí)間烙印作為標(biāo)識(shí),你在什么時(shí)間,花了多少錢,都有記錄。沒有這個(gè)標(biāo)識(shí)的,一看就是“假錢”。
總的來說,時(shí)間戳在區(qū)塊鏈中起到了非常重要的作用,它讓每個(gè)區(qū)塊按照時(shí)間順序?qū)訉忧短?,進(jìn)一步加強(qiáng)了區(qū)塊鏈的安全系數(shù),也正是因?yàn)樗拇嬖?,才使區(qū)塊鏈中的“假錢”問題,不再是一個(gè)問題。