999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

智能合約在無人機集群中的應用及漏洞分析

2023-08-28 03:06:54張峻銘朱衛星楊忠舉王梅娟
科技創新與應用 2023年24期
關鍵詞:智能

張峻銘,朱衛星,楊忠舉,王梅娟

(中國人民解放軍陸軍工程大學,南京 210007)

智能合約[1]與傳統合約不同,通過數字形式掌控現實資產,是提供驗證并執行的計算機交易協議,一旦滿足智能合約的執行條件,協議會自動執行且無需第三方參與。智能合約技術作為一種極具發展潛力的顛覆性信息技術,具有去中心化、防篡改、高度自治等典型特征,特別是其高度自治的特征打破了傳統合同的交易方式和習慣,成功被應用于數字貨幣、金融、醫療和農業等領域。與此同時,無人機集群作為一種顛覆性技術[2],具有成本低、任務完成率高、工作效率高的優勢。因此,無人機集群技術在現代信息化社會發揮的作用也越來越重要,并將會成為未來市場的突破點。然而,當前無人機集群執行任務過程中依舊存在通信依賴性強、應變能力不足、信息傳遞時效性差及易受干擾等安全性問題,為解決無人機集群的安全問題并進一步發揮其優勢,本文結合智能合約的優勢特點提出智能合約在無人機集群中自主通信、實時通信、加密通信和態勢分析4 個方面的典型應用。智能合約的相關特性帶來了眾多便利的同時也引起諸多挑戰,而安全性問題是其中最重要、最具影響力的一種。因此,研究智能合約在無人機集群中的應用及安全性漏洞具有重大的現實意義。

1 智能合約在無人機集群中的應用

1.1 自主通信

基于智能合約的去中心化特點可以用來解決無人機集群執行任務過程中通信依賴強的特點,提高工作效率。目前典型的的無人機集群控制方法有集中式控制、分布式控制和混合式控制;其中集中式控制方法采用一個主控單元,集中掌握了環境中全局信息和所有無人機的信息,進行集中式處理任務與資源分配,由主控單元合理分配給每一個無人機,每個無人機只需負責數據的輸入和輸出,數據的存儲和控制處理;分布式控制方法中各無人機之間對等,不存在主控與被控關系,各無人機互相進行信息交互,自主處理實時數據并根據數據規劃出一條路徑;混合式控制方法則結合了前2 種方法的優點,一個主控單元控制所有無人機,而每一個無人機則采用分布式控制方法,因此主控無人機可獲取到當前所有機器人的位置、環境信息、處理數據和策略規劃等,進而根據獲取的全局信息規劃路徑。

通過對以上3 種典型的無人機集群控制方法的闡述,可以看出無人機集群對于通信的依賴性較強。對于對主控通信依賴強的無人機集群而言,一方面若主控單元出現故障或受到惡意攻擊時,會導致整個系統陷入癱瘓,從而致使整個任務的失敗;另一方面存在計算復雜度大、反應速度慢等問題,導致各個無人機工作效率降低;對于對周圍環境依賴性強的無人機集群而言,整個無人機集群缺乏全局性,各無人機之間的協調合作難,所獲取的信息有限且難以實現全局最優解,甚至可能會造成各無人機之間的任務沖突。不論是對主控的通信依賴還是對周圍環境的通信依賴,都會對無人機集群編隊系統飛行效果造成影響,而具有去中心化特質的智能合約具備解決這一問題的能力。所謂的去中心化特質[3]是指智能合約不依賴第三方管理機構或硬件設施,沒有中心管制,除了自成一體的區塊鏈本身,通過分布式核算和存儲,各個節點間實現了信息自我驗證、傳遞和管理,保證了無人機集群編隊系統的可用性,使得無人機能及時可靠地訪問數據信息,只要網絡中大部分節點未遭遇黑客攻擊,就能確保整個系統的正常運行,這也大大降低了通信依賴對無人機集群編隊系統飛行效果的影響,可實現無人機集群較大程度上的自主通信。

1.2 實時通信

