駱亮
(廣西宏觀經(jīng)濟(jì)研究院, 廣西 南寧 530022)
互聯(lián)網(wǎng)信息技術(shù)的興起帶動(dòng)了區(qū)域經(jīng)濟(jì)的發(fā)展,由此也產(chǎn)生了大量的經(jīng)濟(jì)信息。為了便于查找、分析區(qū)域經(jīng)濟(jì)歷史數(shù)據(jù)、預(yù)測(cè)未來區(qū)域經(jīng)濟(jì)的發(fā)展趨勢(shì),將信息共享理念引入到區(qū)域經(jīng)濟(jì)發(fā)展中,通過建立共享機(jī)制開啟一種經(jīng)濟(jì)信息管理新模式[1]。共享概念最早由國外學(xué)者馬科斯·費(fèi)爾遜和瓊·斯潘思教授提出,主張利用一個(gè)第三方平臺(tái)實(shí)現(xiàn)區(qū)域間的信息共享交流[2-5]。區(qū)塊鏈技術(shù)是一種新興科技,通過去中心化的方式建設(shè)系統(tǒng)信任機(jī)制,具有開放、透明和不可篡改等技術(shù)特點(diǎn),因此將該技術(shù)作為實(shí)現(xiàn)系統(tǒng)數(shù)據(jù)存儲(chǔ)安全、使用安全的關(guān)鍵,本文設(shè)計(jì)了基于區(qū)塊鏈技術(shù)的區(qū)域經(jīng)濟(jì)信息共享系統(tǒng)。
為有效增強(qiáng)區(qū)域經(jīng)濟(jì)信息共享系統(tǒng)在數(shù)據(jù)存儲(chǔ)與數(shù)據(jù)共享方面的安全性,本文構(gòu)建一個(gè)具有可追蹤功能的共享系統(tǒng)硬件框架,如圖1所示。
圖1中,開發(fā)板是系統(tǒng)中追蹤定位設(shè)備的主要載體,數(shù)據(jù)存儲(chǔ)、程序運(yùn)行、信息界面顯示等一系列操作均需通過開發(fā)板執(zhí)行[6]。同時(shí),其他的系統(tǒng)構(gòu)成硬件也需配合開發(fā)板完成各自的工作。連接無線適配器A通過空中接口與GPS接收器相連,從而形成一個(gè)“無線內(nèi)網(wǎng)”,實(shí)現(xiàn)本地?cái)?shù)據(jù)的接收和更新。在本地設(shè)備和遠(yuǎn)端設(shè)備之間通過空中接口建立網(wǎng)絡(luò)連接,構(gòu)成“無線外網(wǎng)”,可實(shí)現(xiàn)共享系統(tǒng)中多個(gè)設(shè)備的經(jīng)濟(jì)信息共享。利用USB集線器擴(kuò)展開發(fā)板的USB接口,可使得開發(fā)板能夠支持更多本地設(shè)備和遠(yuǎn)端設(shè)備。電腦界面中的各項(xiàng)操作由鼠標(biāo)控制[7]。
圖1 具有追蹤功能的系統(tǒng)硬件框架
本文設(shè)計(jì)的系統(tǒng)硬件框架中,選用OK6410開發(fā)板,該開發(fā)板具有低功耗、高性價(jià)比的RSIC處理器和ARM11內(nèi)核,可在667 MHz主頻上平穩(wěn)運(yùn)行。利用該開發(fā)板處理視頻、音頻和三維圖像后,可實(shí)現(xiàn)利用2D加速和數(shù)據(jù)顯示功能處理信息[8]。系統(tǒng)選用型號(hào)為MTKMT3329的GPS接收器,其具有快速定位、高靈敏度和低功耗的特點(diǎn),可用來同時(shí)搜索多個(gè)共享端[9],從而獲得穩(wěn)定的共享需求信號(hào),并向共享用戶端實(shí)時(shí)更新區(qū)域經(jīng)濟(jì)信息數(shù)據(jù)。
將開發(fā)板與GPS接收器這兩個(gè)主要硬件按照設(shè)計(jì)的框架進(jìn)行安裝和調(diào)試,在測(cè)試設(shè)備運(yùn)行流暢度之后,完成對(duì)區(qū)域經(jīng)濟(jì)信息共享系統(tǒng)硬件環(huán)境的設(shè)計(jì)。
為提高信息共享系統(tǒng)中信息存儲(chǔ)的安全性、確保信息查詢和共享的有效性,本文利用區(qū)塊鏈技術(shù)在共享系統(tǒng)中設(shè)置雙鏈?zhǔn)酱鎯?chǔ)方式。當(dāng)提取網(wǎng)絡(luò)中的信息后,將信息緩存在信息提取池中等待新的區(qū)塊生成。生成新的信息區(qū)塊后,根據(jù)信息提取量、查詢內(nèi)容等,將信息從提取池打包到區(qū)塊中,并利用一體化網(wǎng)絡(luò)驗(yàn)證區(qū)塊信息[10-11]。上述數(shù)據(jù)存儲(chǔ)過程中,新區(qū)塊的產(chǎn)生速度和區(qū)塊容量決定了區(qū)塊鏈寫入數(shù)據(jù)的速度。該速度的計(jì)算過程,如式(1)。
(1)
式中,vt表示區(qū)塊鏈寫入數(shù)據(jù)的速度;t1表示實(shí)際出塊時(shí)間;t2表示目標(biāo)出塊時(shí)間;C1表示產(chǎn)生新區(qū)塊的容量;C2表示實(shí)際信息所需容量;|t1-t2|表示網(wǎng)絡(luò)時(shí)間延遲。根據(jù)式(1)可知,實(shí)際出塊時(shí)間受目標(biāo)出塊時(shí)間和網(wǎng)絡(luò)時(shí)間延遲的影響,因此需要確定最佳區(qū)塊的大小。本文通過難度控制算法確定最佳區(qū)塊的大小,如式(2)。
(2)
式中,D表示最佳區(qū)塊大小;di+1表示下一區(qū)塊的數(shù)據(jù)挖掘難度;di表示當(dāng)前區(qū)塊的數(shù)據(jù)挖掘難度;T、T′分別表示當(dāng)前區(qū)塊以及下一區(qū)塊的出塊時(shí)間;k1、k2表示兩個(gè)特定的常數(shù)值。當(dāng)di+1越小時(shí),證明數(shù)據(jù)挖掘難度低,新區(qū)塊產(chǎn)生的時(shí)間短[12]。在此基礎(chǔ)上,為保證共享系統(tǒng)的安全性,根據(jù)陳舊率計(jì)算系統(tǒng)中存在攻擊行為時(shí)系統(tǒng)對(duì)信息的算力,如式(3)。
(3)
式中,β表示區(qū)塊鏈陳舊率;φ表示存在攻擊時(shí)系統(tǒng)對(duì)信息的算力。
由于攻擊程序需要掌握50%以上的全網(wǎng)算力,才能攻破系統(tǒng)的防御篡改區(qū)域經(jīng)濟(jì)信息中的有效數(shù)據(jù),因此,本文從一定程度上減少網(wǎng)絡(luò)延遲時(shí)間、提高數(shù)據(jù)讀寫速度,在此基礎(chǔ)上建立雙鏈?zhǔn)酱鎯?chǔ)方式。
雙鏈?zhǔn)酱鎯?chǔ)方式中,使用MySQL關(guān)系式數(shù)據(jù)庫存儲(chǔ)鏈上經(jīng)濟(jì)信息和查詢哈希散列值,并隨時(shí)保存哈希散列值[13]。在此基礎(chǔ)上,通過在數(shù)據(jù)中加入父區(qū)塊哈希散列值,可以在只知道最后一條數(shù)據(jù)對(duì)應(yīng)地址的條件下,找到對(duì)應(yīng)的所有數(shù)據(jù),同時(shí)降低系統(tǒng)被篡改或被破壞的可能[14]。雙鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),如圖2所示。
圖2 雙鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)示意圖
在本文設(shè)計(jì)的雙鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中,每個(gè)區(qū)塊都包含了上一區(qū)塊中的數(shù)據(jù)信息,從而形成了鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),存儲(chǔ)結(jié)構(gòu)中對(duì)應(yīng)的交易哈希最終值(last transaction hash)在下一次寫入新數(shù)據(jù)時(shí),利用上述存儲(chǔ)的last transaction hash作為哈希值(Parent hash)寫入本次區(qū)塊鏈中,如此一來可以在每個(gè)哈希值中獲取Parent hash,并一層一層向前找出所有哈希值。該過程的執(zhí)行過程,如式(4)。
(4)
式中,Si表示儲(chǔ)存后的第i條經(jīng)濟(jì)信息;hi-1表示與Si對(duì)應(yīng)的上一條哈希值[15];f(*)表示封裝,生成全新的數(shù)據(jù)。
在上述研究的基礎(chǔ)上,本文利用區(qū)塊鏈技術(shù)構(gòu)建的共享系統(tǒng)的底層P2P網(wǎng)絡(luò)。在P2P網(wǎng)絡(luò)下,每個(gè)區(qū)域中的用戶端均被當(dāng)作一個(gè)平等節(jié)點(diǎn),在信息獲取和分享時(shí)具有同等的權(quán)利。且當(dāng)網(wǎng)絡(luò)中接入新的節(jié)點(diǎn)時(shí),需要明確網(wǎng)絡(luò)中的其他節(jié)點(diǎn)的位置與狀態(tài),才能實(shí)現(xiàn)區(qū)塊鏈同步。因此, 需寫定多個(gè)可以提供DNS服務(wù)的節(jié)點(diǎn)IP地址,利用DNS節(jié)點(diǎn)掃描網(wǎng)絡(luò)中的活動(dòng)節(jié)點(diǎn),并記錄其IP信息。當(dāng)系統(tǒng)中存在試圖加入?yún)^(qū)塊鏈網(wǎng)絡(luò)的新節(jié)點(diǎn)時(shí),其可向DNS節(jié)點(diǎn)發(fā)送隨機(jī)請(qǐng)求,從而獲取網(wǎng)絡(luò)中的其他活動(dòng)節(jié)點(diǎn)的位置與狀態(tài)信息。但由于節(jié)點(diǎn)的活動(dòng)性較強(qiáng),一些節(jié)點(diǎn)可能出現(xiàn)不在線的情況,因此直到新節(jié)點(diǎn)請(qǐng)求被響應(yīng),系統(tǒng)才能返回網(wǎng)絡(luò)活動(dòng)節(jié)點(diǎn)的IP地址列表。但這一過程中,依靠DNS節(jié)點(diǎn)返回?cái)?shù)據(jù)可能被其他軟件或程序攻擊,所以當(dāng)節(jié)點(diǎn)上線后,與該節(jié)點(diǎn)相連的其他節(jié)點(diǎn)會(huì)發(fā)出IP地址和端口號(hào),利用一個(gè)中心化方式驗(yàn)證節(jié)點(diǎn)狀態(tài)[16-17]。
在獲取到其他節(jié)點(diǎn)IP后,試圖加入?yún)^(qū)塊鏈網(wǎng)絡(luò)的新節(jié)點(diǎn)發(fā)送自己的版本信息,包括但不限于系統(tǒng)版本、已經(jīng)同步的區(qū)塊等,由此實(shí)現(xiàn)與對(duì)端節(jié)點(diǎn)的連接。當(dāng)對(duì)端節(jié)點(diǎn)收到信息后,向新節(jié)點(diǎn)回復(fù)自己的版本信息,雙方確認(rèn)信息后,節(jié)點(diǎn)之間成功建立連接,此時(shí)要求節(jié)點(diǎn)運(yùn)行時(shí)間同步。而節(jié)點(diǎn)首次加入?yún)^(qū)塊鏈網(wǎng)絡(luò)后,節(jié)點(diǎn)還需要下載網(wǎng)絡(luò)中最長(zhǎng)區(qū)塊鏈上的所有區(qū)塊數(shù)據(jù)。完成節(jié)點(diǎn)區(qū)塊化后,該節(jié)點(diǎn)隨機(jī)選擇網(wǎng)絡(luò)中的一個(gè)節(jié)點(diǎn)進(jìn)行區(qū)塊同步,此時(shí)的新節(jié)點(diǎn)向同步節(jié)點(diǎn)發(fā)送請(qǐng)求頭部信息[18],如圖3所示。
圖3 請(qǐng)求頭部信息
在請(qǐng)求頭部信息頭部哈希值字段內(nèi),新節(jié)點(diǎn)填入自己擁有的區(qū)塊頭部哈希,并在截止哈希值字段內(nèi)填寫0,請(qǐng)求最大數(shù)量區(qū)塊頭部。同步節(jié)點(diǎn)收到圖3所示信息后,回復(fù)頭部信息[19],如圖4所示。
圖4 回復(fù)信息
新節(jié)點(diǎn)收到同步節(jié)點(diǎn)的回復(fù)后,根據(jù)共識(shí)機(jī)制和目標(biāo)數(shù)判斷頭部哈希的正確性。不斷重復(fù)上述步驟,直到同步節(jié)點(diǎn)回復(fù)的哈希值數(shù)量少于設(shè)定的頭部信息。當(dāng)獲取的頭部信息屬于網(wǎng)絡(luò)中的最優(yōu)區(qū)塊鏈后,新節(jié)點(diǎn)發(fā)送請(qǐng)求數(shù)據(jù),從而獲取完整的區(qū)塊信息。請(qǐng)求區(qū)塊信息,如圖5所示[20]。
圖5 請(qǐng)求區(qū)塊信息
新節(jié)點(diǎn)根據(jù)區(qū)塊鏈上的順序判斷區(qū)塊的準(zhǔn)確性。當(dāng)下一個(gè)需要被驗(yàn)證的區(qū)塊還未獲得時(shí),需要設(shè)置系統(tǒng)等待時(shí)間。若一直未收到區(qū)塊信息,新節(jié)點(diǎn)會(huì)斷開連接,向其他節(jié)點(diǎn)發(fā)送請(qǐng)求,直至獲取完整的信息。
根據(jù)上述設(shè)置的信息共享機(jī)制,將雙鏈?zhǔn)酱鎯?chǔ)的區(qū)域經(jīng)濟(jì)信息進(jìn)行數(shù)據(jù)共享。至此,基于區(qū)塊鏈技術(shù)的區(qū)域經(jīng)濟(jì)信息共享系統(tǒng)設(shè)計(jì)完畢。
為驗(yàn)證此次設(shè)計(jì)的基于區(qū)塊鏈技術(shù)的區(qū)域經(jīng)濟(jì)信息共享系統(tǒng)的應(yīng)用性能,測(cè)試其是否能防止惡意篡改、提升用戶的使用信任度,設(shè)計(jì)如下仿真對(duì)比實(shí)驗(yàn)。
所用的對(duì)比系統(tǒng)分別為基于物聯(lián)網(wǎng)架構(gòu)的信息遠(yuǎn)程共享系統(tǒng)(對(duì)照A組)、基于以太坊的物聯(lián)網(wǎng)可伸縮信息共享系統(tǒng)(對(duì)照B組)和基于標(biāo)準(zhǔn)化建模的跨域信息共享系統(tǒng)(對(duì)照C組)。
實(shí)驗(yàn)準(zhǔn)備過程中,設(shè)置一個(gè)篡改程序,將該程序植入到四臺(tái)型號(hào)與配置均相同的計(jì)算機(jī)中,分別將本文系統(tǒng)與三組對(duì)照組系統(tǒng)與四臺(tái)計(jì)算機(jī)相連,檢測(cè)不同的信息共享系統(tǒng)是否被篡改程序攻擊。用于實(shí)驗(yàn)的區(qū)域經(jīng)濟(jì)信息,如圖6所示。
圖6 實(shí)驗(yàn)測(cè)試對(duì)象信息
在此基礎(chǔ)上,分別利用四個(gè)系統(tǒng)共享上述所示的區(qū)域經(jīng)濟(jì)信息,在共享過程中,利用篡改程序攻擊共享系統(tǒng)。存在篡改程序攻擊下,四個(gè)系統(tǒng)共享過程中的區(qū)域經(jīng)濟(jì)信息,如圖7所示。
(a) 本文系統(tǒng)測(cè)試結(jié)果
根據(jù)圖7可知,本文系統(tǒng)可分析的區(qū)域經(jīng)濟(jì)信息與系統(tǒng)初始錄入的信息完全一致。對(duì)照A組系統(tǒng)區(qū)域名稱被篡改,對(duì)照B組系統(tǒng)和對(duì)照C組系統(tǒng)中,共享系統(tǒng)存儲(chǔ)的經(jīng)濟(jì)數(shù)值被篡改。由此可見,本文系統(tǒng)能夠有效保證區(qū)域經(jīng)濟(jì)信息的共享安全性。
為保證實(shí)驗(yàn)數(shù)據(jù)的真實(shí)性,隨機(jī)選擇3個(gè)省份的經(jīng)濟(jì)數(shù)據(jù)作為第二組測(cè)試內(nèi)容,不同類型經(jīng)濟(jì)數(shù)據(jù)的頻數(shù),如圖8所示。
被篡改程序攻擊后,四個(gè)系統(tǒng)中三個(gè)省份不同類型區(qū)域經(jīng)濟(jì)信息頻數(shù)情況,通過數(shù)據(jù)對(duì)比可知信息被篡改情況,如表1—表3所示。
表1 S省區(qū)域經(jīng)濟(jì)信息篡改情況
表2 F省區(qū)域經(jīng)濟(jì)信息篡改情況
表3 J省區(qū)域經(jīng)濟(jì)信息篡改情況
表1—表3中數(shù)據(jù)顯示,啟動(dòng)篡改程序后,實(shí)驗(yàn)組中的數(shù)據(jù)與圖8數(shù)據(jù)保持一致。對(duì)照A組、對(duì)照B組和對(duì)照C組中的數(shù)據(jù)都發(fā)生了大量變化,將近50%的經(jīng)濟(jì)信息頻數(shù)與圖8中數(shù)據(jù)不同。由此可見,篡改程序成功篡改了傳統(tǒng)共享系統(tǒng)中的部分經(jīng)濟(jì)信息,而無法篡改本文系統(tǒng)中的經(jīng)濟(jì)信息。
在此基礎(chǔ)上,將4個(gè)系統(tǒng)應(yīng)用到實(shí)際工作中,統(tǒng)計(jì)不同系統(tǒng)的用戶占比情況,如表4所示。
表4 不同共享系統(tǒng)使用用戶占比統(tǒng)計(jì)結(jié)果
表4結(jié)果顯示,在實(shí)際應(yīng)用中,參與調(diào)查的絕大多數(shù)企業(yè),都選用了本文設(shè)計(jì)的經(jīng)濟(jì)區(qū)域信息共享系統(tǒng),而使用三種傳統(tǒng)系統(tǒng)的企業(yè)數(shù)量不超過總調(diào)查用戶的5%。由此可見,用戶更加信任本文設(shè)計(jì)的共享系統(tǒng)。
本文利用區(qū)塊鏈技術(shù)設(shè)計(jì)的區(qū)域經(jīng)濟(jì)信息共享系統(tǒng),充分發(fā)揮了區(qū)塊鏈技術(shù)的雙鏈安全存儲(chǔ)功能,通過引入中心化數(shù)據(jù)庫,確保系統(tǒng)經(jīng)濟(jì)信息的存儲(chǔ)安全。但此次設(shè)計(jì)的共享系統(tǒng)工作量很大,需要注意對(duì)系統(tǒng)硬件的維護(hù),防止因硬件故障而影響系統(tǒng)的穩(wěn)定性。