徐尚英,王 倩,陳冬林,唐藝倩
(1.武漢理工大學(xué)經(jīng)濟(jì)學(xué)院,湖北武漢 430070;2.湖北省電子商務(wù)大數(shù)據(jù)工程技術(shù)研究中心,湖北武漢 430070)
大數(shù)據(jù)、云計(jì)算和區(qū)塊鏈等技術(shù)的出現(xiàn),大大提升了科技服務(wù)業(yè)的專業(yè)化水平,推動(dòng)了新的科技服務(wù)創(chuàng)新模式的形成[1]。行業(yè)數(shù)據(jù)的整合與共享是科技服務(wù)業(yè)發(fā)展的基礎(chǔ),是支持科技服務(wù)業(yè)戰(zhàn)略決策的首要條件[2]。對(duì)此,中國《“十三五”國家信息化規(guī)劃》明確指出,要構(gòu)建統(tǒng)一的數(shù)據(jù)共享交換平臺(tái),推進(jìn)數(shù)據(jù)資源共享共用。
隨著現(xiàn)代技術(shù)的高速發(fā)展,人們大規(guī)模地運(yùn)用數(shù)字化手段來提升科技服務(wù)數(shù)據(jù)存儲(chǔ)和處理效率?,F(xiàn)有的科技服務(wù)數(shù)據(jù)共享平臺(tái)為科技服務(wù)業(yè)工作帶來便利的同時(shí),仍然存在以下主要問題:(1)以服務(wù)機(jī)構(gòu)為中心進(jìn)行的數(shù)據(jù)管理使得科技服務(wù)業(yè)數(shù)據(jù)缺乏統(tǒng)一的規(guī)劃、數(shù)據(jù)標(biāo)準(zhǔn)存在多樣性,導(dǎo)致了多源異構(gòu)數(shù)據(jù)的產(chǎn)生,給科技服務(wù)數(shù)據(jù)的整合帶來了挑戰(zhàn)[3-4];(2)不同的中心機(jī)構(gòu)各自管理自己的數(shù)據(jù),不可避免地會(huì)面臨“信息孤島”問題,缺乏安全有效的數(shù)據(jù)共享渠道,不利于數(shù)據(jù)的共享[5-6];(3)科技服務(wù)數(shù)據(jù)的真實(shí)性和原始性主要依賴于對(duì)系統(tǒng)中心或第三方實(shí)體的信任,一旦系統(tǒng)中心不再可信,數(shù)據(jù)的真實(shí)性和安全性便難以得到保障[7]。
由日本學(xué)者中本聰提出的區(qū)塊鏈技術(shù),作為大數(shù)據(jù)時(shí)代一種新興的去中心化、安全可信的技術(shù)[8],已經(jīng)受到國家、企業(yè)以及科研單位的高度重視。區(qū)塊鏈技術(shù)在物聯(lián)網(wǎng)、能源、政務(wù)以及供應(yīng)鏈等眾多領(lǐng)域已經(jīng)有了較為成熟的應(yīng)用。此外,還有企業(yè)將區(qū)塊鏈作為服務(wù)提供給用戶,由用戶自己運(yùn)營區(qū)塊鏈,搭建出一種新型的云服務(wù)模式,即區(qū)塊鏈即服務(wù)(blockchain as a service,BaaS)[9],既具有區(qū)塊鏈技術(shù)去中心化的特點(diǎn),也具有云計(jì)算技術(shù)所帶來的巨大算力。BaaS 技術(shù)的出現(xiàn),為科技服務(wù)大數(shù)據(jù)的整合共享以及數(shù)據(jù)流通提供了新的機(jī)遇,有望解決現(xiàn)有科技服務(wù)數(shù)據(jù)共享中普遍存在的信息壁壘、“信息孤島”、安全性低和共享性差的問題。
本研究嘗試將區(qū)塊鏈即服務(wù)的相關(guān)思想融入到科技服務(wù)數(shù)據(jù)共享中,基于BaaS 以及智能合約、混合加密等技術(shù)提出以下設(shè)計(jì)思路:(1)科技服務(wù)業(yè)各機(jī)構(gòu)之間構(gòu)建數(shù)據(jù)聯(lián)盟,并通過聯(lián)盟鏈鞏固聯(lián)盟的聯(lián)合性和穩(wěn)定性,共同管理和維護(hù)區(qū)塊鏈節(jié)點(diǎn),在解決數(shù)據(jù)壁壘問題的同時(shí)保證數(shù)據(jù)的安全性;(2)通過科技服務(wù)數(shù)據(jù)平臺(tái),將區(qū)塊鏈作為服務(wù)提供給用戶和數(shù)據(jù)所有者,由數(shù)據(jù)所有者自己掌控?cái)?shù)據(jù),用戶依據(jù)訪問權(quán)限自動(dòng)獲取數(shù)據(jù),并提供相應(yīng)接口保證可擴(kuò)展性;(3)通過數(shù)據(jù)源分類存儲(chǔ)科技服務(wù)原始數(shù)據(jù)、數(shù)據(jù)區(qū)塊存儲(chǔ)索引數(shù)據(jù),配合鏈上智能合約存儲(chǔ)數(shù)據(jù)源條目索引文件,實(shí)現(xiàn)對(duì)科技服務(wù)數(shù)據(jù)的整合與存儲(chǔ);(4)采用數(shù)據(jù)分類結(jié)構(gòu)和Merkle樹對(duì)科技服務(wù)數(shù)據(jù)進(jìn)行排序和分類,實(shí)現(xiàn)對(duì)數(shù)據(jù)的整合以及數(shù)據(jù)所有權(quán)的確定;(5)利用鏈上智能合約和數(shù)據(jù)區(qū)塊中存儲(chǔ)的文件索引號(hào)信息,實(shí)現(xiàn)對(duì)數(shù)據(jù)的有效檢索和安全共享。
科技服務(wù)業(yè)是第三產(chǎn)業(yè)(服務(wù)業(yè))的范疇,具體是指服務(wù)者運(yùn)用科學(xué)知識(shí)、技術(shù)以及信息數(shù)據(jù)為服務(wù)對(duì)象提供高效智力的服務(wù)[10]??萍挤?wù)數(shù)據(jù)的整合與共享是推動(dòng)科技服務(wù)模式創(chuàng)新的基礎(chǔ)。在大數(shù)據(jù)時(shí)代到來之前,針對(duì)傳統(tǒng)科技服務(wù)數(shù)據(jù)的融通共享問題,出現(xiàn)了數(shù)據(jù)集成、數(shù)據(jù)交換等技術(shù)[11];在多源異構(gòu)的科技服務(wù)數(shù)據(jù)整合與存儲(chǔ)上,目前主要有數(shù)據(jù)倉庫和云存儲(chǔ)的方法[12];大數(shù)據(jù)、云計(jì)算、物聯(lián)網(wǎng)等新技術(shù)正逐步應(yīng)用到科技服務(wù)數(shù)據(jù)管理中,基于大數(shù)據(jù)分析和云計(jì)算等技術(shù),可以解決數(shù)據(jù)分散各地的孤島效應(yīng)問題,有利于提升數(shù)據(jù)共享、管理和存儲(chǔ)的效率。但以上技術(shù)和方法都受限于中心化的存儲(chǔ)技術(shù)與管理方式,容易導(dǎo)致數(shù)據(jù)信任問題,數(shù)據(jù)鏈也未得到有效整合,數(shù)據(jù)在共享交互過程無法做到公開透明,且擴(kuò)展性(吞吐量、運(yùn)行速度、容量)不夠強(qiáng)。例如云計(jì)算技術(shù),雖然可以解決海量數(shù)據(jù)的存儲(chǔ)和計(jì)算問題,但傳統(tǒng)的云方案也需要中心化的云服務(wù)、大規(guī)模的服務(wù)器集群和網(wǎng)絡(luò)設(shè)備來提供支撐,而不同云服務(wù)提供商支持的云服務(wù)架構(gòu)之間通信十分困難,因此不同云服務(wù)商提供的數(shù)據(jù)也具有異構(gòu)性,在數(shù)據(jù)整合與共享方面不能保證數(shù)據(jù)之間的互操作性和兼容性[13]。
BaaS 是由微軟公司、IBM 公司兩個(gè)科技巨頭提出的概念[14-15],本質(zhì)上是一種結(jié)合區(qū)塊鏈技術(shù)的新型的云服務(wù)模式。在BaaS 模式下,區(qū)塊鏈協(xié)議被用于維護(hù)完全去中心化的分布式存儲(chǔ)機(jī)制記錄在線數(shù)據(jù),并且保證數(shù)據(jù)的不可篡改、不可偽造和可驗(yàn)證性。BaaS 與其他技術(shù)的對(duì)比如表1 所示。BaaS 以云平臺(tái)為依托,為用戶提供更加便捷和高性能的區(qū)塊鏈服務(wù),可支持開發(fā)者的運(yùn)營與業(yè)務(wù)拓展[16]?!皡^(qū)塊鏈+云計(jì)算”借助區(qū)塊鏈的分布式技術(shù),將多個(gè)分散的計(jì)算機(jī)節(jié)點(diǎn)連接起來,提供分布式云存儲(chǔ)服務(wù)。
表1 4 種主要數(shù)據(jù)技術(shù)性能對(duì)比
近年來,國內(nèi)外許多研究人員和機(jī)構(gòu)運(yùn)用區(qū)塊鏈即服務(wù)在數(shù)據(jù)共享領(lǐng)域進(jìn)行了探索和實(shí)踐,如,在存證型應(yīng)用方面,Milutinovic 等[17]通過融入BaaS來創(chuàng)造新的分類總賬,引入了有數(shù)學(xué)法則保證的分類賬本技術(shù),革新了商業(yè)社會(huì)和政府部門的數(shù)據(jù)管理和數(shù)據(jù)記錄方式;Azaria 等[18]利用智能合約構(gòu)建了去中心化的醫(yī)療數(shù)據(jù)訪問與權(quán)限管理系統(tǒng),使患者自主地對(duì)醫(yī)療記錄進(jìn)行分享與管理;Zyskind 等[19]使用區(qū)塊鏈構(gòu)建了個(gè)人數(shù)據(jù)管理系統(tǒng),確保用戶以分散的方式擁有和控制數(shù)據(jù);ProvChain 支持基于云計(jì)算的數(shù)據(jù)分析、數(shù)據(jù)驗(yàn)證的區(qū)塊鏈服務(wù)[20]。
然而,與其他領(lǐng)域相比,BaaS 在科技服務(wù)數(shù)據(jù)共享方面的應(yīng)用尚不豐富,現(xiàn)有文獻(xiàn)大多從科學(xué)數(shù)據(jù)平臺(tái)的角度去探討系統(tǒng)架構(gòu)的構(gòu)建,沒有考慮到后續(xù)的科技服務(wù)數(shù)據(jù)共享的過程和實(shí)現(xiàn),也沒有深入技術(shù)層面探討區(qū)塊鏈智能合約和混合加密技術(shù)在科技服務(wù)數(shù)據(jù)共享中的作用。BaaS 作為多種技術(shù)的融合,具備集中式數(shù)據(jù)管理技術(shù)無法比擬的優(yōu)勢(shì),對(duì)解決科技服務(wù)數(shù)據(jù)共享中存在的問題具有可行性。綜合BaaS 技術(shù)和科技服務(wù)數(shù)據(jù)共享現(xiàn)狀,本研究提出了融入BaaS 的科技服務(wù)數(shù)據(jù)共享的系統(tǒng)結(jié)構(gòu)和實(shí)現(xiàn)機(jī)制,基于此機(jī)制可實(shí)現(xiàn)各種輔助功能,以便對(duì)外提供各種各樣的云服務(wù),比如分布式存儲(chǔ)可以幫助整合數(shù)據(jù)和持久化記錄,混合加密算法可以幫助保護(hù)和共享數(shù)據(jù),智能合約可以幫助實(shí)現(xiàn)自動(dòng)化的認(rèn)證和服務(wù)等。
本研究以區(qū)塊鏈技術(shù)為底層技術(shù)支撐,鏈接科技服務(wù)數(shù)據(jù)聯(lián)盟、政府監(jiān)管部門,構(gòu)建自治化的科技服務(wù)數(shù)據(jù)云平臺(tái),為科技服務(wù)業(yè)提供數(shù)據(jù)服務(wù)。如圖1 所示,科技服務(wù)數(shù)據(jù)共享機(jī)制由基礎(chǔ)設(shè)施層、控制管理層和應(yīng)用服務(wù)層組成,主要包含科技服務(wù)數(shù)據(jù)資源聯(lián)盟鏈、科技服務(wù)數(shù)據(jù)平臺(tái)、數(shù)據(jù)請(qǐng)求者、數(shù)據(jù)源和數(shù)據(jù)擁有者五部分。
科技服務(wù)數(shù)據(jù)共享機(jī)制中,基礎(chǔ)設(shè)施層封裝了數(shù)據(jù)存儲(chǔ)的底層細(xì)節(jié),主要負(fù)責(zé)數(shù)據(jù)存儲(chǔ)、修改、刪除和查詢,將傳統(tǒng)的數(shù)據(jù)存儲(chǔ)分為數(shù)據(jù)源存儲(chǔ)和數(shù)據(jù)區(qū)塊存儲(chǔ),并對(duì)外提供統(tǒng)一的應(yīng)用程序編程接口(API);控制管理層在基礎(chǔ)設(shè)施層之上擴(kuò)展了更多協(xié)議,利用智能合約的可編程特性,封裝數(shù)據(jù)整合與共享相關(guān)的所有業(yè)務(wù)邏輯,使用聯(lián)盟鏈實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的直接通信協(xié)議,并且實(shí)現(xiàn)了區(qū)塊鏈與外界的交互;應(yīng)用服務(wù)層將控制管理層提供的功能接口包裝為不同的數(shù)據(jù)服務(wù),結(jié)合用戶需求抽象出用戶需要的相關(guān)服務(wù),并提供相應(yīng)接口簡化未來的開發(fā)擴(kuò)展工作。
科技服務(wù)數(shù)據(jù)平臺(tái)是基于科技服務(wù)業(yè)數(shù)據(jù)資源聯(lián)盟鏈建立的,為數(shù)據(jù)請(qǐng)求者提供科技服務(wù)數(shù)據(jù)的云平臺(tái),也是連接數(shù)據(jù)擁有者和數(shù)據(jù)請(qǐng)求者的橋梁,它為用戶提供用戶注冊(cè)、數(shù)據(jù)訪問、可視化分析等服務(wù)。該平臺(tái)系統(tǒng)中的區(qū)塊鏈選用聯(lián)盟鏈,由政府相關(guān)機(jī)構(gòu)建立科技服務(wù)業(yè)數(shù)據(jù)資源聯(lián)盟,管理科技服務(wù)數(shù)據(jù)資源基礎(chǔ)設(shè)施并行使相應(yīng)的監(jiān)管審查職能,聯(lián)盟成員包括技術(shù)交易所、科技成果轉(zhuǎn)化中心等。在聯(lián)盟鏈中,聯(lián)盟成員遵守聯(lián)盟規(guī)則,經(jīng)過監(jiān)管方審核和身份認(rèn)證之后進(jìn)入聯(lián)盟,聯(lián)盟會(huì)為其頒發(fā)身份證書。聯(lián)盟成員負(fù)責(zé)聯(lián)盟鏈中一個(gè)或多個(gè)節(jié)點(diǎn)的運(yùn)行,各節(jié)點(diǎn)間互相監(jiān)督、共同維護(hù),并通過數(shù)據(jù)區(qū)塊存儲(chǔ)索引數(shù)據(jù);同時(shí)大型交易平臺(tái)和機(jī)構(gòu)也有較好的服務(wù)器和網(wǎng)絡(luò)設(shè)備等硬件基礎(chǔ)設(shè)施,為數(shù)據(jù)的穩(wěn)定性和安全性提供了保障。數(shù)據(jù)請(qǐng)求者具體指對(duì)數(shù)據(jù)有需求的個(gè)人、企業(yè)或研究機(jī)構(gòu)等,其在科技服務(wù)業(yè)數(shù)據(jù)平臺(tái)注冊(cè)登錄之后,提交自己的身份信息完成與聯(lián)盟鏈的信息交互,由聯(lián)盟鏈進(jìn)行身份驗(yàn)證。數(shù)據(jù)擁有者指擁有數(shù)據(jù)所有管理權(quán)限的個(gè)體或機(jī)構(gòu),如科研機(jī)構(gòu)、高校、政府機(jī)構(gòu)或個(gè)人等,其發(fā)布數(shù)據(jù)信息,生成數(shù)據(jù)完整性驗(yàn)證標(biāo)識(shí),寫入?yún)^(qū)塊鏈中進(jìn)行公開、不可篡改地存儲(chǔ)。數(shù)據(jù)源由各科技服務(wù)機(jī)構(gòu)數(shù)據(jù)中心、高校數(shù)據(jù)庫、科研機(jī)構(gòu)數(shù)據(jù)庫以及個(gè)人存儲(chǔ)設(shè)備構(gòu)成,且能夠連接遠(yuǎn)程數(shù)據(jù)訪問的計(jì)算機(jī)、中心服務(wù)器或云服務(wù)器。
科技服務(wù)數(shù)據(jù)平臺(tái)系統(tǒng)將科技服務(wù)數(shù)據(jù)的存儲(chǔ)、請(qǐng)求、管理三者分開,由各企業(yè)與個(gè)人進(jìn)行分布式存儲(chǔ)和管控?cái)?shù)據(jù),因此不再存在第三方數(shù)據(jù)管理機(jī)構(gòu);并且將科技服務(wù)數(shù)據(jù)進(jìn)行分類整合,可提供供需對(duì)接的交互式數(shù)據(jù)共享服務(wù),形成數(shù)據(jù)權(quán)限可信、透明、平等的數(shù)據(jù)交互機(jī)制。
圖1 融入BaaS 的科技服務(wù)數(shù)據(jù)整合與共享機(jī)制的系統(tǒng)結(jié)構(gòu)
科技服務(wù)數(shù)據(jù)平臺(tái)中的智能合約,是可以在區(qū)塊鏈上自動(dòng)執(zhí)行的特殊程序,其程序代碼以及數(shù)據(jù)均存儲(chǔ)于區(qū)塊鏈上,具有防篡改性強(qiáng)、去中心化程度高等特點(diǎn)[21]。本研究在聯(lián)盟鏈中部署的智能合約(如圖2 所示)包括身份管理合約(identity manage contract,TS-IMC)、數(shù)據(jù)整合合約(data integration contract,TS-DIC)、數(shù)據(jù)共享合約(data sharing contract,TS-DSC)。
圖2 科技服務(wù)數(shù)據(jù)平臺(tái)的智能合約設(shè)計(jì)
TS-IMC 合約作為全局合約來管理用戶的身份證書,并進(jìn)行身份認(rèn)證,記錄內(nèi)容主要有用戶屬性集role、用戶ID 和與其相關(guān)聯(lián)的TS-DIC 合約和TSDSC 合約。TS-DIC 合約用于實(shí)現(xiàn)科技服務(wù)數(shù)據(jù)收集和存儲(chǔ)的業(yè)務(wù)邏輯,包括科技服務(wù)數(shù)據(jù)收集合約(data collection contract,DCC)和科技服務(wù)數(shù)據(jù)存儲(chǔ)合約(data storage contract,DSC)。其中,DCC合約用于數(shù)據(jù)的分類和上傳;DSC 合約用于存儲(chǔ)數(shù)據(jù)的源條目索引文件map,如表2 所示,主要包括記錄號(hào)(RecordID)、哈希值(BlockHash)、用戶信息(UserName)、文件索引號(hào)(SEQ)和文件指針(P)等。TS-DSC 合約用于實(shí)現(xiàn)科技服務(wù)數(shù)據(jù)訪問和檢索的業(yè)務(wù)邏輯,包括數(shù)據(jù)權(quán)限控制合約(data authority control contract,DACC)和數(shù)據(jù)檢索合約(data retrieval contract,DRC)。其中,DACC 合約用于數(shù)據(jù)訪問申請(qǐng)的權(quán)限控制;DRC 合約用于實(shí)現(xiàn)數(shù)據(jù)的下載和引用。
表2 科技服務(wù)數(shù)據(jù)平臺(tái)的源條目索引文件
BaaS 技術(shù)需要非對(duì)稱加密算法和Hash 算法等多種加密算法共存,進(jìn)行數(shù)據(jù)的加密,來保證數(shù)據(jù)整合與共享過程中的安全性和隱私性。非對(duì)稱加密會(huì)產(chǎn)生公鑰和私鑰兩把密鑰,公鑰用于對(duì)外公開加密數(shù)據(jù),私鑰由使用者自己保管、用于數(shù)據(jù)解密。哈希算法是一個(gè)單向函數(shù),它將任意長度的數(shù)據(jù)作為輸入,被映射為固定長度的字符串作為輸出[22]。本研究在對(duì)科技服務(wù)數(shù)據(jù)整合與共享的過程中,參考Nasrulin 等[22]的做法,以某種算法(如SHA Hash),將任意長度的數(shù)據(jù)作為輸入,經(jīng)過計(jì)算得出私鑰;然后參考H?lbl 等[23]的做法,采用另一種算法(如 ECC 和 RSA)分解私鑰生成公鑰。此過程是不可逆的,形成的密鑰及其主要功能如表3 所示。
表3 科技服務(wù)數(shù)據(jù)平臺(tái)的主要密鑰和作用
科技服務(wù)數(shù)據(jù)共享的過程是指,對(duì)科技成果在產(chǎn)業(yè)化進(jìn)程中形成的數(shù)據(jù),通過智能合約和混合加密技術(shù),在聯(lián)盟鏈和數(shù)據(jù)源中實(shí)現(xiàn)安全可靠的數(shù)據(jù)收集、整合與存儲(chǔ),在科技服務(wù)業(yè)數(shù)據(jù)平臺(tái)和聯(lián)盟鏈之間為數(shù)據(jù)請(qǐng)求者提供數(shù)據(jù)的訪問與共享。基于以上科技服務(wù)數(shù)據(jù)共享的系統(tǒng)結(jié)構(gòu),融合BaaS 的相關(guān)原理,本研究將實(shí)現(xiàn)特定功能的基本模塊按照工作流程有機(jī)整合,提出了整體的數(shù)據(jù)交互流程。如圖3 所示,步驟1 和步驟2 為科技服務(wù)數(shù)據(jù)收集整合過程,步驟3、步驟4 和步驟5 為科技服務(wù)數(shù)據(jù)共享過程。
圖3 科技服務(wù)數(shù)據(jù)平臺(tái)的數(shù)據(jù)交互流程
科技服務(wù)數(shù)據(jù)平臺(tái)內(nèi)由身份管理合約發(fā)放的身份證書,代表著用戶、聯(lián)盟成員、數(shù)據(jù)請(qǐng)求者參與到此系統(tǒng)中,是科技服務(wù)數(shù)據(jù)整合、共享等活動(dòng)的基礎(chǔ)。用戶注冊(cè)流程具體如下:數(shù)據(jù)請(qǐng)求者或數(shù)據(jù)擁有者向科技服務(wù)業(yè)數(shù)據(jù)平臺(tái)提交注冊(cè)申請(qǐng),由身份管理合約TS-IMC 自動(dòng)審核,通過后發(fā)放身份證書SU,再通過混合加密技術(shù)生成用戶注冊(cè)密鑰對(duì)KURprive 和KURpub。數(shù)據(jù)擁有者除了生成用戶注冊(cè)密鑰KUR 之外,還需證明自己擁有數(shù)據(jù)的所有權(quán),需通過哈希算法將用戶注冊(cè)私鑰KURprive 生成所有權(quán)驗(yàn)證密鑰KPV。希望加入聯(lián)盟的科技服務(wù)機(jī)構(gòu),需要獲得半數(shù)以上聯(lián)盟成員的同意,才能在聯(lián)盟中完成身份的注冊(cè),由TS-IMC 審核發(fā)放SU。
加入聯(lián)盟后,在數(shù)據(jù)上傳前,需按照?qǐng)D4 所示的科技服務(wù)數(shù)據(jù)分類結(jié)構(gòu)進(jìn)行排序。在數(shù)據(jù)源中,不同的層次存儲(chǔ)不同的科技服務(wù)數(shù)據(jù)信息:在根root層存儲(chǔ)用戶信息,中間mid 層記錄服務(wù)領(lǐng)域信息和數(shù)據(jù)集信息,葉子leaf 層存儲(chǔ)數(shù)據(jù)細(xì)節(jié)信息。將不同層次數(shù)據(jù)的索引信息傳入數(shù)據(jù)區(qū)塊中的對(duì)應(yīng)節(jié)點(diǎn),壓縮為SEQ,可以證明在數(shù)據(jù)源和Merkle 樹中所保存數(shù)據(jù)的真實(shí)性。SEQ 主要由用戶身份ID 及其分類層次loc 構(gòu)成,命名規(guī)則為:SEQ:ID+mid+leaf。如圖4 中的專利信息,其索引號(hào)SEQ 為:ID||5211。
圖4 科技服務(wù)數(shù)據(jù)平臺(tái)的數(shù)據(jù)分類結(jié)構(gòu)
數(shù)據(jù)擁有者上傳數(shù)據(jù)時(shí),需將請(qǐng)求發(fā)送到智能合約,TS-DIC 合約在收到請(qǐng)求之后,先調(diào)用DCC合約,通過身份證書對(duì)其身份和數(shù)據(jù)進(jìn)行驗(yàn)證,驗(yàn)證通過后使用混合加密技術(shù)對(duì)數(shù)據(jù)進(jìn)行加密。數(shù)據(jù)整合上傳的過程如圖5 所示。首先,采用混合加密技術(shù)和所有權(quán)驗(yàn)證密鑰KPV 將文件加密,生成文件加密密鑰KDE 和密文文件ASEQ。其次,將分類正確的密文文件ASEQ上傳至數(shù)據(jù)源中,獲取密文文件ASEQ的下載地址即文件指針PSEQ,并將不同層次數(shù)據(jù)的索引信息傳入數(shù)據(jù)區(qū)塊中的對(duì)應(yīng)節(jié)點(diǎn),按照科技服務(wù)數(shù)據(jù)分類結(jié)構(gòu)生成SEQ(ID,loc)。最后,調(diào)用數(shù)據(jù)整合合約TS-DIC,將文件指針PSEQ 和文件索引號(hào)SEQ 上傳至聯(lián)盟鏈。TS-DIC 合約收到新增數(shù)據(jù)的請(qǐng)求后,調(diào)用DSC 合約,并按照源條目索引文件map 格式進(jìn)行記錄。
圖5 科技服務(wù)數(shù)據(jù)平臺(tái)的數(shù)據(jù)整合上傳流程
各類數(shù)據(jù)源由各數(shù)據(jù)提供方負(fù)責(zé)管理與維護(hù),只需要將數(shù)據(jù)詳細(xì)描述和共享協(xié)議以文件形式放入分布式網(wǎng)絡(luò)中,并在聯(lián)盟鏈上發(fā)布文件索引號(hào)和文件指針,綁定數(shù)據(jù)所有權(quán);用戶在需要數(shù)據(jù)時(shí),從科技服務(wù)業(yè)數(shù)據(jù)平臺(tái)上根據(jù)數(shù)據(jù)類型或關(guān)鍵字檢索到數(shù)據(jù),通過聯(lián)盟鏈和分布式網(wǎng)絡(luò)定位數(shù)據(jù)描述,實(shí)現(xiàn)數(shù)據(jù)共享。
科技服務(wù)數(shù)據(jù)平臺(tái)的數(shù)據(jù)共享,支持對(duì)數(shù)據(jù)資源的線上瀏覽、下載和引用,數(shù)據(jù)共享功能按照共享協(xié)議和用戶權(quán)限向用戶呈現(xiàn)相關(guān)的共享文件。文件下載和引用主要分為兩種情況:一是數(shù)據(jù)擁有者自己下載和引用文件,利用所有權(quán)驗(yàn)證密鑰KPV 解密文件;二是符合訪問策略的用戶從聯(lián)盟鏈獲取數(shù)據(jù)共享密鑰KDS 解密文件。
用戶在科技服務(wù)數(shù)據(jù)平臺(tái)發(fā)送訪問數(shù)據(jù)的申請(qǐng),提交數(shù)據(jù)申請(qǐng)基本信息。數(shù)據(jù)共享合約TS-DSC 在收到請(qǐng)求后,先調(diào)用DACC 合約,通過身份證書SU進(jìn)行身份驗(yàn)證,若該用戶身份驗(yàn)證通過且具有訪問權(quán)限,則可以得到數(shù)據(jù)訪問密鑰KDA,再調(diào)用DRC合約檢索自己所需要的數(shù)據(jù)。根據(jù)科技服務(wù)數(shù)據(jù)分類結(jié)構(gòu),調(diào)用DRC 合約檢索數(shù)據(jù)可提供兩種檢索方案:一是通過文件索引號(hào)進(jìn)行精確檢索;二是通過對(duì)輸入的科技服務(wù)領(lǐng)域等關(guān)鍵詞進(jìn)行模糊檢索。當(dāng)精確輸入文件索引號(hào)SEQ(ID,loc)時(shí),便對(duì)照DSC 合約中存儲(chǔ)的源條目索引文件map 對(duì)聯(lián)盟鏈進(jìn)行精確檢索,直到檢索到該數(shù)據(jù)項(xiàng)或其不存在的記錄。當(dāng)對(duì)數(shù)據(jù)的分類結(jié)構(gòu)不確定時(shí),先在map 中查找分類節(jié)點(diǎn)目錄,并輸入中間節(jié)點(diǎn)值,然后對(duì)照map 中的記錄對(duì)聯(lián)盟鏈進(jìn)行模糊檢索。DRC 合約會(huì)從中間節(jié)點(diǎn)開始檢索,直至鎖定葉子節(jié)點(diǎn)范圍,如果map 中的記錄屬于鎖定的葉子節(jié)點(diǎn)范圍,則添加該記錄。最后,DRC 合約會(huì)將檢索到的數(shù)據(jù)根據(jù)混合加密技術(shù)生成數(shù)據(jù)共享密鑰KDS,連同數(shù)據(jù)的文件指針P一起發(fā)送給請(qǐng)求用戶,用戶可以解密下載或引用密文文件,實(shí)現(xiàn)文件共享。限于篇幅,具體流程備索。
本研究中區(qū)塊鏈選用的是聯(lián)盟鏈。區(qū)別于公有鏈,聯(lián)盟鏈具有身份認(rèn)證以及權(quán)限設(shè)置的功能,通過智能合約提供的身份認(rèn)證和云計(jì)算技術(shù)提供的巨大算力,可以保證聯(lián)盟鏈成員為合法成員、用戶為合法用戶,降低系統(tǒng)風(fēng)險(xiǎn)。數(shù)據(jù)在上傳前,采用混合加密技術(shù)加密,上傳的文件在數(shù)據(jù)源中以密態(tài)存儲(chǔ),在聯(lián)盟鏈中通過數(shù)據(jù)整合合約存儲(chǔ)索引文件,并通過數(shù)據(jù)訪問合約,使得身份未認(rèn)證或沒有訪問權(quán)限的第三方無法獲取數(shù)據(jù)存儲(chǔ)的真實(shí)存儲(chǔ)地址。數(shù)據(jù)的整合與共享都是通過數(shù)據(jù)擁有者和數(shù)據(jù)請(qǐng)求者的私鑰進(jìn)行數(shù)字簽名,再通過共識(shí)上傳至區(qū)塊鏈,私鑰的隱秘性也保證了數(shù)據(jù)共享過程中的安全性和隱私性。
本研究對(duì)融入BaaS 的科技服務(wù)數(shù)據(jù)共享的系統(tǒng)結(jié)構(gòu)、智能合約和加密密鑰進(jìn)行了設(shè)計(jì),并以此為基礎(chǔ)研究了科技服務(wù)數(shù)據(jù)共享的實(shí)現(xiàn)機(jī)制。根據(jù)科技服務(wù)數(shù)據(jù)交互流程,設(shè)計(jì)出科技服務(wù)數(shù)據(jù)分類結(jié)構(gòu),對(duì)科技服務(wù)數(shù)據(jù)進(jìn)行統(tǒng)一排序、分類和存儲(chǔ),實(shí)現(xiàn)了對(duì)數(shù)據(jù)的整合以及數(shù)據(jù)所有權(quán)的確定;利用區(qū)塊鏈上智能合約和數(shù)據(jù)區(qū)塊中存儲(chǔ)的文件索引號(hào)信息,實(shí)現(xiàn)對(duì)數(shù)據(jù)的有效檢索和共享,并保證了數(shù)據(jù)共享過程中的安全性和隱私性。總的來說,本研究方案綜合考慮了安全性、易用性和可擴(kuò)展性等問題,可實(shí)現(xiàn)對(duì)科技服務(wù)數(shù)據(jù)的高效整合與安全共享,為科技服務(wù)業(yè)的創(chuàng)新發(fā)展及其數(shù)據(jù)管理標(biāo)準(zhǔn)化提供一些有益啟發(fā)。
當(dāng)下科技服務(wù)業(yè)對(duì)于數(shù)據(jù)的需求越來越高,BaaS 憑借著區(qū)塊鏈技術(shù)的去中心化特性和云計(jì)算所能提供的巨大算力,必然會(huì)有出色的表現(xiàn)。在未來工作中,可就科技服務(wù)數(shù)據(jù)共享中的激勵(lì)機(jī)制開展進(jìn)一步研究,探討科技服務(wù)機(jī)構(gòu)組成聯(lián)盟鏈的商業(yè)行為。