陽(yáng) 真 黃 松 鄭長(zhǎng)友 王廷永(陸軍工程大學(xué)指揮控制工程學(xué)院 江蘇 南京 210000)
隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,眾包測(cè)試技術(shù)的應(yīng)用日益廣泛?!氨姲?crowdsourcing)一詞是Howe[1]在2006年提出的,眾包是一種基于人和機(jī)器計(jì)算相結(jié)合的新興分布式問(wèn)題解決模型。眾包測(cè)試是依托新一代互聯(lián)網(wǎng)技術(shù)衍生出來(lái)的新興的軟件測(cè)試方式,它變革了傳統(tǒng)的測(cè)試服務(wù)模式,利用共享經(jīng)濟(jì)的特征,采用分布、協(xié)作的方式組織生產(chǎn),協(xié)同測(cè)試需求和測(cè)試資源,聚合形成規(guī)模效益[2]。但作為一種新的業(yè)態(tài),眾測(cè)的服務(wù)模式尚不成熟,測(cè)試服務(wù)缺乏可信性。相比于傳統(tǒng)的測(cè)評(píng)機(jī)構(gòu),眾測(cè)平臺(tái)具有開(kāi)放的環(huán)境,提供了大量資源,但其開(kāi)放性也給眾測(cè)知識(shí)產(chǎn)權(quán)的安全性帶來(lái)了挑戰(zhàn)。從長(zhǎng)遠(yuǎn)來(lái)看,眾測(cè)平臺(tái)吸引供需各邊資源匯聚、提高執(zhí)行效率及競(jìng)爭(zhēng)力離不開(kāi)強(qiáng)有力的可信管理與安全保障。
目前,在知識(shí)產(chǎn)權(quán)的管理與保護(hù)方面,人工結(jié)合中心機(jī)構(gòu)管理的模式是較為普遍的,但在受到DDoS攻擊和女巫攻擊的情況下,這種模式顯得較為脆弱,會(huì)造成系統(tǒng)故障、數(shù)據(jù)丟失等問(wèn)題,且知識(shí)產(chǎn)權(quán)管理的周期較長(zhǎng)、成本較高。針對(duì)上述問(wèn)題,國(guó)內(nèi)外有許多學(xué)者進(jìn)行了一系列的研究,文獻(xiàn)[3]針對(duì)加密算法進(jìn)行分析,文獻(xiàn)[4]針對(duì)DCI碼進(jìn)行探索,文獻(xiàn)[5-6]針對(duì)數(shù)字許可證和令牌進(jìn)行研究與設(shè)計(jì)。上述研究大多是通過(guò)一定的技術(shù)手段防止知識(shí)產(chǎn)權(quán)被非法拷貝與剽竊,但仍存在局限性,技術(shù)門(mén)檻較高且適用面較窄。文獻(xiàn)[7]指出區(qū)塊鏈在知識(shí)產(chǎn)權(quán)密集型產(chǎn)業(yè)可用于知識(shí)產(chǎn)權(quán)的注冊(cè)與注銷、控制與跟蹤其分配等。文獻(xiàn)[8]針對(duì)許可證結(jié)構(gòu)與管理機(jī)制進(jìn)行設(shè)計(jì),但該機(jī)制對(duì)節(jié)點(diǎn)性能要求較高。文獻(xiàn)[9]將區(qū)塊鏈與數(shù)字水印、星際文件系統(tǒng)(IPFS)等技術(shù)相結(jié)合,設(shè)計(jì)版權(quán)管理方案,但該方案只適用于數(shù)字圖像的版權(quán)管理[10]。對(duì)于眾測(cè)知識(shí)產(chǎn)權(quán)(本文所指的眾測(cè)知識(shí)產(chǎn)權(quán)包括眾測(cè)接包方提交的測(cè)評(píng)報(bào)告、測(cè)試代碼,平臺(tái)方出具的眾測(cè)結(jié)果報(bào)告書(shū)等知識(shí)產(chǎn)權(quán)),針對(duì)眾包測(cè)試平臺(tái)的開(kāi)放性特點(diǎn),需要研究符合眾測(cè)知識(shí)產(chǎn)權(quán)特點(diǎn)的可信管理框架。本文利用區(qū)塊鏈的去中心化、可溯源、不可篡改等特性,結(jié)合IPFS、SHA256算法、數(shù)字簽名技術(shù),提出基于區(qū)塊鏈的眾包測(cè)試知識(shí)產(chǎn)權(quán)可信管理框架,并實(shí)現(xiàn)可信管理系統(tǒng),可完成對(duì)知識(shí)產(chǎn)權(quán)的溯源、確權(quán)與查詢操作。
在眾測(cè)動(dòng)態(tài)服務(wù)過(guò)程中,眾包測(cè)試知識(shí)產(chǎn)權(quán)(如接包方提供的測(cè)評(píng)報(bào)告)被提交到眾測(cè)平臺(tái)后,需要經(jīng)過(guò)一系列處理,之后才交付給發(fā)包方,由于其過(guò)程并不透明,知識(shí)產(chǎn)權(quán)無(wú)法進(jìn)行溯源與確權(quán),無(wú)法確保數(shù)據(jù)的真實(shí)性與可靠性。若知識(shí)產(chǎn)權(quán)數(shù)據(jù)被惡意用戶篡改,或是由于眾測(cè)平臺(tái)工作人員的失誤導(dǎo)致數(shù)據(jù)改變,則無(wú)法對(duì)數(shù)據(jù)進(jìn)行追溯。
在軟件測(cè)試階段及發(fā)放獎(jiǎng)勵(lì)階段,眾測(cè)接包方的測(cè)試用例代碼易被剽竊,一份測(cè)試代碼可能被抄襲并反復(fù)提交,從而領(lǐng)取多份獎(jiǎng)勵(lì)。當(dāng)出現(xiàn)經(jīng)濟(jì)糾紛時(shí),由于接包方的測(cè)試代碼并未進(jìn)行存證,因此無(wú)法對(duì)其來(lái)源進(jìn)行確認(rèn),問(wèn)題無(wú)法得到妥善解決。上述現(xiàn)狀侵犯了眾測(cè)接包方的知識(shí)產(chǎn)權(quán),損傷了眾測(cè)發(fā)包方與眾測(cè)平臺(tái)的經(jīng)濟(jì)利益,不利于眾包測(cè)試的開(kāi)展,眾包測(cè)試知識(shí)產(chǎn)權(quán)可信管理問(wèn)題亟待解決。
2008年Nakamoto[11]發(fā)明比特幣后,區(qū)塊鏈技術(shù)就此起源,并得到迅速發(fā)展。作為一種點(diǎn)對(duì)點(diǎn)的網(wǎng)絡(luò),區(qū)塊鏈本質(zhì)上是一種去中心化、可追溯、防篡改的分布式數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)由各節(jié)點(diǎn)根據(jù)嚴(yán)格規(guī)則和多方共識(shí)進(jìn)行維護(hù),每個(gè)節(jié)點(diǎn)都記錄著發(fā)生的所有交易信息,區(qū)塊鏈交易的數(shù)據(jù)只能追加,而無(wú)法篡改[12-13]。比特幣、以太坊、超級(jí)賬本、Zcash等是目前較為著名的區(qū)塊鏈系統(tǒng)[14-15]。
應(yīng)用區(qū)塊鏈技術(shù),可以有效滿足眾包測(cè)試知識(shí)產(chǎn)權(quán)可信管理需求:(1) 區(qū)塊鏈不僅可以記錄眾測(cè)知識(shí)產(chǎn)權(quán)的所有權(quán)信息,還通過(guò)加蓋時(shí)間戳的方式記錄了每份知識(shí)產(chǎn)權(quán)上鏈的時(shí)間,且均不能被篡改,可幫助眾測(cè)平臺(tái)方有效追溯知識(shí)產(chǎn)權(quán)的來(lái)源。(2) 結(jié)合數(shù)據(jù)加密技術(shù)與數(shù)字證書(shū)技術(shù),區(qū)塊鏈可以確保無(wú)關(guān)人員無(wú)法獲知被訪問(wèn)數(shù)據(jù)的內(nèi)容。(3) 可以使用智能合約來(lái)執(zhí)行授權(quán)的自動(dòng)化流程,無(wú)須中介參與,通過(guò)共識(shí)算法保證每個(gè)節(jié)點(diǎn)的數(shù)據(jù)一致性,知識(shí)產(chǎn)權(quán)在通過(guò)申請(qǐng)后,自動(dòng)納入系統(tǒng)并獲得所有權(quán)[16]。以上三方面共同確保在區(qū)塊鏈管理下,眾測(cè)知識(shí)產(chǎn)權(quán)的所有權(quán)歸屬能夠在第一時(shí)間得到確認(rèn),知識(shí)產(chǎn)權(quán)也能得到安全的保障。
基于區(qū)塊鏈的眾測(cè)知識(shí)產(chǎn)權(quán)可信管理框架是指將區(qū)塊鏈技術(shù)應(yīng)用于眾包測(cè)試知識(shí)產(chǎn)權(quán)的管理,采用區(qū)塊鏈代替中心化數(shù)據(jù)庫(kù)存儲(chǔ)知識(shí)產(chǎn)權(quán)數(shù)據(jù),記錄的數(shù)據(jù)公開(kāi)透明、可追溯且不可更改,利用公開(kāi)透明的智能合約實(shí)現(xiàn)知識(shí)產(chǎn)權(quán)的管理,保證知識(shí)產(chǎn)權(quán)數(shù)據(jù)的可信性和安全性。
圖1為基于區(qū)塊鏈的眾測(cè)知識(shí)產(chǎn)權(quán)可信管理框架,該框架分為區(qū)塊鏈層、服務(wù)層、應(yīng)用層、用戶層四個(gè)層次,下一層通過(guò)API接口為上一層提供服務(wù)。由于測(cè)試代碼、測(cè)評(píng)報(bào)告等信息僅在眾測(cè)各參與方內(nèi)部流通,不向外界公開(kāi),且各參與方之間屬于合作關(guān)系,因此該框架采用聯(lián)盟鏈結(jié)構(gòu)。
區(qū)塊鏈層在整個(gè)框架中位于最底層,它為服務(wù)層提供區(qū)塊鏈的基礎(chǔ)服務(wù)。所有節(jié)點(diǎn)上都部署著區(qū)塊鏈層的基礎(chǔ)服務(wù),用于驗(yàn)證業(yè)務(wù)請(qǐng)求是否有效。
(1) 接口適配:對(duì)請(qǐng)求信息進(jìn)行數(shù)據(jù)分析、鑒權(quán)處理后,由各參與節(jié)點(diǎn)按照共識(shí)機(jī)制對(duì)其進(jìn)行驗(yàn)證,再完整地將其保存在共享賬本上。(2) 共識(shí)管理:使用高效率、高容錯(cuò)的PBFT算法進(jìn)行共識(shí)。(3) 網(wǎng)絡(luò)通信:主要利用P2P技術(shù),進(jìn)行節(jié)點(diǎn)之間的組網(wǎng)以及業(yè)務(wù)部分的數(shù)據(jù)傳輸。(4) 記錄存儲(chǔ):完全采用塊鏈存儲(chǔ)結(jié)構(gòu),任何一個(gè)歷史數(shù)據(jù)在被篡改后都可以被自校驗(yàn)程序發(fā)現(xiàn),并對(duì)其數(shù)據(jù)進(jìn)行實(shí)時(shí)警告和自動(dòng)修改。(5) 智能合約:負(fù)責(zé)注冊(cè)與發(fā)行合約,定義上鏈信息的格式,并明確合約的觸發(fā)條件與觸發(fā)合約后的業(yè)務(wù)執(zhí)行過(guò)程。
服務(wù)層在本框架中負(fù)責(zé)建立區(qū)塊鏈應(yīng)用服務(wù)基礎(chǔ)設(shè)施產(chǎn)品,包括數(shù)字資產(chǎn)、鑒證服務(wù)等應(yīng)用領(lǐng)域,有助于迅速完成上層區(qū)塊鏈服務(wù)應(yīng)用的構(gòu)建。
(1) 數(shù)字資產(chǎn):數(shù)字資產(chǎn)的上鏈可以幫助眾測(cè)的各參與方完成從鏈下到鏈上的資產(chǎn)轉(zhuǎn)換,使眾測(cè)交易更加透明化。數(shù)字資產(chǎn)上鏈后,與交易相關(guān)的操作例如資產(chǎn)轉(zhuǎn)移、提現(xiàn)等都會(huì)有數(shù)字簽名校驗(yàn)且留有不可篡改的記錄,有助于對(duì)眾測(cè)服務(wù)流程中的資金流通進(jìn)行可信管理,減少金錢(qián)往來(lái)糾紛。
(2) 鑒證服務(wù):在知識(shí)產(chǎn)權(quán)領(lǐng)域,區(qū)塊鏈具有不可抹除以及公示的能力。眾測(cè)各參與方可以通過(guò)簡(jiǎn)單接口將知識(shí)產(chǎn)權(quán)信息等發(fā)布在區(qū)塊鏈上,系統(tǒng)中的其他節(jié)點(diǎn)可為其鑒證。
應(yīng)用層為用戶層的眾測(cè)各參與方提供安全可靠的應(yīng)用。在眾測(cè)知識(shí)產(chǎn)權(quán)可信管理全生命周期涉及的主要活動(dòng)為知識(shí)產(chǎn)權(quán)管控、知識(shí)產(chǎn)權(quán)歸屬、知識(shí)產(chǎn)權(quán)查詢。因此,本框架設(shè)計(jì)出溯源管理、確權(quán)管理、查詢管理三大應(yīng)用模塊,如圖2所示。
圖2 三大應(yīng)用模塊
1) 溯源管理。溯源管理是指通過(guò)一定技術(shù)實(shí)現(xiàn)對(duì)數(shù)據(jù)的來(lái)源和創(chuàng)建過(guò)程的追溯[17]。在眾測(cè)知識(shí)產(chǎn)權(quán)管理活動(dòng)中,從測(cè)試項(xiàng)目開(kāi)始到結(jié)束需經(jīng)過(guò)一系列階段,由于其中間階段缺乏透明度,用戶難以判斷數(shù)據(jù)的來(lái)源以及數(shù)據(jù)是否可信。溯源管理通過(guò)對(duì)數(shù)據(jù)來(lái)源與轉(zhuǎn)換過(guò)程的追溯,能夠確保數(shù)據(jù)真實(shí)性。
溯源管理可實(shí)現(xiàn)眾測(cè)知識(shí)產(chǎn)權(quán)數(shù)據(jù)的鏈上可信溯源查證。溯源管理實(shí)現(xiàn)方案如下:(1) 知識(shí)產(chǎn)權(quán)信息采集與存儲(chǔ)。系統(tǒng)將知識(shí)產(chǎn)權(quán)數(shù)據(jù)進(jìn)行采集,使用加密算法將其轉(zhuǎn)化為散列值,再對(duì)散列值進(jìn)行數(shù)字簽名,將知識(shí)產(chǎn)權(quán)文件實(shí)體、數(shù)字簽名、提供者信息、數(shù)字證書(shū)等知識(shí)產(chǎn)權(quán)完整信息上傳至IPFS。隨后,IPFS對(duì)數(shù)據(jù)進(jìn)行分塊、加密并存儲(chǔ),并根據(jù)數(shù)據(jù)內(nèi)容計(jì)算出唯一對(duì)應(yīng)的文件哈希地址,根據(jù)該文件哈希地址,用戶可在IPFS網(wǎng)絡(luò)中下載并保存該文件,且數(shù)據(jù)一旦被存入IPFS,則將永久性地存于IPFS中,無(wú)法被刪除。(2) 將知識(shí)產(chǎn)權(quán)完整信息加密,轉(zhuǎn)化為唯一的散列值,即文件摘要,系統(tǒng)將數(shù)據(jù)ID、文件摘要、文件哈希地址、數(shù)據(jù)來(lái)源信息、時(shí)間戳、數(shù)據(jù)處理信息構(gòu)成溯源數(shù)據(jù)模型,方便后續(xù)數(shù)據(jù)追溯。(3) 知識(shí)產(chǎn)權(quán)數(shù)據(jù)上鏈。數(shù)據(jù)上鏈過(guò)程由智能合約完成,聯(lián)盟鏈網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)共同參與交易的共識(shí)驗(yàn)證,該過(guò)程透明且可追溯。溯源數(shù)據(jù)由各節(jié)點(diǎn)共同維護(hù),提供信任背書(shū),增強(qiáng)系統(tǒng)的可信度。(4) 數(shù)據(jù)溯源驗(yàn)證。各參與方可通過(guò)唯一數(shù)據(jù)ID查看知識(shí)產(chǎn)權(quán)信息,驗(yàn)證數(shù)據(jù)真實(shí)性,明確眾測(cè)知識(shí)產(chǎn)權(quán)歸屬,保障眾測(cè)知識(shí)產(chǎn)權(quán)所有者權(quán)益,出現(xiàn)糾紛時(shí)及時(shí)解決問(wèn)題。
2) 確權(quán)管理。確權(quán)管理是指系統(tǒng)利用區(qū)塊鏈不可篡改特性進(jìn)行數(shù)據(jù)確權(quán),驗(yàn)證鏈下知識(shí)產(chǎn)權(quán)數(shù)據(jù)是否被篡改。其實(shí)現(xiàn)方法如下:(1) 數(shù)據(jù)一致性驗(yàn)證。知識(shí)產(chǎn)權(quán)確權(quán)功能進(jìn)行鏈下知識(shí)產(chǎn)權(quán)與文件內(nèi)容散列值之間一致性驗(yàn)證。使用SHA256算法對(duì)鏈下需要確權(quán)的眾測(cè)知識(shí)產(chǎn)權(quán)進(jìn)行加密,得到散列值A(chǔ),再根據(jù)區(qū)塊鏈上的文件哈希地址在IPFS中找到相應(yīng)的知識(shí)產(chǎn)權(quán)完整信息,用數(shù)字證書(shū)提供的公鑰對(duì)數(shù)字簽名進(jìn)行解密,得到原知識(shí)產(chǎn)權(quán)文件內(nèi)容散列值B,將其與散列值A(chǔ)進(jìn)行對(duì)比,查看是否一致,從而驗(yàn)證眾測(cè)知識(shí)產(chǎn)權(quán)是否被篡改。(2) 產(chǎn)權(quán)歸屬確認(rèn)。驗(yàn)證通過(guò)后可從知識(shí)產(chǎn)權(quán)完整信息中獲取數(shù)字證書(shū)、提供者信息等,明確該知識(shí)產(chǎn)權(quán)所有者及其所有權(quán)。
3) 查詢管理。查詢管理是指用戶通過(guò)設(shè)置某些查詢條件,從系統(tǒng)中選取全部或者部分知識(shí)產(chǎn)權(quán)數(shù)據(jù)供用戶瀏覽。實(shí)現(xiàn)步驟如下:(1) 同義詞典構(gòu)建。在檢索過(guò)程中,同義詞典用于根據(jù)選定的查詢?cè)~來(lái)找到與之相關(guān)的詞信息數(shù)據(jù)。構(gòu)建的同義詞典庫(kù)應(yīng)包含知識(shí)產(chǎn)權(quán)相關(guān)的重要詞,也應(yīng)記錄同義詞間的關(guān)聯(lián)。具體地,結(jié)合使用Polarity投票規(guī)則和SO-PMI算法來(lái)實(shí)現(xiàn)知識(shí)產(chǎn)權(quán)同義詞典的構(gòu)建。在同義詞典構(gòu)建的過(guò)程中,詞典的哈希地址記錄在區(qū)塊鏈中,詞典記錄在IPFS中。(2) 關(guān)鍵詞預(yù)處理。針對(duì)從用戶需求提取到的詞語(yǔ)進(jìn)行分詞處理,并結(jié)合使用字符匹配、理解法和統(tǒng)計(jì)法提高分詞結(jié)果的準(zhǔn)確度。針對(duì)分詞結(jié)果進(jìn)行停用詞刪除操作,降低索引空間,減少常用詞對(duì)檢索有效性的影響。同時(shí),針對(duì)用戶需求提取到的英文詞語(yǔ),應(yīng)用詞干提取技術(shù)將動(dòng)名詞、否定形式等轉(zhuǎn)換為詞干,代替所有變形。(3) 智能匹配搜索。計(jì)算用戶需求詞干集與平臺(tái)所管理的每一個(gè)知識(shí)產(chǎn)權(quán)的Word Mover’s Distance。距離值越小,則表明用戶需求知識(shí)產(chǎn)權(quán)越接近。因此,平臺(tái)將按照距離由低到高排列展示搜索結(jié)果。
用戶層指的是各參與方可直接對(duì)應(yīng)用系統(tǒng)進(jìn)行訪問(wèn)。用戶層在眾測(cè)知識(shí)產(chǎn)權(quán)可信管理框架中指的是眾測(cè)平臺(tái)方、眾測(cè)發(fā)包方和眾測(cè)接包方。眾測(cè)發(fā)包方是在眾測(cè)平臺(tái)上提交測(cè)試需求以及待測(cè)軟件的人員;眾測(cè)接包方是在眾測(cè)平臺(tái)上完成眾測(cè)任務(wù)的人員;眾測(cè)平臺(tái)作為第三方,為眾測(cè)發(fā)包方和眾測(cè)接包方提供在線系統(tǒng)[2]。
由于區(qū)塊鏈系統(tǒng)要求各節(jié)點(diǎn)存儲(chǔ)賬本信息,考慮到區(qū)塊鏈數(shù)據(jù)的持久特性,使用區(qū)塊鏈來(lái)記錄大規(guī)模的數(shù)據(jù)勢(shì)必會(huì)帶來(lái)數(shù)據(jù)膨脹問(wèn)題,這將對(duì)系統(tǒng)的存儲(chǔ)性能帶來(lái)嚴(yán)峻的挑戰(zhàn)。因此,需要研究眾測(cè)資產(chǎn)鏈上鏈下分解與融合技術(shù),在確保知識(shí)產(chǎn)權(quán)數(shù)據(jù)完整性的同時(shí)降低系統(tǒng)的鏈上存儲(chǔ)壓力。
在本框架中,溯源管理、確權(quán)管理模塊均需利用眾測(cè)資產(chǎn)鏈上鏈下分解與融合技術(shù),下面將對(duì)該技術(shù)進(jìn)行詳細(xì)介紹。
眾測(cè)資產(chǎn)鏈上鏈下分解與融合技術(shù)是本框架的重要基礎(chǔ),用以解決區(qū)塊鏈存儲(chǔ)數(shù)據(jù)成本高、容量小的問(wèn)題。如圖3所示,需維護(hù)大量結(jié)構(gòu)化數(shù)據(jù)(如知識(shí)產(chǎn)權(quán)屬性信息)、非結(jié)構(gòu)化數(shù)據(jù)(如測(cè)試代碼)、文件類數(shù)據(jù)(如測(cè)評(píng)報(bào)告、眾測(cè)結(jié)果報(bào)告書(shū))。由此可知,眾測(cè)知識(shí)產(chǎn)權(quán)管理具有典型的多源、異構(gòu)、大規(guī)模特征。利用鏈上鏈下分解與融合技術(shù),針對(duì)新的知識(shí)產(chǎn)權(quán),對(duì)其進(jìn)行簽名后將文件摘要和知識(shí)產(chǎn)權(quán)文件分別保存在聯(lián)盟鏈和IPFS中。
圖3 眾測(cè)資產(chǎn)鏈上鏈下分解與融合技術(shù)
如圖3所示,技術(shù)實(shí)現(xiàn)流程分為知識(shí)產(chǎn)權(quán)分解、知識(shí)產(chǎn)權(quán)共識(shí)與知識(shí)產(chǎn)權(quán)融合三個(gè)階段。
(1) 知識(shí)產(chǎn)權(quán)分解。知識(shí)產(chǎn)權(quán)分解即將知識(shí)產(chǎn)權(quán)真實(shí)實(shí)體分解為文件摘要和知識(shí)產(chǎn)權(quán)文件兩部分。利用數(shù)字簽名技術(shù)可以確保數(shù)據(jù)來(lái)源的可靠性與真實(shí)性。該步驟將知識(shí)產(chǎn)權(quán)實(shí)體映射轉(zhuǎn)化為一份唯一的文件摘要,該文件摘要保存了由用戶私鑰加密生成的數(shù)字簽名、提供者、數(shù)字證書(shū)等信息。在知識(shí)產(chǎn)權(quán)管理過(guò)程中,使用文件摘要來(lái)代替眾測(cè)知識(shí)產(chǎn)權(quán)文件在知識(shí)產(chǎn)權(quán)管理體系中的流動(dòng),同時(shí)使用加密證書(shū)來(lái)驗(yàn)證知識(shí)產(chǎn)權(quán)的真實(shí)性以及未被篡改。具體地,首先使用SHA256算法對(duì)知識(shí)產(chǎn)權(quán)文件d進(jìn)行加密,生成知識(shí)產(chǎn)權(quán)文件內(nèi)容散列值R(d);通過(guò)RSA對(duì)知識(shí)產(chǎn)權(quán)內(nèi)容的散列值進(jìn)行加密處理,并且生成數(shù)字簽名S(R(d));再次使用SHA256對(duì)知識(shí)產(chǎn)權(quán)文件實(shí)體d、數(shù)字簽名S(R(d))、提供者、數(shù)字證書(shū)等知識(shí)產(chǎn)權(quán)完整信息t進(jìn)行加密,得到最終上鏈的知識(shí)產(chǎn)權(quán)文件散列值R(t),即文件摘要。
(2) 知識(shí)產(chǎn)權(quán)共識(shí)。在區(qū)塊鏈系統(tǒng)中,只有獲得授權(quán)的節(jié)點(diǎn)才可被納入到區(qū)塊鏈中,同時(shí)共識(shí)由多方完成而不是授權(quán)節(jié)點(diǎn)獨(dú)自完成。利用數(shù)字簽名等技術(shù)將各方產(chǎn)生的結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)、文件類數(shù)據(jù)分解為文件摘要和知識(shí)產(chǎn)權(quán)實(shí)體文件。在賬本共識(shí)記錄過(guò)程中,由于區(qū)塊鏈上的存儲(chǔ)空間有限,為減輕區(qū)塊鏈的存儲(chǔ)負(fù)擔(dān),區(qū)塊鏈上僅保存文件摘要信息,而被管理的知識(shí)產(chǎn)權(quán)實(shí)體存儲(chǔ)到IPFS網(wǎng)絡(luò)中。具體地,將知識(shí)產(chǎn)權(quán)完整信息t上傳至IPFS,得到文件的哈希地址A(t),再將數(shù)據(jù)ID、文件摘要R(t)、文件哈希地址A(t)、數(shù)據(jù)來(lái)源信息、時(shí)間戳、數(shù)據(jù)處理信息等上傳至聯(lián)盟鏈,各參與方共同完成知識(shí)產(chǎn)權(quán)共識(shí),使用穩(wěn)健的Hyperledger Fabric方案來(lái)建設(shè)聯(lián)盟架構(gòu);使用高效率、高容錯(cuò)的PBFT算法進(jìn)行共識(shí)。
(3) 知識(shí)產(chǎn)權(quán)融合。知識(shí)產(chǎn)權(quán)融合即根據(jù)區(qū)塊鏈上的文件哈希地址在鏈下IPFS中查找到具體的數(shù)據(jù)信息,完成鏈上鏈下信息的融合。當(dāng)用戶查詢鏈上信息時(shí),根據(jù)用戶信息和查詢條件可獲得文件哈希地址和文件摘要。根據(jù)文件哈希地址可搜索鏈下知識(shí)產(chǎn)權(quán)實(shí)體。若在相關(guān)緩存中查詢到結(jié)果,則無(wú)須再耗時(shí)進(jìn)一步查詢IPFS并解析文件。查詢和解析完畢后,比對(duì)文件摘要和知識(shí)產(chǎn)權(quán)實(shí)體信息即可認(rèn)證鏈上鏈下所指知識(shí)產(chǎn)權(quán)為同一知識(shí)產(chǎn)權(quán),完成鏈上鏈下知識(shí)產(chǎn)權(quán)信息的融合。
本文根據(jù)上述框架設(shè)計(jì),實(shí)現(xiàn)一個(gè)基于區(qū)塊鏈的眾包測(cè)試知識(shí)產(chǎn)權(quán)可信管理系統(tǒng)。實(shí)驗(yàn)所用主機(jī)為三臺(tái)云服務(wù)器,型號(hào)均為ecs.c5.large,配置均為2核4 GB,使用Ubuntu16.04操作系統(tǒng),安裝Docker環(huán)境,版本為19.03.5。底層區(qū)塊鏈?zhǔn)褂肏yperledger Fabric1.4.0搭建,是由眾測(cè)發(fā)包方、接包方、眾測(cè)平臺(tái)三方組成的聯(lián)盟鏈,每個(gè)對(duì)等方作為一個(gè)聯(lián)盟鏈節(jié)點(diǎn),分別部署于三臺(tái)服務(wù)器上,使用IPFS存儲(chǔ)眾包測(cè)試中的待測(cè)軟件、程序,以及相關(guān)文件,而將文件摘要、文件哈希地址等信息存儲(chǔ)在區(qū)塊鏈上。本系統(tǒng)使用HTML+CSS+JavaScript+vue.js等技術(shù)實(shí)現(xiàn)框架中的用戶層設(shè)計(jì),整合了fabric-sdk-java+ipfs-api+Docker等技術(shù)實(shí)現(xiàn)用戶層與IPFS以及Hyperledger Fabric的交互,通過(guò)Nginx實(shí)現(xiàn)跨域訪問(wèn)。
本框架的主要應(yīng)用模塊為溯源管理、確權(quán)管理、查詢管理,下面將對(duì)其進(jìn)行功能驗(yàn)證。
圖4是溯源管理示意圖,用戶可將眾測(cè)數(shù)據(jù)轉(zhuǎn)換為文件摘要,將眾測(cè)數(shù)據(jù)完整信息上傳至IPFS進(jìn)行存儲(chǔ),并將文件哈希地址等信息上傳至區(qū)塊鏈。用戶可根據(jù)數(shù)據(jù)唯一ID號(hào)查看數(shù)據(jù)信息并對(duì)數(shù)據(jù)真實(shí)性進(jìn)行溯源驗(yàn)證。
圖4 溯源管理
圖5是確權(quán)管理示意圖,可進(jìn)行鏈下知識(shí)產(chǎn)權(quán)與鏈上文件內(nèi)容散列值之間的一致性驗(yàn)證,對(duì)需確權(quán)的知識(shí)產(chǎn)權(quán)數(shù)據(jù)進(jìn)行加密,再將得到的散列值與鏈上文件內(nèi)容散列值進(jìn)行對(duì)比,查看是否一致,以確認(rèn)知識(shí)產(chǎn)權(quán)未被篡改。
圖6是查詢管理示意圖,用戶可設(shè)置搜索關(guān)鍵詞來(lái)檢索與之相關(guān)的知識(shí)產(chǎn)權(quán)。
圖6 查詢管理
基于區(qū)塊鏈的眾包測(cè)試知識(shí)產(chǎn)權(quán)可信管理系統(tǒng)可實(shí)現(xiàn)對(duì)眾測(cè)知識(shí)產(chǎn)權(quán)的可信管理,包括溯源、確權(quán)與查詢。系統(tǒng)使用由眾測(cè)發(fā)包方、接包方、眾測(cè)平臺(tái)三方組成的聯(lián)盟鏈與IPFS存儲(chǔ)知識(shí)產(chǎn)權(quán)數(shù)據(jù),使用SHA256算法對(duì)數(shù)據(jù)進(jìn)行加密,并使用數(shù)字簽名技術(shù),可確保數(shù)據(jù)來(lái)源的可靠性與真實(shí)性;共識(shí)由各參與方共同維護(hù),提供信任背書(shū),相比于依靠第三方進(jìn)行數(shù)據(jù)管理,本系統(tǒng)具有較高的可信性;區(qū)塊鏈數(shù)據(jù)透明可追溯,數(shù)據(jù)一旦上鏈則無(wú)法修改,保證了知識(shí)產(chǎn)權(quán)數(shù)據(jù)的不可篡改性;區(qū)塊鏈系統(tǒng)與IPFS均為分布式架構(gòu),不存在單點(diǎn)故障,具有高可用性。綜上,本系統(tǒng)保證了知識(shí)產(chǎn)權(quán)數(shù)據(jù)的可信管理。
本文實(shí)驗(yàn)針對(duì)系統(tǒng)性能進(jìn)行測(cè)試,具體地,針對(duì)智能合約執(zhí)行的延遲表現(xiàn)以及吞吐量進(jìn)行測(cè)試。通過(guò)延遲時(shí)間以及吞吐量來(lái)評(píng)估可信管理系統(tǒng)的穩(wěn)定性。
圖7和圖8為不同并發(fā)量下的性能測(cè)試結(jié)果。隨著并發(fā)量由50 TPS增加至300 TPS,智能合約執(zhí)行的平均延遲時(shí)間由0.48 s增加至4.11 s,吞吐量由50 TPS增加至295 TPS??梢?jiàn),系統(tǒng)性能達(dá)到高并發(fā)要求。
圖7 延遲時(shí)間測(cè)試結(jié)果
圖8 吞吐量測(cè)試結(jié)果
測(cè)試結(jié)果表明,基于區(qū)塊鏈的眾包測(cè)試知識(shí)產(chǎn)權(quán)可信管理系統(tǒng)不僅能夠滿足正常的業(yè)務(wù)需求,并且在高并發(fā)的情況下仍能夠提供較為穩(wěn)定的服務(wù)。
本文針對(duì)目前眾測(cè)服務(wù)模式缺乏可信性、眾測(cè)知識(shí)產(chǎn)權(quán)管理不夠規(guī)范、無(wú)法溯源與確權(quán)、數(shù)據(jù)的真實(shí)性與可靠性無(wú)法考證等問(wèn)題,利用區(qū)塊鏈的去中心化、可溯源、不可篡改等特性,結(jié)合IPFS、SHA256、數(shù)字簽名技術(shù),提出基于區(qū)塊鏈的眾包測(cè)試知識(shí)產(chǎn)權(quán)可信管理框架,將眾測(cè)知識(shí)產(chǎn)權(quán)數(shù)據(jù)存儲(chǔ)到區(qū)塊鏈上,保證數(shù)據(jù)資源的安全可靠、不可篡改和可溯源。并詳細(xì)分析了框架中區(qū)塊鏈層、服務(wù)層、應(yīng)用層、用戶層的構(gòu)成,設(shè)計(jì)了溯源管理、確權(quán)管理、查詢管理三大應(yīng)用模塊,提出眾測(cè)資產(chǎn)鏈上鏈下分解與融合技術(shù),解決了鏈上數(shù)據(jù)膨脹的存儲(chǔ)難題,緩解存儲(chǔ)性能的瓶頸。最后對(duì)基于區(qū)塊鏈的眾包測(cè)試知識(shí)產(chǎn)權(quán)可信管理原型系統(tǒng)進(jìn)行功能實(shí)驗(yàn)與性能測(cè)試,結(jié)果表明該原型系統(tǒng)在正常以及高并發(fā)情況下都可滿足業(yè)務(wù)需求,可保證知識(shí)產(chǎn)權(quán)的可信管理。
計(jì)算機(jī)應(yīng)用與軟件2021年10期