基于智能合約的成員資格服務[4]可保障緊急命令的高效執行,解決無人機集群在執行任務過程中信息傳遞時效性差和應變能力不足問題。以用餐后結賬流程為例進一步闡述成員資格服務,在餐廳用完餐后結賬時,會看到一個提示——現金或支付寶支付,倘若嘗試使用微信掃描支付寶的付款碼進行付款,無論用戶的微信賬戶是否真實存在且賬戶中是否有足夠的資金,用戶的支付請求都不會被接受。擁有真實存在的用戶和足夠的資金是不夠的,其必須被商家所接受。這里就需要證書頒發機構(PKI)和成員資格服務提供商(MSP)協同工作,PKI[5]就像一個提供商——分配了許多不同類型的可驗證身份,而另外一邊,MSP 就像餐廳接受的提供商列表——來確定哪些身份是支付網絡的可信成員,MSP 的強大功能不僅僅是列出誰是支付網絡的可信成員或通道成員,MSP 還可以識別網絡的可信成員可能在MSP 所代表的組織范圍內扮演的特定角色,如管理員、執行者、中繼或子成員等,并設置對于在網絡和通道,如讀者、寫者等的情況中定義訪問權限的基礎。

在現代信息化快速發展條件下,廣延性、多邊性、連續性和快節奏表現的愈發明顯,最終效果越來越取決于后臺操作員的操控能力和集群分隊的隨機應變能力,但由于相關技術的滯后性和局限性,總是會出現信息傳遞時效性差和應變能力不足等問題,導致無人機集群工作效能不能發揮到最佳水平。智能合約是部署在區塊鏈上的代碼,一旦某個事件觸發合約中的條款,代碼就自動執行;簡單來講就是滿足條件就執行,不需要人為操控,與PKI 和MSP 協同工作提供的成員資格服務結合為無人機的通信環境提供了良好的信任基礎;便可大幅度改善信息傳遞時效性差和應變能力不足問題。通過賦予權限最高操作人員管理員角色和寫者訪問權限,操作人員便可通過實時跟進現場情況,選擇是否更改預先設定的智能合約,即便現場條件和預先設定的不同,仍能取得預先設定的目標效果;通過賦予無人機集群系統中各個個體執行者和讀者權限,使其能在第一時間收到來自管理員的命令,改變原來有偏差的智能合約,立即執行現在的智能合約,達到實時通信,從而有效地保障了緊急命令的高效執行,使得無人機集群工作效能大幅度提升。

1.3 加密通信

基于智能合約的同態加密技術設計數字簽名和認證的協議及橢圓曲線密碼技術[6]可以保障無人機集群執行任務過程中的加密通信,解決無人機集群執行任務過程中易受干擾問題。同態加密是計算復雜性理論的密碼學技術[7],與一般加密算法相比,同態加密除了能實現基本的加密操作,還能實現密文間的多種計算功能,可實現先計算后解密等價于先解密后計算功能;橢圓加密算法是一種公鑰加密體制,最初由Koblitz 和Miller 于1985 年提出,其數學基礎是利用橢圓曲線上的有理點構成Abel 加法群上橢圓離散對數的計算困難性。

智能合約本身具有去中心化、防篡改等特征,具有一定的安全性,結合同態加密技術和橢圓曲線密碼技術,可大幅提高無人機集群系統加密通信能力。結合橢圓曲線密碼學在某些情況下可使用比其他方法更小的秘鑰,但能夠提供相當的或更高等級的安全的特性,對智能合約內容進行加密,這樣不僅能使智能合約的安全性得到提升,同時還具備加密速度快、存儲空間占用小和對寬帶要求低等優勢。而后文提到基于智能合約的背書節點服務,其中采用數字簽名和認證技術,這里就涉及到對橢圓曲線密碼加密的智能合約進行解密,才能更好地進行認證等操作,若采用同態加密技術來進行數字簽名和認證,解密方就只能獲取最后的結果,而無法獲得每一個密文的內容,這樣就能夠保證數字簽名和認證在安全加密的環境下進行,同時密文計算無需經過秘鑰方,減少了通信成本。綜上,經過橢圓曲線密碼技術和同態加密技術處理后,可降低無人機集群在執行任務過程中易受干擾的問題,即使無人機集群系統中某個節點收到干擾或攻擊,也能保證通信在加密條件下進行,保障其他節點不受影響。

