楊信廷 王杰偉 邢 斌 羅 娜 于華竟 孫傳恒
(1.上海海洋大學信息學院, 上海 201306; 2.國家農(nóng)業(yè)信息化工程技術研究中心, 北京 100097;3.農(nóng)產(chǎn)品質(zhì)量安全追溯技術及應用國家工程實驗室, 北京 100097)
畜牧業(yè)已連續(xù)多年占農(nóng)林牧漁業(yè)總產(chǎn)值四分之一以上,并仍有逐年增加的趨勢[1],具有廣闊的市場規(guī)模和產(chǎn)業(yè)前景。畜牧保險作為畜牧業(yè)發(fā)展的有效風險管控工具,已成為降低活畜養(yǎng)殖風險的重要手段[2]。隨著規(guī)模化、信息化的集約養(yǎng)殖模式發(fā)展,構(gòu)建資產(chǎn)監(jiān)管系統(tǒng)保障活畜資產(chǎn)可查可控是確保畜牧保險投資安全的重中之重。監(jiān)管系統(tǒng)需要實現(xiàn)對牲畜的良好監(jiān)控,準確獲取牲畜生長數(shù)據(jù)及環(huán)境信息等要素用以保障資產(chǎn)審查[3]。
對于畜牧養(yǎng)殖企業(yè)中心化的管理結(jié)構(gòu),保險、銀行等金融機構(gòu)難以對其完全信任,尤其涉及投保業(yè)務時,養(yǎng)殖數(shù)據(jù)的真實性、有效性無法保障[4]。區(qū)塊鏈技術以其不可篡改、分布式、強共識的特性[5],可以有效保障資產(chǎn)監(jiān)管系統(tǒng)追溯數(shù)據(jù)真實性及可用性[6]。基于區(qū)塊鏈技術的資產(chǎn)監(jiān)管系統(tǒng),實現(xiàn)對牲畜狀態(tài)的良好監(jiān)控及資產(chǎn)審查,并借助區(qū)塊鏈高可信性的技術特點,完成對監(jiān)管數(shù)據(jù)可靠性的有力保障[7]。其中,文獻[8]提出一種基于區(qū)塊鏈技術的畜牧養(yǎng)殖管理系統(tǒng),規(guī)劃牲畜養(yǎng)殖信息并對養(yǎng)殖環(huán)境追溯,為牲畜養(yǎng)殖提供優(yōu)化方案增加養(yǎng)殖產(chǎn)能。文獻[9]對以區(qū)塊鏈技術驅(qū)動養(yǎng)殖業(yè)保險的發(fā)展進行了研究,利用區(qū)塊鏈技術不可篡改、強共識、去中心化等特征,構(gòu)建基于區(qū)塊鏈技術的養(yǎng)殖業(yè)數(shù)據(jù)溯源監(jiān)管系統(tǒng),從飼養(yǎng)、防疫、育肥、出欄等階段記錄養(yǎng)殖數(shù)據(jù),對于銀行業(yè)查驗牲畜數(shù)據(jù),保障活畜資產(chǎn)監(jiān)管具有重要價值。但當區(qū)塊鏈網(wǎng)絡有效保障養(yǎng)殖數(shù)據(jù)的信息安全性及可信性后[10],用于獲取牲畜生長狀態(tài)信息的傳感器設備安全性仍缺乏有效控制,在監(jiān)管系統(tǒng)數(shù)據(jù)來源端其數(shù)據(jù)完整性、機密性、可用性無法得到有效保障。區(qū)塊鏈監(jiān)管系統(tǒng)的安全性僅能保障到區(qū)塊節(jié)點級,對于養(yǎng)殖場中所引入的大量傳感器監(jiān)測設備缺乏有效的安全檢驗手段。故而,有必要對監(jiān)管系統(tǒng)數(shù)據(jù)來源真實性進行鑒別和安全檢測。
牲畜個體信息和行為智能感知是精準畜牧業(yè)的核心[11],是資產(chǎn)監(jiān)管系統(tǒng)可用的必要條件。資產(chǎn)監(jiān)管系統(tǒng)通過個體識別技術獲取牲畜的生長狀態(tài),從而具有可靠的金融監(jiān)管應用價值[12]。在對牲畜進行個體標識獲取牲畜生長狀態(tài)的研究中,文獻[13]對于奶牛養(yǎng)殖過程,提出了基于射頻識別技術(Radio frequency identification,RFID)的身份識別系統(tǒng)標識牲畜個體,使用瘤胃式動物電子標識為奶牛建立數(shù)字檔案。但該方案對標簽硬件要求較高且不具有安全識別認證模塊,對于設備身份冒名及數(shù)據(jù)機密性缺乏保障。基于植入式RFID芯片的牲畜體溫監(jiān)測及身份標識大范圍應用成本較高,且固定式RFID閱讀器不具有靈活性[14]。文獻[15]對于牛只身份識別方式進行了研究,結(jié)果表明耳紋、熱鐵烙印、無線射頻識別等身份識別方式具有標記欺詐、工作重復、監(jiān)測成本高等不足,其認為牲畜面部識別的非接觸式身份識別具有良好前景。但對于中小規(guī)模養(yǎng)殖場,牲畜面部識別具有較高使用成本且無法對牲畜生長狀態(tài)進行數(shù)據(jù)監(jiān)測,牲畜養(yǎng)殖數(shù)據(jù)亦缺乏機密性保護,文獻[16]基于卷積神經(jīng)網(wǎng)絡的奶牛個體身份識別方法也具有同樣問題。以上研究可以實現(xiàn)對牲畜個體生長情況的有效監(jiān)控,但缺乏對終端設備身份的驗證審查,無法完成監(jiān)管系統(tǒng)數(shù)據(jù)采集源頭的真實性檢驗,無法保障養(yǎng)殖數(shù)據(jù)傳輸過程的機密性、有效性。
保障終端傳感器數(shù)據(jù)來源真實有效,保障數(shù)據(jù)采集設備全流程可信是資產(chǎn)監(jiān)管系統(tǒng)可信可用的首要條件。使用RFID等傳感器設備可以實現(xiàn)對活體牲畜個體的有效識別,但當傳感器設備接入系統(tǒng)時,如何確保接入設備的可信性,杜絕設備身份冒名、信息篡改等物聯(lián)網(wǎng)設備自身具有的安全隱患[17],確保監(jiān)管系統(tǒng)采集的源頭數(shù)據(jù)真實可信是需要解決的問題。身份識別認證可以有效檢驗數(shù)據(jù)來源真實,保障數(shù)據(jù)采集端來源可溯,作為資產(chǎn)監(jiān)管系統(tǒng)整體安全性的第一道屏障,可對設備進行有效的身份核驗,僅允許登記授權(quán)的設備接入網(wǎng)絡,維護終端設備可信性。依托區(qū)塊鏈技術,從區(qū)塊鏈網(wǎng)絡及實體節(jié)點到物聯(lián)網(wǎng)設備間細粒度的身份標識可溯,對于構(gòu)建資產(chǎn)監(jiān)管系統(tǒng)全流程真實可信具有重要的現(xiàn)實意義。
針對以上情況,提出一種基于區(qū)塊鏈的畜牧養(yǎng)殖資產(chǎn)監(jiān)管身份認證方案。對于畜牧養(yǎng)殖中牲畜身份識別及監(jiān)管系統(tǒng)數(shù)據(jù)來源不可信問題,通過身份認證方案為數(shù)據(jù)機密性及設備身份可靠性提供有效支持,實現(xiàn)區(qū)塊鏈畜牧資產(chǎn)監(jiān)管系統(tǒng)的細粒度身份標識。以基于區(qū)塊鏈技術的畜牧資產(chǎn)監(jiān)管系統(tǒng)實現(xiàn)對牲畜個體的有效監(jiān)管,通過傳感器設備實時監(jiān)測牲畜個體健康狀況,以期實現(xiàn)對活畜資產(chǎn)的動態(tài)評估審核,防范畜牧保險承保風險。
在畜牧養(yǎng)殖過程中,由于存在活畜資產(chǎn)授信貸款困難、抵押不可信等問題,畜牧企業(yè)(牧企)希望盤活牲畜資產(chǎn),通過活畜抵押方式進行貸款融資,擴大養(yǎng)殖規(guī)模,將面臨嚴峻挑戰(zhàn)[18]。因此構(gòu)建資產(chǎn)監(jiān)管系統(tǒng)幫助牧企實現(xiàn)資產(chǎn)可信,幫助銀行實現(xiàn)可靠抵押具有重要應用價值。銀行業(yè)希望借助資產(chǎn)監(jiān)管系統(tǒng)實現(xiàn)在貸款行為中對牲畜狀態(tài)的實時監(jiān)管,進行資產(chǎn)審查,降低活畜信貸風險。以區(qū)塊鏈技術為基礎的畜牧資產(chǎn)監(jiān)管系統(tǒng),借助其不可篡改性、強共識特性保障數(shù)據(jù)高度可信[19-20],實現(xiàn)相關實體的共同參與與監(jiān)督,確保牲畜的良好生長。
資產(chǎn)監(jiān)管系統(tǒng)的主要參與實體為養(yǎng)殖戶/養(yǎng)殖企業(yè)、保險公司、銀行及信息技術服務商等。利用該系統(tǒng)金融參與者可通過牲畜運動信息監(jiān)督牲畜存活狀態(tài),對資產(chǎn)進行評估監(jiān)測,確保牲畜處于可抵押的良好狀態(tài),并監(jiān)督查看養(yǎng)殖戶的飼養(yǎng)行為,規(guī)避逆向選擇風險;養(yǎng)殖企業(yè)可以實現(xiàn)資產(chǎn)盤活獲得貸款,為其養(yǎng)殖生產(chǎn)行為提供資金支持。通過該監(jiān)管系統(tǒng)的信息整合及實時查驗,可有效幫助多方間實現(xiàn)信息共享并以高度的可信性、不可篡改性實現(xiàn)對活畜資產(chǎn)的有效管理。
本文設計的區(qū)塊鏈畜牧資產(chǎn)監(jiān)管模型面向養(yǎng)殖監(jiān)管過程如圖1所示。其中養(yǎng)殖戶/牧企、保險公司、銀行、監(jiān)管部門作為實體節(jié)點加入?yún)^(qū)塊鏈網(wǎng)絡,并完成對養(yǎng)殖數(shù)據(jù)的區(qū)塊鏈存證寫入,實現(xiàn)節(jié)點間對養(yǎng)殖信息的數(shù)據(jù)共享,使得各參與方實體均能夠?qū)崟r查看牲畜狀態(tài)數(shù)據(jù)并進行有效監(jiān)管。當養(yǎng)殖戶與保險公司建立承保關系或與銀行建立貸款關系時,相關方可實時審查畜牧資產(chǎn)的生存狀態(tài),動態(tài)評估資產(chǎn)存活風險,并進行資產(chǎn)數(shù)據(jù)監(jiān)管、信貸監(jiān)督、數(shù)據(jù)確權(quán)等行為,當發(fā)生牲畜疫病或牲畜死亡時,系統(tǒng)觸發(fā)智能合約養(yǎng)殖保險條約,保險公司、銀行可通過線上審查、實地再核實等手段展開對養(yǎng)殖戶的理賠工作,進行相關業(yè)務操作。
區(qū)塊鏈技術具有不可篡改、去中心化的技術特點,對監(jiān)管系統(tǒng)可信性提供了有效的信用背書[21]。基于區(qū)塊鏈的資產(chǎn)管理身份認證方案流程如圖2所示,主體內(nèi)容由區(qū)塊鏈網(wǎng)絡初始化節(jié)點準入、設備端身份驗證、區(qū)塊鏈節(jié)點身份驗證3部分構(gòu)成。在區(qū)塊鏈網(wǎng)絡初始化階段,以Fabric-CA完成對系統(tǒng)初始化時養(yǎng)殖戶/牧企、保險公司、銀行、監(jiān)管部門等實體的申請批復、身份證書發(fā)放等工作,并對節(jié)點準入進行審核,由成員關系服務提供者(Membership service provider,MSP)服務對節(jié)點權(quán)限和身份進行劃分,由于實體節(jié)點參與程度及各方利益差異,其數(shù)據(jù)操作權(quán)限將存在不同的劃分方式。完成網(wǎng)絡初始化及節(jié)點加入后,將進入設備端身份驗證階段。該部分由數(shù)據(jù)采集、數(shù)據(jù)加密、數(shù)據(jù)簽名、簽名聚合、簽名驗證操作構(gòu)成。系統(tǒng)初始化完畢后,傳感器設備將通過感知傳感器等元件進行數(shù)據(jù)采集,并對采集數(shù)據(jù)進行加密簽名操作,實現(xiàn)傳感器設備與密文數(shù)據(jù)包的唯一對應標識。設備端將對密文數(shù)據(jù)及簽名打包發(fā)送給上層設備,由上層設備完成簽名聚合操作,并將聚合結(jié)果發(fā)送給區(qū)塊鏈驗證端監(jiān)管節(jié)點實現(xiàn)設備端身份驗證。在區(qū)塊鏈節(jié)點身份驗證階段,監(jiān)管節(jié)點獲取數(shù)據(jù)后,通過區(qū)塊鏈共識機制完成數(shù)據(jù)上鏈實現(xiàn)數(shù)據(jù)在網(wǎng)絡中多節(jié)點共享,該過程網(wǎng)絡仍對上鏈監(jiān)管節(jié)點進行身份驗證,以保證該節(jié)點的身份可信性。以此,達到對網(wǎng)絡系統(tǒng)中準入節(jié)點、接入設備的細粒度身份審查,實現(xiàn)資產(chǎn)監(jiān)管系統(tǒng)全流程數(shù)據(jù)可信。
監(jiān)管系統(tǒng)所使用的區(qū)塊鏈網(wǎng)絡以Hyperledger Fabric為底層框架,在區(qū)塊鏈網(wǎng)絡初始化節(jié)點準入階段,系統(tǒng)對加入節(jié)點進行身份驗證保障其身份可信。當養(yǎng)殖戶/牧企、保險公司、銀行、監(jiān)管部門等實體作為節(jié)點初始化加入網(wǎng)絡時,須向證書頒發(fā)機構(gòu)(Certification authority,CA)提交申請注冊請求,由CA向節(jié)點頒發(fā)身份證書,并頒發(fā)為保障通信安全而準備的安全傳輸層協(xié)議(Transport layer security,TLS)證書,用于安全通信會話操作,該證書均為X.509標準格式。當Fabric-CA生成證書及密鑰后,即完成了對MSP服務的初始化操作,CA作為MSP服務接口的實現(xiàn)方式,完成對節(jié)點及各組織間的身份定義、身份驗證管理、簽名校驗等操作。網(wǎng)絡對注冊申請加入的節(jié)點身份驗證過程如圖3(圖中,CA1.1表示監(jiān)管節(jié)點1所擁有的認證證書,CA1.2~CA4.2類同)所示。由MSP服務抽象提供對節(jié)點、網(wǎng)絡、組織間的驗證核實工作。節(jié)點使用橢圓曲線數(shù)字簽名算法(Elliptic curve digital signature algorithm,ECDSA)利用自身身份證書生成簽名,該值綁定到特定標識的字節(jié)數(shù)據(jù)。驗證算法將CA證書身份、認可(由CA輸出)、簽名作為輸入,若簽名與認可的有效簽名一致,則輸出“accept”,否則輸出“reject”。當為“accept”時,用戶節(jié)點可以看到網(wǎng)絡事務并與網(wǎng)絡中的其他參與者執(zhí)行事務,若為“reject”,則表示用戶節(jié)點未經(jīng)過身份驗證,無法向網(wǎng)絡提交事務或行使其他操作權(quán)限。
針對區(qū)塊鏈網(wǎng)絡初始化節(jié)點準入及數(shù)據(jù)上鏈時區(qū)塊鏈節(jié)點共識身份校驗,通過CA證書校驗模式完成節(jié)點身份驗證。當節(jié)點申請準入并通過MSP服務獲得相應權(quán)限后,單個實體的CA證書均包含其身份信息,通過證書校驗實現(xiàn)節(jié)點間身份標識。區(qū)塊鏈網(wǎng)絡對于監(jiān)管節(jié)點數(shù)據(jù)上傳操作仍將通過CA證書完成對監(jiān)管節(jié)點的數(shù)據(jù)上鏈身份驗證,保證每次數(shù)據(jù)上鏈時節(jié)點身份均不存在偽造。
節(jié)點通過驗證加入到區(qū)塊鏈網(wǎng)絡中后,將進行對系統(tǒng)接入的物聯(lián)網(wǎng)傳感設備的身份審核。針對設備端身份驗證階段,以區(qū)塊鏈監(jiān)管節(jié)點實現(xiàn)對物聯(lián)網(wǎng)傳感設備的身份驗證。在數(shù)據(jù)傳輸之前,對發(fā)起數(shù)據(jù)傳輸請求的設備進行身份認證,通過監(jiān)管節(jié)點公鑰對采集數(shù)據(jù)加密,保證數(shù)據(jù)僅以密文形式被監(jiān)管節(jié)點查看。傳感器設備對密文數(shù)據(jù)簽名,并將密文數(shù)據(jù)及簽名數(shù)據(jù)發(fā)送給監(jiān)管節(jié)點實行身份校驗,實現(xiàn)信息的機密性保護及設備身份審查。通過窄帶物聯(lián)網(wǎng)(Narrow band internet of things, NB-IoT)[22]、藍牙等通信技術將數(shù)據(jù)發(fā)送給網(wǎng)關路由,經(jīng)其聚合轉(zhuǎn)發(fā)給監(jiān)管節(jié)點進行區(qū)塊鏈數(shù)據(jù)存證。實現(xiàn)區(qū)塊鏈網(wǎng)絡存證到節(jié)點與傳感器設備間均完成身份驗證,并通過加密算法,避免明文傳輸帶來的信息泄露、數(shù)據(jù)篡改等問題。
設備端身份驗證過程主要分為:①參數(shù)初始化、密鑰生成、廣播(其中包括加密密鑰對、簽名密鑰對)。②傳感器設備數(shù)據(jù)加密、簽名。③網(wǎng)關設備數(shù)據(jù)存儲、轉(zhuǎn)發(fā)、聚合。④節(jié)點驗證端身份驗簽等步驟。設備端身份驗證具體流程為:
(1)由密鑰管理中心(Key manage center,KMC)根據(jù)本方案使用的加密算法SM2及簽名算法BLS進行參數(shù)初始化并生成加密密鑰對、簽名密鑰對:①根據(jù)加密算法SM2初始化加密橢圓曲線。②輸入一個有效的有限域Fq上的橢圓曲線參數(shù)集合,輸出與橢圓曲線系統(tǒng)參數(shù)相關的一個密鑰對(d,K),該對密鑰由驗證端持有,其中d為加密私鑰,K為加密公鑰。③根據(jù)BLS聚合簽名算法初始化一個質(zhì)數(shù)階雙線性群。④由質(zhì)數(shù)階雙線性群生成簽名私鑰Pk和簽名公鑰P,該密鑰對數(shù)量與傳感器設備數(shù)量一致。
(2)由KMC將加密私鑰傳遞給驗證端節(jié)點,加密公鑰廣播給各參與方。將簽名私鑰傳遞給每個傳感器設備端,簽名公鑰進行廣播。
(3)第i(1≤i≤r,r為傳感器設備總數(shù))個傳感器設備采集數(shù)據(jù)mi之后,使用驗證端加密公鑰K對其進行加密,隨后使用該設備自身的簽名私鑰Pki對密文數(shù)據(jù)進行簽名,即:①對明文數(shù)據(jù)信息使用SM2算法做加密運算,Ci=ESM2(mi)。②利用密文消息進行曲線哈希計算,得H(Ci)。將H(Ci)與該設備的私鑰作曲線點乘計算得簽名Si=SBLS(Ci)=PkiH(Ci)。
(4)第i個傳感器設備將密文數(shù)據(jù)Ci、密文曲線哈希H(Ci)、簽名數(shù)據(jù)Si發(fā)送給網(wǎng)關。
(5)網(wǎng)關收到所有傳感器設備發(fā)送的數(shù)據(jù)對Ci+H(Ci)+Si,并對所有設備的H(Ci)和Si進行密文哈希聚合及簽名聚合操作,即
(1)
(2)
式中σ(H)——所有傳感器設備密文曲線哈希聚合后的值
σ(S)——所有設備簽名數(shù)據(jù)聚合后的值
該聚合運算為橢圓曲線上的點加運算。隨后,將Ci、σ(H)、σ(S)發(fā)送給驗證端區(qū)塊鏈節(jié)點。
(6)驗證端節(jié)點收到Ci+σ(H)+σ(S)后,進行驗簽判斷。
將設備各公鑰進行聚合
(3)
式中Pi——第i個設備的簽名公鑰
σ(P)——所有設備的公鑰聚合值
通過雙線性對運算判斷等式e(σ(P),σ(H))=e(G,σ(S))是否成立(其中,e(x,y)表示對x、y做雙線性對運算,G為BLS算法初始化中橢圓曲線生成點)。若等式成立,則所有傳感器設備身份認證均通過,否則身份信息有誤,判斷單個設備身份是否合法。
區(qū)塊鏈驗證端監(jiān)管節(jié)點與傳感器設備端的身份驗證實施流程如圖4所示。
當區(qū)塊鏈系統(tǒng)網(wǎng)絡通過MSP服務及節(jié)點身份證書完成對養(yǎng)殖戶/牧企、保險公司、銀行、監(jiān)管部門等實體節(jié)點的身份準入驗證,并通過監(jiān)管節(jié)點對傳感器接入設備進行簽名校驗完成設備身份驗證后,驗證端監(jiān)管節(jié)點將獲取到設備端傳輸?shù)酿B(yǎng)殖敏感數(shù)據(jù),由監(jiān)管節(jié)點對這些數(shù)據(jù)進行記賬上傳操作。該過程中節(jié)點間通過Kafka共識機制完成對上鏈數(shù)據(jù)共識,并對每一次上傳過程中的節(jié)點進行身份校驗,若節(jié)點證書不可靠,將重新共識,最終完成節(jié)點數(shù)據(jù)上鏈存證操作。
通過以上過程,區(qū)塊鏈網(wǎng)絡對申請節(jié)點以身份證書方式進行準入驗證,標識每個節(jié)點的身份信息,并通過驗證端監(jiān)管節(jié)點以設備數(shù)據(jù)簽名方式完成對接入傳感器設備的身份校驗。通過該身份認證方案可以有效實現(xiàn)區(qū)塊鏈網(wǎng)絡到準入節(jié)點及接入傳感器設備間的細粒度身份驗證,實現(xiàn)從數(shù)據(jù)源頭采集、數(shù)據(jù)展示、數(shù)據(jù)存證到數(shù)據(jù)查驗的全流程可信、可溯、可查,保障了養(yǎng)殖監(jiān)管數(shù)據(jù)的全流程安全可靠,對于金融、承保等行為具有高度的信息參考價值,幫助相關參與方實現(xiàn)信息可靠共享查驗。
在內(nèi)蒙古自治區(qū)錫林郭勒盟某牛場對畜牧養(yǎng)殖資產(chǎn)監(jiān)管系統(tǒng)進行了試點應用,完善牛場資產(chǎn)監(jiān)管體系。通過區(qū)塊鏈畜牧養(yǎng)殖資產(chǎn)監(jiān)管系統(tǒng)實現(xiàn)對活畜資產(chǎn)狀態(tài)實時查驗,幫助養(yǎng)殖戶、保險公司等相關參與方對牲畜生長狀態(tài)進行監(jiān)測,為資產(chǎn)審查提供數(shù)據(jù)支持。在該試點應用中,系統(tǒng)通過對養(yǎng)殖設備的身份認證及所產(chǎn)生數(shù)據(jù)的加密處理保證區(qū)塊鏈監(jiān)管系統(tǒng)數(shù)據(jù)的真實性。系統(tǒng)所采用的總體框架為4層體系結(jié)構(gòu):感知層、網(wǎng)絡層、云服務層、業(yè)務應用層,如圖5所示。
感知層作為系統(tǒng)數(shù)據(jù)采集端,通過攝像頭、定位傳感器、智能耳標等進行數(shù)據(jù)采集,并將數(shù)據(jù)加密簽名向上層網(wǎng)絡傳輸。網(wǎng)絡層對感知層上傳的數(shù)據(jù)進行聚合轉(zhuǎn)發(fā),完成對簽名數(shù)據(jù)的初步操作,并將相關數(shù)據(jù)發(fā)送給上層網(wǎng)絡進行設備簽名驗證。在云服務層搭載物聯(lián)網(wǎng)服務平臺、區(qū)塊鏈網(wǎng)絡等,與系統(tǒng)融合組建畜牧資產(chǎn)監(jiān)管系統(tǒng),完成對設備端身份校驗并對養(yǎng)殖敏感數(shù)據(jù)進行區(qū)塊鏈存證。業(yè)務應用層面向系統(tǒng)使用者,作為畜牧資產(chǎn)監(jiān)管系統(tǒng)的參與方,銀行、保險、牧企、技術支持商等共同構(gòu)建真實可信的資產(chǎn)管理平臺,共同維護畜牧行業(yè)的發(fā)展建設,促進各方之間信息透明共享,維護良好的資產(chǎn)監(jiān)察。
在系統(tǒng)試點應用中,養(yǎng)殖場以智能耳標作為物聯(lián)網(wǎng)傳感器終端進行數(shù)據(jù)采集。通過智能耳標監(jiān)管牛只體征信息,智能耳標傳輸?shù)谋O(jiān)測參數(shù)為:畜牧編號、網(wǎng)關ID、設備ID、在線狀態(tài)、牲畜種類、二級種類、性別、絕育狀況、牲畜品種、養(yǎng)殖場景、當前狀態(tài)、運動量、當前體溫、身份認證、抵押到期日、售賣狀態(tài)。智能耳標使用低功耗藍牙(Bluetooth low energy,BLE)通信方式,運動量、體溫等參數(shù)每10 min上傳一次。以某一設備為例,給出其采集到的參數(shù)字段及數(shù)據(jù)信息,如表1所示。

