吳超 胡占寧
摘 要:由于實驗環(huán)境存在偏差,某些物理實驗結(jié)果無法被再次驗證,從而導(dǎo)致一些科研成果遭到質(zhì)疑。利用區(qū)塊鏈的去中心及分布式數(shù)據(jù)存儲特點,提出一種基于區(qū)塊鏈的物理實驗追溯方案,并進(jìn)行安全性與可行性分析。測試結(jié)果表明,該方案可以有效追蹤物理實驗各個環(huán)節(jié)的實驗信息來源,以此提供物理實驗復(fù)證的基礎(chǔ),使物理實驗變得更加透明,從而提高科研成果的公信力。在建立信任機制后,可以減少反復(fù)驗證實驗過程帶來的資源浪費。
關(guān)鍵詞:區(qū)塊鏈;物理實驗;實驗復(fù)證;區(qū)塊鏈追溯
DOI: 10. 11907/rjdk.191553
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
中圖分類號:TP399
文獻(xiàn)標(biāo)識碼:A
文章編號:1672-7800(2020)001-0238-04
0 引言
在科研實驗中,由于實驗環(huán)境存在偏差,或?qū)嶒炦^程不嚴(yán)謹(jǐn),導(dǎo)致某些實驗無法重復(fù)驗證的事件時常發(fā)生。例如國內(nèi)的“韓春雨事件”,由于實驗結(jié)果無法復(fù)證,實驗過程與實驗結(jié)果并不完全相符,國內(nèi)外研究人員對此爭議不斷,導(dǎo)致《Nature》雜志撤回韓春雨團(tuán)隊發(fā)表的論文…。特別是在量子測量[2]物理實驗中,由于量子態(tài)是疊加態(tài),測量時會導(dǎo)致量子不確定的態(tài)塌縮到一個確定的態(tài),如果實驗只得到一種結(jié)果,該結(jié)果則可能會引發(fā)爭議。類似“薛定諤的貓”,一次測量結(jié)果,有人會出現(xiàn)“死貓”的結(jié)果,也有人得到“活貓”的結(jié)果,從而引起一些爭議。區(qū)塊鏈[3]( Block-chain)是去中心、分布式數(shù)據(jù)庫,每個節(jié)點都會同步所有區(qū)塊信息,讓信息變得公開透明。因此,將區(qū)塊鏈技術(shù)應(yīng)用于科研實驗中,可能給實驗復(fù)證提供新的思路。科研人員可以先對機密數(shù)據(jù)保密,將實驗的每個環(huán)節(jié)步驟與每一階段成果信息記錄在區(qū)塊鏈上,并且不能篡改,使實驗變得公開透明,并能完整展示整個實驗過程。
區(qū)塊鏈從之前的1.0時代(比特幣)發(fā)展到現(xiàn)在的3.0時代[4],區(qū)塊鏈技術(shù)應(yīng)用從之前的數(shù)字金融領(lǐng)域拓展到了醫(yī)療[5-6]、物流[7]、物聯(lián)網(wǎng)[8]、人工智能[9]、保險[10]、數(shù)字認(rèn)證等領(lǐng)域。目前區(qū)塊鏈在供應(yīng)鏈上的應(yīng)用最為廣泛,例如食品安全追溯[11]、物流追溯以及醫(yī)療安全記錄溯源[12]等。全球最大的零售巨頭沃爾瑪利用區(qū)塊鏈進(jìn)行豬肉溯源[13],支付寶的螞蟻區(qū)塊鏈追溯系統(tǒng)已應(yīng)用于慈善事業(yè)中。2018年雙十一期間,天貓利用區(qū)塊鏈追溯技術(shù)實現(xiàn)海外商品的跨域溯源。本文提出一種基于區(qū)塊鏈的物理實驗追溯方案,對物理實驗各個環(huán)節(jié)信息進(jìn)行追溯,使整個物理實驗更加透明,從而提供更好的實驗復(fù)證基礎(chǔ),提高科研成果的公信力。與傳統(tǒng)物理實驗復(fù)證相比,本文提出的基于區(qū)塊鏈追溯的方法,可使物理實驗各個環(huán)節(jié)的信息來源更加可靠。
1 區(qū)塊鏈簡介
區(qū)塊鏈?zhǔn)侨ブ行?、分布式的?shù)據(jù)存儲技術(shù),網(wǎng)絡(luò)上的節(jié)點可以存儲與核實數(shù)據(jù)。第一次提出區(qū)塊鏈技術(shù)的是比特幣的發(fā)明人中本聰[14]?;诠ぷ髁孔C明的系統(tǒng)允許雙方在沒有第三方干預(yù)的前提下進(jìn)行交易。區(qū)塊鏈技術(shù)是電子交易系統(tǒng)的核心,典型基于區(qū)塊鏈的加密貨幣有比特幣、以太幣等。
區(qū)塊鏈能提供各種應(yīng)用服務(wù)架構(gòu),分布式網(wǎng)絡(luò)使用的安全技術(shù)有:哈希函數(shù)、數(shù)字簽名、非對稱加密等,典型技術(shù)有鏈表技術(shù)與共識機制[15]。
由于區(qū)塊鏈?zhǔn)褂命c對點(P2P)網(wǎng)絡(luò),因此用戶之間的信任是一個重要問題。人們采用各種一致性算法解決信任問題,例如工作量證明(POW)、股權(quán)證明[16](POS)和實用拜占庭容錯算法[17](PBFT)。其中POW和POS應(yīng)用于公有鏈中,而PBFT主要應(yīng)用于私有鏈中[18]。
2 基于區(qū)塊鏈的物理實驗追溯方案
2.1 追溯方法選擇
溯源技術(shù)是指為了在科學(xué)研究中校核數(shù)據(jù)質(zhì)量與追溯數(shù)據(jù)責(zé)任而產(chǎn)生的一種情報技術(shù),目前主要的追蹤溯源方法有反向查詢法、標(biāo)注法和工作流日志法等[19],這些方法都是數(shù)據(jù)引證的通用技術(shù),但大部分缺乏安全性與保密性。由于區(qū)塊鏈技術(shù)本身就是加密型數(shù)據(jù)庫,因此可以很好地滿足實驗數(shù)據(jù)的保密需求,解決了研究者們擔(dān)心的數(shù)據(jù)泄漏問題。
2.2 基于區(qū)塊鏈的物理實驗追溯模型
在發(fā)表科研論文的同時,將已編號的物理實驗各階段實驗步驟和實驗成果(溯源信息)上傳到云端或集群的數(shù)據(jù)庫服務(wù)器上;經(jīng)由監(jiān)管部門相關(guān)專家審核通過后,再通過區(qū)塊鏈加密算法傳輸?shù)綌?shù)據(jù)區(qū)塊上,并且連接形成區(qū)塊鏈網(wǎng)絡(luò),該過程是安全可靠的;接下來通過追溯技術(shù)查詢物理實驗各環(huán)節(jié)信息,包括實驗器材、實驗步驟、實驗成果等。
2.3 追溯流程
此前,具體的科研實驗環(huán)節(jié)信息只有科研方本地數(shù)據(jù)庫有記錄,某些科研實驗結(jié)果與實驗過程信息可能存在不對稱及不透明,以及偽造與修改等問題。引入?yún)^(qū)塊鏈技術(shù)后,可以實現(xiàn)實驗信息的去中心化,將主觀人為的信任機制變?yōu)橥ㄟ^算法實現(xiàn)的全網(wǎng)絡(luò)節(jié)點一致共識的信任機制,因此大大增強了科研成果的可信度。
區(qū)塊鏈技術(shù)的時間戳機制可以體現(xiàn)整個追溯過程的完整性。圖1為溯源流程,其中實驗信息是指實驗各環(huán)節(jié)每個階段的所有數(shù)據(jù)信息,便于監(jiān)管方追究問責(zé)。
3 系統(tǒng)整體設(shè)計
3.1 方案設(shè)計思路
基于區(qū)塊鏈的物理實驗追溯系統(tǒng)總體設(shè)計思路如下:科研工作人員將實驗中各個環(huán)節(jié)信息(實驗步驟與實驗結(jié)果、保密機密數(shù)據(jù))錄入?yún)^(qū)塊鏈追溯系統(tǒng)中,區(qū)塊鏈上各節(jié)點成員可以利用實驗編號,通過網(wǎng)絡(luò)查詢相應(yīng)實驗信息,實現(xiàn)對實驗信息各個環(huán)節(jié)的追溯。
3.2 系統(tǒng)平臺
關(guān)于區(qū)塊鏈平臺選擇,現(xiàn)在流行的開源項目有Bitcoin、以太坊和Hyperledger,以太坊由于支持可編程的智能合約,應(yīng)用較為廣泛,而且目前技術(shù)比較成熟。所以為了解決實驗數(shù)據(jù)存儲系統(tǒng)中的數(shù)據(jù)篡改威脅、數(shù)據(jù)真實性驗證以及結(jié)構(gòu)化中心三大問題,本文選擇目前項目開源、SDK接口豐富,且技術(shù)較為成熟的區(qū)塊鏈平臺以太坊作為系統(tǒng)的區(qū)塊鏈平臺。
3.3 數(shù)據(jù)信息存儲結(jié)構(gòu)
物理實驗存儲記錄數(shù)據(jù)包括:實驗材料、實驗流程、實驗條件以及產(chǎn)生的實驗結(jié)果等信息,這些信息可以圖片、視頻或文字說明等形式上傳。
物理實驗信息追溯的前提是有數(shù)據(jù)信息才能查詢,所以系統(tǒng)方案首先需要將物理實驗信息錄入到區(qū)塊鏈網(wǎng)絡(luò)中,實現(xiàn)對物理實驗信息的存儲。由于區(qū)塊鏈的數(shù)據(jù)存儲是單向的,是一種哈希處理,經(jīng)過hash函數(shù)的運算后,無法找回原始數(shù)據(jù),所以本文的實驗信息存儲可以分別錄入?yún)^(qū)塊鏈與傳統(tǒng)數(shù)據(jù)庫(如MySQL)中,以實現(xiàn)對實驗信息的追溯。工作人員將實驗過程中測量到的相關(guān)實驗信息打包并同時錄入到MySQL數(shù)據(jù)庫和區(qū)塊鏈中。之后將要查詢的實驗信息經(jīng)過哈希處理后,與區(qū)塊鏈中返回的哈希值進(jìn)行比較,以此驗證實驗信息的真實性。展示頁面利用網(wǎng)頁技術(shù)進(jìn)行實驗信息的回顯。該過程可讓科研單位與科研資助方、出版方共同進(jìn)行監(jiān)管,達(dá)成共識后將區(qū)塊鏈上的數(shù)據(jù)同步到區(qū)塊鏈節(jié)點上。實驗數(shù)據(jù)存儲方案結(jié)構(gòu)如圖2所示。
4 實驗?zāi)M與分析
4.1 實驗信息存儲過程
科研工作人員通過相應(yīng)算法將節(jié)點上的數(shù)據(jù)信息轉(zhuǎn)為信息摘要,然后通過各自擁有的區(qū)塊鏈節(jié)點將信息摘要發(fā)送到區(qū)塊鏈上,經(jīng)過平等的共識過程,將信息摘要寫入?yún)^(qū)塊鏈的區(qū)塊上。如果信息寫入成功,系統(tǒng)會得到相應(yīng)返回值,即區(qū)塊鏈中一條交易的返回哈希值,其是查找區(qū)塊鏈中數(shù)據(jù)的索引值,并將這條返回值存儲到MySQL數(shù)據(jù)庫中。具體存儲流程如下:首先進(jìn)行以太坊區(qū)塊鏈的準(zhǔn)備工作,安裝以太坊客服端geth,新建一個customC enesi.json文件,使用geth命令創(chuàng)立創(chuàng)始區(qū)塊;然后打開以太坊的geth客戶端,連接服務(wù)器節(jié)點,在geth控制臺輸入挖礦命令和解鎖賬號命令;工作人員將數(shù)據(jù)通過科研單位搭建的區(qū)塊鏈節(jié)點上傳,連接到以太坊客戶端geth( go-ethereum),則會自動激活RPC,RPC會默認(rèn)訪問web3接口;科研單位工作人員通過建立的節(jié)點賬戶,通過挖礦命令mmer.start()獲取以太幣,再利用JavaScript調(diào)用web3中的sendTransation()方法,將sha3處理后的信息摘要以交易形式發(fā)送到區(qū)塊鏈的Block上;每條交易會返回一個hash值,將hash值存放到MySQL數(shù)據(jù)庫中,以便于溯源查詢使用。
4.2 系統(tǒng)總體架構(gòu)設(shè)計與業(yè)務(wù)模塊功能
B/S架構(gòu)[20]是目前比較主流的Web架構(gòu),使用十分方便,因此本文基于區(qū)塊鏈的物理實驗信息追溯方案即采用B/S架構(gòu)。信息存儲結(jié)構(gòu)采用SSM框架,且實驗過程中使用私有鏈建立網(wǎng)絡(luò)節(jié)點,可使實驗操作更加簡便。本文根據(jù)軟件分層的原則,將該實驗系統(tǒng)結(jié)構(gòu)分為3層:數(shù)據(jù)層、業(yè)務(wù)邏輯層與表示層。
表示層:前端通過HTML或JSP頁面實現(xiàn)數(shù)據(jù)存儲、查詢、真實性驗證等數(shù)據(jù)處理工作,研究人員的實驗數(shù)據(jù)通過頁面寫入,之后出版商及科研管理方等可以從頁面讀取數(shù)據(jù)。
業(yè)務(wù)邏輯層:區(qū)塊鏈部分是利用JavaScript代碼實現(xiàn)的,調(diào)用web3.js實現(xiàn)與geth的交互,從而將數(shù)據(jù)存儲在以太坊區(qū)塊鏈上。后臺部分通過Java代碼進(jìn)行數(shù)據(jù)庫連接與操作,實現(xiàn)交互、指定頁面跳轉(zhuǎn)、數(shù)據(jù)請求處理等功能。
數(shù)據(jù)訪問層:通過以太坊的區(qū)塊鏈與MySQL數(shù)據(jù)庫共同實現(xiàn)數(shù)據(jù)存儲。
4.3 系統(tǒng)功能及展示
以常見物理實驗(菲涅爾單縫衍射實驗)為例,實驗數(shù)據(jù)信息包括實驗員信息、實驗步驟與實驗結(jié)果。從需求角度來看,本系統(tǒng)功能包括3部分:
(1)數(shù)據(jù)錄入功能。物理實驗數(shù)據(jù)錄入包括兩部分:①利用JS技術(shù)將數(shù)據(jù)進(jìn)行打包處理,生成信息摘要,然后將其通過交易形式存放到以太坊區(qū)塊鏈上,并將交易返回哈希值存放到MySQL數(shù)據(jù)庫中;②利用Java Web技術(shù)與SSM框架技術(shù)將JSP頁面填寫的實驗數(shù)據(jù)上傳到MySQL數(shù)據(jù)庫中。
(2)數(shù)據(jù)追溯即數(shù)據(jù)查詢功能,即將錄入數(shù)據(jù)加以展示??蒲泄芾碚呋螂s志出版審核人員只需輸入實驗編號(例如:輸入2018120802)即能得到實驗詳細(xì)信息,如圖3所示。
(3)實驗信息真實性驗證。通過頁面查詢到MySQL中的數(shù)據(jù)后,將數(shù)據(jù)經(jīng)過SHA3()函數(shù)處理后得到的新哈希值,與查詢頁面得到的返回哈希值在經(jīng)過getTransaction()函數(shù)處理后得到的input值(舊哈希值)進(jìn)行對比,即可驗證信息是否篡改,如圖6所示。若查詢結(jié)果一致,即可保證實驗信息的真實性。
4.4 方案安全性分析
(1)安全性。根據(jù)區(qū)塊鏈數(shù)據(jù)存儲特點,存儲的數(shù)據(jù)信息都是根據(jù)密碼學(xué)非對稱加密技術(shù)實現(xiàn)的,所以存儲在區(qū)塊鏈上的數(shù)據(jù)是安全的,并且實驗信息存入?yún)^(qū)塊鏈后都會產(chǎn)生唯一的hash標(biāo)識,從而使每一份實驗信息數(shù)據(jù)都是唯一的,有利于提升科研實驗信息的權(quán)威性。
(2)不可篡改性?;趨^(qū)塊鏈技術(shù)的設(shè)計特點,存儲到區(qū)塊鏈上的每一份實驗數(shù)據(jù)信息都帶有時間戳,在區(qū)塊鏈上執(zhí)行錄入與查詢操作時都能看到時間,并且能同步到各網(wǎng)絡(luò)節(jié)點上,每一步操作都是公開的。若想改變當(dāng)前的哈希文件,必須保證網(wǎng)絡(luò)中51%以上的節(jié)點同意,這對于一個龐大的網(wǎng)絡(luò)體系而言是很難實現(xiàn)的。由于所有操作都能實時同步到區(qū)塊鏈網(wǎng)絡(luò)節(jié)點中,保證了方案數(shù)據(jù)的不可篡改性。
5 結(jié)語
為了解決一些物理實驗信息存在的真實性問題,或某些實驗結(jié)果難以復(fù)證的問題,本文設(shè)計了適用于聯(lián)盟鏈環(huán)境的基于區(qū)塊鏈的物理實驗信息追溯應(yīng)用方案。本文提出使用區(qū)塊鏈與數(shù)據(jù)庫存儲物理實驗信息,使得錄入的信息無法篡改。若有人改動數(shù)據(jù),通過區(qū)塊鏈溯源,對比區(qū)塊鏈上的錄入信息即能進(jìn)行驗證,從而確保原始數(shù)據(jù)的真實性,使物理實驗更加透明。與傳統(tǒng)數(shù)據(jù)存儲方案相比,本文應(yīng)用區(qū)塊鏈技術(shù)進(jìn)行數(shù)據(jù)存儲,可保證存儲的實驗信息更加真實、透明,從而使科研成果更加具有公信力和權(quán)威性。在建立信任機制后,可以減少物理實驗的反復(fù)驗證過程,加快學(xué)術(shù)出版速度,推進(jìn)科研創(chuàng)新發(fā)展。然而,受區(qū)塊鏈本身性能的限制,本文提出的方案只針對有價值的科研實驗,對一般性實驗后續(xù)有待進(jìn)一步完善。
參考文獻(xiàn):
[1]許潔,王嘉昀.基于區(qū)塊鏈技術(shù)的學(xué)術(shù)出版信任建設(shè)[J].出版科學(xué),2017,25(6):19-24.
[2]
RONDE C D.Ouantum superpositions and the representation of physi-cal reality beyond measurement outcomes and mathematical structures[J]. Foundations of Science, 2018, 23(4):621-648.
[3]
NAKAMOTO S.Bitcoin:a peer-to-peer electronic cash system [J].Consulted, 2008(1):2645-2652.
[4] 宋奇.談區(qū)塊鏈發(fā)展:迅雷鏈克展示3.0時代技術(shù)優(yōu)勢[J].計算機與網(wǎng)絡(luò).2018(5):21-32.
[5]
CHEN Y, DINC S, XU Z. et al. Blockchain-based medical records se-cure storage and medical service framework [J]. Journal of MedicalSystems, 2018, 43(1):76-85.
[6] KUO T T, OHNO-MACHADO L.ModelChain: decentralized priva-cy-preserving healthcare predictive modeling framework on privateblockchain net,vorks[J].eprint arXiv: 1802.01746, 2018.
[7] 汪傳雷,萬一獲,秦琴,等.基于區(qū)塊鏈的供應(yīng)鏈物流信息生態(tài)圈模型[J].情報理論與實踐,2017,40(7):115-121.
[8]
CHRISTIDIS K, DEVETSSIKIOTIS M. Blockchains and smart con-tracts for the internet of things[J]. IEEE Access, 2016,4:2292-2303.
[9] 呂乃基.區(qū)塊鏈4.O[J].系統(tǒng)科學(xué)學(xué)報,2019,27(1):65-70.
[10]楊立,左春,梁賡.基于區(qū)塊鏈的保險產(chǎn)品推薦模型[J].計算機系統(tǒng)應(yīng)用,2019,28(1):61-68.
[11] 肖程琳,李姝萱,胡敏思,等.區(qū)塊鏈技術(shù)在食品信息溯源中的應(yīng)用研究[J].物流工程與管理,2018,40(8):83-85.
[12]梅穎安全存儲醫(yī)療記錄的區(qū)塊鏈方法研究[J].江西師范大學(xué)學(xué)報:自然科學(xué)版,2017,41(5):484-489.
[13]
MOSER M. SOSKA K, HEILMAN E, et al. An empirical analysis oftraceability in the Monero blockchain[J].Proceedings on Privacy En-hancing Technologies, 2018, 2018(3):143-163.
[14]
CAMMON K.Experimenting with Blockchain: can one technologyboost both data integrity and patients' pocketbooks[J]. Nature Medi-cine. 2018. 24( 4): 378-381.
[15]
BECK R.Beyond hitcoin: the rise of blockchain ,vorld[J]. Comput-er. 2018. 51( 2):54-58.
[16]
BERNARDO D, PETER G,AGGELOS K, et al. Ourohoros Praos:an adaptively -secure, semi-synchronous proof-of-stake blockchain[C]. International Conference on the Theory and Applications ofCryptographic Techniques, 2018.
[17]
ALCHIERI E A P,BESSANI A, GREVE F,et al. Knowledge con-nectivity requirements for solving byzantine consensus with unknownparticipants [J]. IEEE Transactions on Dependable&Secure Com-puting, 2018, 15(2):246-259.
[18]
HUH J H, SEO K.Blockchain-hased mobile fingerprint verificationand automatic log-in platform for future computing [J]. Journal ofSupercomputing, 2019, 75: 3123-3139.
[19]劉耀宗,劉云恒.基于區(qū)塊鏈的RFID大數(shù)據(jù)安全溯源模型[J].計算機科學(xué),2018,45( S2):367-368,381.
[20] 丁旭.基于B/S架構(gòu)的軟件項目實訓(xùn)JSP[M].北京:清華大學(xué)出版社.2011: 56-72.
(責(zé)任編輯:黃?。?/p>
作者簡介:吳超(1993-),男,天津工業(yè)大學(xué)物理科學(xué)與技術(shù)學(xué)院碩士研究生,研究方向為區(qū)塊鏈、物理實驗;胡占寧(1962-),男,博士,天津工業(yè)大學(xué)物理科學(xué)與技術(shù)學(xué)院教授,研究方向區(qū)塊鏈、量子通信。