1.4 態勢分析

基于智能合約的背書節點服務[8]可進行任務結束后的態勢分析,及時查漏補缺,提高無人機集群飛行效率。背書節點服務可以理解為:承擔背書任務的節點為智能合約的執行進行信息驗證,對驗證通過的交易聲明此交易合法的過程和機制。背書節點服務的工作流程如下:首先由客戶端將提議(這里指需要執行的智能合約)發給指定的1 個或多個背書節點;背書節點收到交易提議后,首先用客戶端的公鑰驗證信息是否篡改過、是否之前已經提交過、是否可以在該提議進行操作、提議是否被提交及提議的組織是否正確等等,驗證通過后將結果反饋給客戶端;客戶端收到背書節點的結果后,表示這個提議已經被該節點正確背書。

結合智能合約不可違約性和不可篡改性[9],可保證相關交易信息公開透明,再利用背書節點服務,這樣每個節點都可以被追溯記錄在智能合約上的交易過程,一方面降低違約行為發生的幾率,另一方面可根據背書倒查各個節點在任務執行過程中的表現,及時查漏補缺,做出優化調整。以2018 年5 月1 日發生在西安的無人機集群表演事故為例,演出一開始就有一部分無人機沒有飛到預定位置,導致1 374 架無人機沒有成功組成完整圖案;如此龐大的無人機集群在表演時出現失誤,事故一出,當時眾說紛紜,有的認為是干擾所致,有的認為是受當時天氣環境條件的影響,也有的認為是跟蹤定位信息出現了紕漏,在當時想要立馬研究清楚失誤原因具有一定難度,但倘若采用智能合約下的背書節點服務,其中可節省不少工作量,達到事半功倍的效果。因此,將基于智能合約下的背書節點服務應用于各種條件下的無人機集群中可實現現場態勢分析,對執行任務后復盤總結、查漏補缺提供直觀依據,根據背書節點的簽名追溯責任,并依據情報等級采用不同的懲罰措施和改進措施,對以后飛行任務分工調整運用起到指導作用,提高了無人機集群飛行效率。

1.5 小結

通過分析無人機集群執行任務過程中存在的通信依賴強、應變能力不足、信息傳遞時效性差及易受干擾等缺點,提出基于智能合約的去中心化特點以用來解決無人機集群在執行任務過程中通信依賴強問題、基于智能合約的成員資格服務以解決無人機集群在執行任務過程中信息傳遞時效性差和應變能力不足問題、基于智能合約的背書節點服務以提高無人機集群飛行效率、基于智能合約的同態加密技術和和橢圓曲線密碼技術以解決無人機集群執行任務過程中易受干擾問題;最終實現無人機集群系統自主通信、實時通信、態勢分析和加密通信,對提高無人機集群執勤效率、高質量完成任務和出色的發揮出其優勢提供參考。

2 智能合約在無人機集群應用中的漏洞

2.1 整數溢出

對應場景及解決方案:在加密通信中,基于智能合約的同態加密技術可實現先計算后解密等價于先解密后計算的功能,在進行計算和加解密過程中,若采用同態加密技術中的先計算后解密的功能,會涉及到整數溢出漏洞問題;根據漏洞原理和漏洞判斷條件,可對所有的整數變量添加驗證條件[10];使用SafeMath 庫中的add,sub,multi,div 函數進行計算。

分類:整數上溢,整數下溢。

漏洞原理:uint256 在EVM 中的數據位數是0~255,當數值超過這個范圍就會發生溢出,因此對“+”“-”“×”“/”操作后得到的變量沒有及時進行值的驗證就會產生該漏洞。

漏洞判定條件:沒有使用SafeMath 庫操作,且使用“+”“-”“×”“/”操作后未對結果進行溢出判斷。

2.2 重入

