區(qū)塊鏈數(shù)據(jù)上鏈的問題探討
如果你經(jīng)常閱讀關(guān)于區(qū)塊鏈的落地文章,會(huì)常??吹揭粋€(gè)詞,叫做數(shù)據(jù)上鏈。數(shù)據(jù)上鏈即把數(shù)據(jù)寫到區(qū)塊鏈中。
不同的區(qū)塊鏈有不同的上鏈方式。對(duì)于審核型區(qū)塊鏈來說,上鏈?zhǔn)切枰獙徍说?。不是誰都能把信息上鏈。
對(duì)于特定型區(qū)塊鏈而言,只有特定類型的數(shù)據(jù)可上鏈,其余類型的數(shù)據(jù)則不能上鏈。比如區(qū)塊鏈發(fā)票,交易即開票,開票即報(bào)銷。整個(gè)過程全自動(dòng)無需用戶操心,整合環(huán)節(jié)都上鏈了,鏈上可查。但你并不能把其他內(nèi)容上到這類區(qū)塊鏈中。
對(duì)于非審核型的區(qū)塊鏈,基本上不論誰,不論什么內(nèi)容都可以上鏈。比如以太坊,發(fā)送任何一筆交易,都可以帶上文本信息。只是文本大小會(huì)影響所需費(fèi)用。文本越大,費(fèi)用越多,文本越小,費(fèi)用越少。
除了手動(dòng)上鏈,也有自動(dòng)上鏈。即開發(fā)一個(gè)程序,調(diào)用區(qū)塊鏈節(jié)點(diǎn)的api,實(shí)現(xiàn)自動(dòng)化上鏈。比如某個(gè)機(jī)構(gòu)作為oracle語(yǔ)言機(jī),每天把天氣信息上鏈到區(qū)塊鏈,供鏈上的智能合約調(diào)用。這由此也發(fā)展出一個(gè)全新的產(chǎn)業(yè),即專門提供數(shù)據(jù)上鏈的項(xiàng)目,有些項(xiàng)目可以實(shí)現(xiàn)跨鏈上鏈,把一個(gè)數(shù)據(jù)寫到不同區(qū)塊鏈中。
但上鏈也存在一定問題。上鏈會(huì)導(dǎo)致區(qū)塊鏈節(jié)點(diǎn)越來越大。尤其是把區(qū)塊鏈作為存儲(chǔ)時(shí)更嚴(yán)重。對(duì)于已經(jīng)存在了幾年的老項(xiàng)目,通常其數(shù)據(jù)會(huì)達(dá)到20幾個(gè)G。
如果上鏈的數(shù)據(jù)很大,會(huì)對(duì)區(qū)塊鏈造成很大壓力。
在運(yùn)維領(lǐng)域存在一種日志備份業(yè)務(wù)。一個(gè)正常的系統(tǒng)難免發(fā)生異常。每當(dāng)發(fā)生異常后,都會(huì)產(chǎn)生日志。有些系統(tǒng)產(chǎn)生的日志特別多,備份量也很大。除了異常日志,還有系統(tǒng)產(chǎn)生的日志。很多服務(wù)器被黑客入侵后,黑客會(huì)刪除甚至偽造日志。這給找到黑客帶來很大的難度,就好比一個(gè)商店,商店內(nèi)部有攝像頭,但是攝像頭沒聯(lián)網(wǎng),攝像內(nèi)容存在攝像頭后面插著的U盤里。這個(gè)時(shí)候有個(gè)人偷偷進(jìn)入商店,拔出U盤,然后偷東西,結(jié)果攝像頭就失去了作用。
對(duì)于日志上鏈,即便黑客入侵后刪掉日志,也能從鏈上日志找到相關(guān)記錄。黑客再?gòu)?qiáng)大,也難以篡改區(qū)塊鏈上的日志。
但區(qū)塊鏈不是分布式存儲(chǔ),其數(shù)據(jù)不可篡改的特性,與文件存儲(chǔ)結(jié)合起來會(huì)更高效,而不是把所有數(shù)據(jù)都存在區(qū)塊鏈內(nèi)部。這樣,區(qū)塊鏈只要記錄某個(gè)文件的地址和其對(duì)應(yīng)的哈希值即可。當(dāng)下載文件時(shí),只要文件地址和哈希值都能和鏈上數(shù)據(jù)對(duì)應(yīng)上,則說明該文件沒有被篡改。