表1 設備數(shù)據(jù)詳情信息Tab.1 Information of equipment data
智能耳標完成數(shù)據(jù)采集后,將使用區(qū)塊鏈監(jiān)管節(jié)點的驗證端公鑰對數(shù)據(jù)進行加密處理,避免數(shù)據(jù)的明文傳輸,并使用傳感器設備端私鑰對密文進行簽名操作。設備端數(shù)據(jù)如表2所示,表中內(nèi)容為對該設備分配的密鑰信息及經(jīng)過SM2加密、BLS簽名運算后的數(shù)據(jù)結(jié)果。智能耳標對采集數(shù)據(jù)進行初步操作后將密文數(shù)據(jù)、簽名數(shù)據(jù)通過藍牙通訊傳輸給網(wǎng)關設備。網(wǎng)關將對養(yǎng)殖場中所有設備的簽名數(shù)據(jù)進行聚合運算以降低驗簽數(shù)據(jù)量和通信數(shù)據(jù)長度,聚合后通過NB-IoT技術發(fā)送給驗證端進行設備身份驗證,確定設備身份是否真實可信。

表2 設備身份認證詳情信息Tab.2 Information of device identification
當傳感器設備向驗證端申請數(shù)據(jù)傳輸請求并通過身份驗證后,監(jiān)管節(jié)點收到經(jīng)傳感設備采集到的數(shù)據(jù)信息,通過共識機制與其他節(jié)點實現(xiàn)消息共享。數(shù)據(jù)上鏈之后通過CouchDB數(shù)據(jù)庫存儲,用于養(yǎng)殖敏感數(shù)據(jù)存證,如表3所示存證追溯數(shù)據(jù)式樣,其內(nèi)容以表1中所列設備數(shù)據(jù)詳情信息為例進行操作處理,將文本信息轉(zhuǎn)換為十六進制數(shù)據(jù)后經(jīng)加密簽名處理,其追溯信息密文、交易哈希值、區(qū)塊高度、區(qū)塊哈希值信息如表3所示。