對應場景及解決方案:在實時通信中,若攻擊者調用了無人機集群系統內類似call.value()這類轉賬函數時,盡管無人機集群系統已經收到新命令仍然會執行之前的命令,這仍將導致信息傳遞時效性差和應變能力不足;根據漏洞原理和漏洞判斷條件,可使用其他轉賬函數(比如Solidity 內置的transfer()函數);先修改狀態變量,再進行轉賬操作。

漏洞原理:當攻擊者調用了在函數內部使用了call.value()轉賬的轉賬函數[11]時,call.value()會觸發攻擊者合約中的被其改寫過了的fallback()函數,其內部可再次調用轉賬函數,從而不斷從漏洞合約遞歸轉賬到攻擊者合約;并且轉賬函數是在call.value()轉賬操作之后,才修改漏洞合約中余額的狀態變量,這兩者共同導致了該漏洞的產生。

漏洞判定條件:使用了call.value()進行轉賬操作,且在轉賬后才再修改狀態變量。

2.3 訪問控制缺陷

對應場景及解決方案:自主通信和實時通信中分別涉及各個節點間實現了信息自我驗證和基于智能合約下的成員資格服務身份驗證,在驗證過程中,若錯誤的使用某些關鍵字,則會導致合約被非法攻擊;根據漏洞原理和漏洞判斷條件,可通過不要將判斷條件及關鍵函數的訪問關鍵字錯誤使用就不會產生該問題。

漏洞原理:某些功能的驗證條件存在設計缺陷,默認的變量或函數訪問關鍵字[12](private,public,external,internal)和2 種底層調用方式(call()和delegatecall())等的使用錯誤,使某些關鍵函數能被外部輕易訪問,從而使攻擊者獲利或者合約故障。

漏洞判定條件:關鍵函數的未添加正確的函數訪問關鍵字,或者函數內部的判斷條件邏輯有誤。

2.4 跨合約調用

對應場景及解決方案:在自主通信、實時通信和態勢分析過程中,會用到call(),delegatecall(),callcode()3 個函數來實現跨合約調用,尤其是在自主通信中,各個節點間要實現信息自我驗證、傳遞和管理,因此跨合約調用漏洞不容忽視;根據漏洞原理和漏洞判斷條件,可減少對這3 個函數的使用,相應的功能可以使用高級函數來實現。例如,直接指向給定地址的合約以調用特定的函數,以及轉賬操作使用transfer()或send()函數實現。

漏洞原理:Solidity 提供了call(),delegatecall(),callcode()3 個函數來實現合約之間交互訪問;若處理不當,很可能會產生一些致命的漏洞。如call()函數注入漏洞,使用不當時可使外界直接控制合約中call()函數相關的參數,從而訪問合約的其他重要函數。

漏洞判定條件:在函數中使用了帶有參數的call(),delegatecall(),callcode()方法,且其參數對于外界來說可以被控制。

2.5 拒絕服務攻擊

對應場景及解決方案:在實時通信中,若攻擊者通過消耗PKI 和MSP 資源,使得用戶無法獲得成員資格,因此也無法獲得相應的權限,使合法用戶被拒絕服務;根據漏洞原理和漏洞判斷條件,如果合約需要對外部函數調用的結果進行處理才能進入新的狀態,就要考慮外部調用可能一直失敗的情況。也可以添加基于時間的操作,以防外部函數調用一直無法滿足require判斷。(一般地,完整的if-else,require,assert 語句都有2 條分支,true 則繼續執行,false 則回退;函數調用也有不同的分支,可以使用函數的返回值作為判斷依據,也可以將函數是否順利執行作為判斷依據,因此,開發者在編寫智能合約時,應加入函數執行異常的處理機制)。

漏洞原理:攻擊者通過消耗合約的資源,讓用戶短暫或者永久地退出該合約,擾亂、中止、凍結正常合約的執行,從而把以太幣鎖在被攻擊的合約中;有些時候,合約被編寫成進入新的狀態,需要將以太幣發送到某個地址或者等待來自外部的某些輸入[13]。當外部調用失敗或者由于外部原因而被阻止時,這些模式也可能導致拒絕服務攻擊。

