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

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

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

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