表3 存證追溯數(shù)據(jù)詳細信息Tab.3 Information of traceability data
在監(jiān)管系統(tǒng)試點應用的錫林郭勒盟牛場中,所使用的智能耳標及網(wǎng)關等硬件設備如圖6所示,耳標內(nèi)嵌多種傳感裝置,通過配帶在牛耳上收集牲畜狀態(tài)信息,進行數(shù)據(jù)采集與傳輸。網(wǎng)關設備對采集數(shù)據(jù)進行初步處理并對簽名數(shù)據(jù)聚合計算,通過安全傳輸協(xié)議向上層監(jiān)管節(jié)點發(fā)送數(shù)據(jù)包,通過智慧畜牧管理平臺向用戶展示存證數(shù)據(jù)。
區(qū)塊鏈畜牧養(yǎng)殖資產(chǎn)監(jiān)管系統(tǒng)所有使用的平臺以Hyperledger Fabric為底層架構(gòu),其存證區(qū)塊高度及相應哈希值如圖7a所示。將智慧畜牧養(yǎng)殖監(jiān)管平臺與區(qū)塊鏈系統(tǒng)端連接,畜牧養(yǎng)殖監(jiān)管平臺數(shù)據(jù)從區(qū)塊鏈系統(tǒng)端獲取,向用戶進行數(shù)據(jù)展示,若用戶對智慧畜牧養(yǎng)殖監(jiān)管平臺數(shù)據(jù)存疑,可通過區(qū)塊鏈系統(tǒng)端進行數(shù)據(jù)核查,實現(xiàn)養(yǎng)殖監(jiān)管數(shù)據(jù)可信。向養(yǎng)殖戶、銀行、保險等參與方展示的數(shù)據(jù)平臺如圖7b所示,通過該系統(tǒng),養(yǎng)殖戶實時監(jiān)測牛只在線狀況,例如是否仍在養(yǎng)殖圍欄內(nèi)等,實現(xiàn)對牛只位置實時把控。保險、銀行等參與者可查看牲畜在線狀態(tài),通過運動量、體溫等參數(shù)判斷牛只存活情況,解決抵押資產(chǎn)死亡而難以實時監(jiān)測的問題。投保前后階段,銀行或保險公司可通過系統(tǒng)中檢疫記錄及疫苗記錄等目錄項查看、了解養(yǎng)殖戶的養(yǎng)殖行為,評估養(yǎng)殖戶在投保前后是否存在疫病防治減弱、環(huán)境衛(wèi)生不主動提高、放棄對風險預防的努力等故意加劇承保風險的行為。通過對潛在風險洞察分析,保險、銀行等金融機構(gòu)可以有效規(guī)避承保風險,實現(xiàn)畜牧信貸產(chǎn)業(yè)良性循環(huán)。
本認證方案設計中,簽名算法及加密算法所依據(jù)的困難性數(shù)學問題包括:橢圓曲線離散對數(shù)問題、質(zhì)數(shù)階雙線性群運算、密鑰交換協(xié)議問題等。該困難性問題保證簽名算法、加密算法在數(shù)學上是理論可行的,其暴力破解是困難的。
橢圓曲線離散對數(shù)問題(Elliptic curve discrete logarithm problem,ECDLP):已知定義在有限域Fq(階為q)上的橢圓曲線,該曲線階為n,點G、Q均屬于該曲線。ECDLP是指確定整數(shù)x∈[0,n-1]使得Q=xG成立,以Q為公鑰,以x為私鑰。在該問題中Q=xG的正向計算是簡單的,反向計算由公鑰Q破譯私鑰x是復雜的,在有限多項式時間內(nèi)難以從Q中計算出x的值,該值作為基于ECDLP問題的非對稱加密私鑰是安全的。該問題對于參數(shù)的選擇要求使用大素數(shù)。本方案所用加密算法基于該ECDLP問題,可有效保障密鑰的安全性。
質(zhì)數(shù)階雙線性群:由五元組(p,G1,G2,GT,e)描述。其中p是一個與給定安全常數(shù)δ相關的大素數(shù),G1、G2、GT是階為p的乘法循環(huán)群,e為雙線性映射規(guī)則e:G1×G2→GT,該規(guī)則滿足雙線性、非退化性、可計算性3個條件,即:
雙線性條件
?g∈G1,h∈G2,a、b∈Zp?e(ga,hb)=e(g,h)ab
(4)
非退化性條件
?g1∈G1,g2∈G2?e(g1,g2)≠1
(5)
可計算性條件
?u∈G1,v∈G2, ?t(δ)?e(u,v)
(6)
式中Zp——整數(shù)域
a、b——整數(shù)域內(nèi)的元素
g、g1、g2、h、u、v——乘法循環(huán)群內(nèi)的元素
t(δ)——與安全常數(shù)δ有關的多項式時間算法
畜牧資產(chǎn)身份認證方案所使用的SM2加密算法基于ECDLP問題,BLS聚合簽名算法以質(zhì)數(shù)階雙線性群為數(shù)學基礎,其在數(shù)學上的理論證明確保了該方案在破解過程中的困難性。使得身份認證方案中對數(shù)據(jù)的加解密操作及聚合、配對運算、簽名生成、簽名驗證等操作均具有數(shù)學合理性及安全性。
Diffie-Hellman密鑰交換協(xié)議(DH問題):該問題是一種確保共享密鑰在不可信網(wǎng)絡中安全傳輸?shù)姆椒ǎ摍C制可以在需要安全通信的雙方間交換密鑰信息,避免密鑰分發(fā)傳遞時的竊聽現(xiàn)象。其算法過程為:
(1)通信雙方甲、乙事先約定算法參數(shù):素數(shù)p、f分別作為模數(shù)和基數(shù),該值可對外公開。
(2)對甲,以一個秘密的自然數(shù)c作為自身私鑰(不公開),計算A=fcmodp作為自身公鑰(可公開)。
(3)對乙,以一個秘密的自然數(shù)l作為自身私鑰(不公開),計算B=flmodp作為自身公鑰(可公開)。
(4)甲乙雙方交換各自公鑰。
(5)甲計算出k=Bcmodp,乙計算出k=Almodp。甲乙完成密鑰的協(xié)商,得到密鑰k。
計算Diffie-Hellman難題(Computational Diffie-Hellman problem,CDH問題):給出任意的w、wx、wy,求解wxy是困難的,該問題是指竊聽者嘗試計算DH問題,但理論證明尚不存在一個概率多項式時間圖靈機能夠有效地計算該問題,即破解該問題獲取密鑰是困難的。
當網(wǎng)關收到傳感器設備傳輸?shù)暮灻麛?shù)據(jù)后,對簽名數(shù)據(jù)進行無證書聚合操作,實施雙線性配對運算。所得聚合簽名σ(S)的正確性及有效性推導過程為
Pi=PkiG
(7)
Si=PkiH(Ci)
(8)
σ(S)=S1+S2+…+S1000
(9)
e(G,σ(S))=e(G,S1+S2+…+S1000)=
e(G,S1)e(G,S2)…e(G,S1000)=
e(G,Pk1H(C1))…e(G,Pk1000H(C1000))=
e(Pk1G,H(C1))…e(Pk1000G,H(C1000))=
e(P1,H(C1))e(P2,H(C2))…e(P1000,H(C1000))
(10)
e(σ(P),σ(H))=e(PkG,H(C))=
e(G,PkH(C))=e(G,σ(S))
(11)
該過程有效論證了簽名算法中的聚合過程在數(shù)學上的正確性,其數(shù)據(jù)壓縮結(jié)果在數(shù)學上是成立的,聚合運算過程對簽名數(shù)據(jù)量進行壓縮,為提高驗證效率做出了重要貢獻。雙線性運算由于其獨特的性質(zhì)使簽名算法可以完成聚合操作,通過以上推導可知聚合驗證過程理論成立,并具有嚴謹?shù)臄?shù)學支持,算法合理性經(jīng)過有效證明。
在密文數(shù)據(jù)傳輸時,非授權(quán)用戶截取報文傳輸獲取數(shù)據(jù)的方式大多為2種:①傳輸信道中通過監(jiān)聽抓取,對截獲的密文暴力破解,由密文直接獲取明文數(shù)據(jù)。②通過對密鑰分發(fā)時進行定點監(jiān)聽,試圖抓取加解密密鑰對,直接對密文解密獲取數(shù)據(jù)。本方案中各算法基于橢圓曲線離散對數(shù)問題[23]、CDH問題,非授權(quán)用戶難以在有限多項式時間內(nèi)成功對密文數(shù)據(jù)實施暴力破解。其次求解DH問題是困難的,因此非授權(quán)用戶亦無法實現(xiàn)對密鑰的監(jiān)聽截取。因此,本文所提出的身份認證方案具有較高安全性,其安全基礎來源于已證實的數(shù)學難題,其次,來源于SM2加密算法和BLS簽名算法在構(gòu)造過程中已證實的安全性[24]。
對于本方案所使用的加密算法SM2,通過擴散性、相關性衡量算法混淆性,以算法擴散性及相關性作為指標可有效衡量簽名算法安全性[25]。定義密文改變率Δ=λ/γ×100%,其中λ為密文改變位數(shù),γ為密文總位數(shù)。在一次測算過程中,控制明文數(shù)據(jù)不變,當對密鑰做出修改時所引起的密文改變率如圖8所示,其表征的是密鑰對密文擴散性的影響,擴散性的平均密文改變率為93.61%。控制密鑰數(shù)據(jù)不變,當明文改變時所引起的密文改變率如圖9所示,表征明文與密文間的相關性,相關性的平均密文改變率為93.28%。由此可知,該加密算法具有良好的安全性和較高的混淆性。
與橢圓曲線密碼學(Elliptic curve cryptography,ECC)等非聚合簽名算法相比,當大量設備端接入系統(tǒng)時,使用聚合簽名算法可有效降低簽名數(shù)據(jù)長度,有效減少信道通信量,降低驗證計算復雜度,減少系統(tǒng)應用時間開銷。對簽名過程中是否使用聚合運算的簽名數(shù)據(jù)長度進行對比,結(jié)果如圖10所示,隨著終端設備接入數(shù)量的不斷增加,簽名數(shù)據(jù)呈線性增長,而使用基于聚合簽名的認證算法,簽名長度可保持常量級別,不會隨大量設備接入而增加通信成本。對于使用大量傳感設備的畜牧養(yǎng)殖監(jiān)管場所,該認證方案能夠有效減小簽名長度,有效降低簽名傳遞通信量,在畜牧養(yǎng)殖的戶外場所中可以有效降低不同設備間的信息通信載荷。
時間開銷測試結(jié)果如圖11所示,當接入設備逐漸增多時,對簽名數(shù)據(jù)的直接驗證時間開銷是聚合驗證的2倍。隨著接入設備進一步增多,聚合驗證時間開銷更具優(yōu)勢,當接入設備數(shù)為30時,非聚合驗簽時間為471 ms,聚合驗簽的時間僅237 ms,節(jié)約用時49.68%,總體時間開銷平均降低40.01%。另外,本文方案基于無證書簽名驗證,相較于使用CA機構(gòu)的簽名認證方案,不涉及證書的分發(fā)、管理、銷毀等操作,可有效降低服務器端的驗證管理開銷。因此,本方案的總計算效率具有一定的優(yōu)勢,尤其當面對龐大數(shù)量的設備認證請求時,本方案的驗證性能更具優(yōu)勢,能夠更易滿足大量畜牧養(yǎng)殖所需要的設備身份認證需求。
(1)在區(qū)塊鏈畜牧養(yǎng)殖資產(chǎn)監(jiān)管系統(tǒng)中,認證方案有效實現(xiàn)了系統(tǒng)內(nèi)全流程、細粒度的身份審核,網(wǎng)絡對加入節(jié)點提供了嚴苛的身份驗證機制,保障節(jié)點身份可信,實現(xiàn)對區(qū)塊鏈節(jié)點與接入傳感器設備間的身份驗證。通過節(jié)點與傳感器設備間的身份認證及設備數(shù)據(jù)的加密運算,保障數(shù)據(jù)傳輸機密性、數(shù)據(jù)來源真實性,維護養(yǎng)殖敏感數(shù)據(jù)安全性。通過簽名數(shù)據(jù)的聚合運算有效解決多方簽名數(shù)據(jù)長度過長,通信量過大的問題,有效降低了簽名傳輸長度,并保障敏感數(shù)據(jù)的密文傳輸,將加密、簽名操作置于用戶透明狀態(tài),具有良好的用戶體驗。最終實現(xiàn)監(jiān)管系統(tǒng)數(shù)據(jù)全流程真實可信,區(qū)塊鏈網(wǎng)絡到節(jié)點及接入設備間的細粒度身份可信可溯,簽名驗證方便高效,構(gòu)建了監(jiān)管系統(tǒng)一體化的數(shù)據(jù)身份真實可溯,為畜牧行業(yè)金融發(fā)展提供有力支持。
(2)提出的身份認證方案為聚合壓縮簽名算法,可有效降低簽名傳輸通信量及系統(tǒng)驗證開銷,實現(xiàn)多設備接入時高效批量認證。測試分析結(jié)果表明,該方案可將簽名數(shù)據(jù)通信量從線性級降低到常量級,平均驗簽時間節(jié)省40.01%。同時,使用SM2算法對數(shù)據(jù)進行加密,保證敏感數(shù)據(jù)機密性、完整性和可用性,其密文擴散性和相關性測試結(jié)果表明密文平均改變率分別為93.61%、93.28%,可有效保護養(yǎng)殖企業(yè)關鍵敏感數(shù)據(jù),滿足畜牧養(yǎng)殖資產(chǎn)監(jiān)管過程中身份安全高效認證的需求。