漏洞判定條件:沒有對一些能夠被外部調用影響的重要變量或函數添加執行失敗時的異常處理機制。

2.6 短地址攻擊

對應場景及解決方案:在加密通信中,在利用橢圓曲線密碼技術對智能合約內容加密和同態加密算法時,在進行加密操作和實現密文間的多種計算功能時,存在以00 結尾造成短地址攻擊漏洞;根據漏洞原理和漏洞判斷條件,可在編寫代碼時添加對地址長度的檢查機制,即可有效防范短地址攻擊漏洞。

漏洞原理:短地址攻擊是指調用其他合約的時候,特意選取以00 結尾的地址,并且傳入地址參數的時候省略最后的00,導致以太坊虛擬機(EVM)在解析數量參數的時候會在參數末尾錯誤地補0,最終導致超額轉出代幣。當參數傳遞給智能合約時,EVM 就會根據ABI 規范將參數進行編碼,就是把Solidity 編寫的合約等內容轉換成機器可以運算的二進制編碼[14]。

漏洞判定條件:函數未對傳入的地址參數進行長度檢查。

2.7 時間戳依賴

對應場景及解決方案:在自主通信和實時通信2 種情況下,智能合約的執行會依賴當前區塊的時間戳,尤其在實時通信條件下,為使無人機集群能在第一時間收到來自管理員的命令,達到信息傳遞的時效性,導致對時間戳依賴程度較高;根據漏洞原理和漏洞判斷條件,可不使用區塊時間戳作為判定勝負或該改變重要狀態的決定性因素;可通過指定區塊編號來更改合約狀態的方法可能是更安全的。

漏洞原理:時間戳依賴,就是指智能合約的執行依賴當前區塊的時間戳,隨著時間戳的不同,合約的執行結果也有差別。礦工在處理一個新的區塊時,如果新區塊的時間戳大于上一個區塊的時間戳,并且時間戳之差小于900 s,那么新區塊的時間戳就是合法的(這是由以太坊協議規定的)。然而,如果礦工有能力稍微調整時間戳,在智能合約中錯誤地使用區塊時間戳,將會造成嚴重的后果,這就是時間戳依賴漏洞。

漏洞判定條件:在改變重要狀態或者判定條件部分使用了時間戳。

2.8 tx.origin 漏洞

對應場景及解決方案:在態勢分析過程中,在運用背書節點服務時要進行自我驗證,此時會遍歷調用棧,調用全變量tx.origin,這會導致合約受到攻擊;根據漏洞原理和漏洞判斷條件[15],合約開發者要盡量避免使用tx.origin,可以改為msg.sender。在權限驗證時候,采用require(this==msg.sender)或者require(owner==msg.sender)。

漏洞原理:tx.origin 是Solidity 中的一個全局變量[16],能夠遍歷調用棧并返回最初發送調用的賬號的地址,即tx.origin 是整個交易過程中最初的哪個合約者的地址。在智能合約中使用tx.origin 變量使用身份驗證,會導致合約受到攻擊。

漏洞判定條件:在權限驗證的時候使用了tx.origin。

2.9 小結

通過分析智能合約在無人機集群執行任務過程中的漏洞,包含整數溢出、重入、訪問控制缺陷、跨合約調用、拒絕服務攻擊、短地址攻擊、時間戳依賴及tx.origin漏洞,通過分析漏洞原理、漏洞判定條件及結合對應場景提出解決方案,具體對應關系見表1;研究智能合約在無人機集群中的漏洞能夠降低其帶來的安全風險,同時為開發規范的智能合約以及對漏洞的檢測提供參考。

表1 漏洞類型及其所涉及的應用場景

3 結束語

本文以無人機集群為研究對象,為解決無人機集群系統現有存在的通信依賴性強、應變能力不足、信息傳遞時效性差及易受干擾等安全性問題,結合智能合約去中心化、防篡改、高度自治等典型優勢特征,提出智能合約在自主通信、實時通信、加密通信及態勢分析4 個方面的典型應用,對提高無人機集群執行效率、高質量完成任務及出色的發揮其優勢提供保證,為智能合約更好地應用于無人機集群并發揮其優勢提供參考。同時重點分析在4 種應用場景下潛在的8 種智能合約漏洞,分別為整數溢出、重入、訪問控制缺陷、跨合約調用、拒絕服務攻擊、短地址攻擊、時間戳依賴及tx.origin 漏洞,并根據漏洞原理及應用場景提出相應的解決方案;由于智能合約漏洞的存在會影響智能合約在無人機集群應用過程中的安全系數,關于智能合約漏洞的檢測技術研究變得尤為重要。因此,在今后研究中將重點關注基于深度學習的智能合約漏洞檢測方法,實現快速、有效地檢測出智能合約在無人機集群中的潛在安全漏洞。

猜你喜歡
智能
智能與自主
讓紙變得智能
一種智能微耕機的研發
智能制造 反思與期望
智能前沿
文苑(2018年23期)2018-12-14 01:06:06
智能前沿
文苑(2018年19期)2018-11-09 01:30:14
智能前沿
文苑(2018年17期)2018-11-09 01:29:26
智能前沿
文苑(2018年21期)2018-11-09 01:22:32
智能制造·AI未來
商周刊(2018年18期)2018-09-21 09:14:46
爭渡智能石化
能源(2018年4期)2018-05-19 01:53:44
主站蜘蛛池模板: 中文字幕在线播放不卡| 婷婷99视频精品全部在线观看| 女人18毛片水真多国产| 一级毛片免费观看久| 精品国产99久久| 国产永久在线视频| 国产精品理论片| 亚洲第一香蕉视频| 91蝌蚪视频在线观看| 91久久夜色精品国产网站| 青草国产在线视频| 亚洲开心婷婷中文字幕| 亚洲色无码专线精品观看| 国产屁屁影院| 日韩欧美中文亚洲高清在线| 亚洲人人视频| 日韩 欧美 国产 精品 综合| 理论片一区| 国产91高清视频| 无码一区中文字幕| 亚洲AV成人一区二区三区AV| 国产一级毛片高清完整视频版| 亚洲国产午夜精华无码福利| 一级片一区| 国产第一福利影院| 亚洲午夜国产精品无卡| 在线视频亚洲色图| 一区二区午夜| 国产精品精品视频| 亚洲Va中文字幕久久一区| 98超碰在线观看| 91偷拍一区| 国产精品成人免费视频99| av尤物免费在线观看| 国产激情第一页| 成人精品视频一区二区在线| 日韩专区第一页| 国产精品免费露脸视频| 2018日日摸夜夜添狠狠躁| a级毛片免费播放| 中文字幕日韩久久综合影院| 中文字幕永久在线看| 国产h视频免费观看| 久久九九热视频| 青青草国产一区二区三区| 国内精品手机在线观看视频| 国产精品无码制服丝袜| 91精品情国产情侣高潮对白蜜| 免费不卡视频| 精品国产美女福到在线直播| 久久青青草原亚洲av无码| 免费在线a视频| 国产特级毛片| 高潮毛片无遮挡高清视频播放| 久久超级碰| 国产精品免费久久久久影院无码| 日韩毛片在线播放| 国产在线观看人成激情视频| 欧美一区二区啪啪| 国产青榴视频在线观看网站| 亚洲精品国产首次亮相| 欧美一级99在线观看国产| 亚洲视频在线青青| 天堂网亚洲综合在线| 五月丁香伊人啪啪手机免费观看| 日韩不卡免费视频| 尤物在线观看乱码| 国产精品嫩草影院av| 99re精彩视频| 国产精品入口麻豆| 日韩欧美中文| 2019年国产精品自拍不卡| 欧美性久久久久| 在线观看视频99| 国产一级毛片在线| 国产第二十一页| 国产精品密蕾丝视频| аⅴ资源中文在线天堂| 国产一区二区三区夜色| 精品少妇人妻无码久久| 99ri精品视频在线观看播放| 欧美笫一页|