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

基于雷達軟件安全的C程序到形式模型的轉換方法

2022-08-12 01:54:06臧偉旺朱健
現代信息科技 2022年7期
關鍵詞:定義程序模型

臧偉旺,朱健

(南京電子技術研究所,江蘇 南京 210039)

0 引 言

隨著雷達系統不斷發展,以及結構工藝的優化提高,對雷達軟件設計提出了更高的要求,其中,軟件的安全性與可靠性尤為重要,影響著整個雷達系統的行為是否符合預期以及性能的高低。傳統的測試仿真方法可以有效提高軟件的可靠性,但無法遍歷所有的執行路徑,從而不能證明一個軟件沒有漏洞。因此,需要引入形式化方法來保證軟件的安全性。

形式化方法是一種基于數理邏輯的軟硬件設計方法,也是目前安全關鍵軟件系統的一種嚴格的驗證技術。通過形式化邏輯的方式來表示合約代碼,并加以嚴格地推理證明。這個過程依賴于數學邏輯推理的嚴密性,保證100%覆蓋到代碼的運行行為,可以保證在一定范圍內的絕對正確?;谛问交椒ǖ难芯吭谝恍┌踩P的領域,如雷達、核電、航空、區塊鏈等已經逐步得到應用,并且取得了非常好的效果。

常見雷達軟件編程語言如C 語言可以編寫可執行程序,具有圖靈完備屬性,實現較為復雜的功能,但是其安全性較差,容易產生漏洞,如整數溢出、數組越界、函數重入等等,從而給軟件安全帶來潛在的威脅,造成不可預料的損失。一階邏輯是具有明確語法和語義的形式語言,且具有豐富的表達能力,可用于規約、定理證明和模型檢測。

本文提出從C 程序到基于一階邏輯的形式模型的轉換方法,首先定義了C 語言的核心子集,通過定義輔助運算子,給出了保持語義一致的映射關系,從而使用基于一階邏輯的形式模型來規約C 程序語言,包括賦值語句、條件語句、循環語句以及函數的規約,指導生成的形式模型可以自動地被驗證工具執行并驗證程序的正確性,有效提高了C 程序的安全性,以及程序驗證的效率。

1 總體轉換方法

我們提出基于形式模型的C 程序建模與驗證方法,如圖1所示,一個C 程序主要包括賦值語句、條件語句、循環語句以及函數結構,我們為每一個元素建立了與其語義保持一致的形式模型。其中,我們考慮C 語言子集包括:

圖1 C 程序建模與驗證方法

(1)賦值語句:{p1, v=e, p2},其中p1,p2 表示賦值語句執行前后的程序,v 表示程序變量,e 為表達式;

(2)條件語句if: {p1,if (Cond(v)) e1 else e2,p2},其中Cond(v),表示從包含變量集合v 的布爾表達式到true 或者false 布爾值的映射,e1,e2 為語句集合;

(3)循環語句while:{p1, while(Cond(v)){e},p2},其中e 為循環體內部語句集合;

(4)函數定義{p1,return_t func_name(para_list){e},p2},其中return_t 為函數返回值類型,func_name 為函數名,para_list 為包含參數類型和參數名的列表,e 表示函數體的語句集合。

目標形式模型基于一階邏輯,其語法包括:

(1)量化符號?和?;

(2)邏輯連接詞蘊含→、否定?、雙條件?、且∧以及或∨;

(3)括號、方括號以及其他自定義標點符號;

(4)集合的變量,通常標記為英文字母的小寫形式如,,等;

(5)等式符號=。

對于程序而言,用戶最關心的是程序的安全屬性是否得到滿足,如類型檢查、可達性、死鎖、無狀態二義性等。通過轉換規則,可以使用基于一階邏輯的形式語言對程序建模以及對期望屬性規約。當得到形式模型后,可以進行模型轉換,轉換為更加復雜的形式模型。同時,借助驗證平臺,如Rodin,Isabelle,SPIN 等證明工具對模型進行驗證與仿真。通過工具提供的交互式定理證明助手,自動驗證生成的證明義務,從而驗證模型是否滿足給定的屬性。對于一些狀態比較簡單的模型,可以通過模型檢測工具,對狀態空間進行搜索窮舉,如果找到反例,則需要修改C 程序,反之,則通過驗證。

2 轉換規則

2.1 輔助運算子

我們首先定義ξ 操作符表示公式具有良好的條件。比如ξ(÷):≠0,定義:

因此,可以定義<+=∪(dom()*),表示使用映射關系集合來更新集合中映射關系。更新表示如果有相同變量,則用中該變量的值來替代,如果中有新的變量,則引入該變量到該值的映射關系。

2.2 形式化規約

下面分別給出賦值語句、條件語句、循環語句以及函數的轉換規則。

規定賦值語句的轉化規則如下:

即,C 語言的賦值語句轉換為一階邏輯中對全局變量映射關系集合中變量的更新。

規定條件語句的轉換規則如下:

即,首先將C 的條件語句轉為0(false)和非0(true),然后基于一階邏輯進行析取操作,當循環條件不滿足時候,規定蘊含true,表示跳出循環

規定循環語句的轉換規則如下,其中表示的后繼。

即,構造一個自然數到集合{?(),?(?()),…}的映射,每個?()函數對Cond()進行判斷并析取操作。存在某個自然數使得其對應的{?(),?(?()),…}的某個值為p2 語句的執行,跳出循環。

下面考慮函數定義的轉換規則:

(1)函數自身沒有調用其他函數(包括自己),形如:{p1, return_tfunc_name(para_list){body; return e},p2},這里給出兩種形式的轉換規則。

第一種:

其中,_為返回值的類型,為參數類型,默認無參數為true,body 為函數體,為函數返回值。

第二種:

使用蘊含的形式,類似霍爾邏輯,表示經過函數體的執行后可以蘊含函數值的類型

(2)函數調用其他函數,形如:{p1,return_t func_name(para_list){func1(para) ;body},p2}

函數體內每調用一次其他函數,則觸發該映射,生成新的全局變量映射g,和當前自然數x 一一對應,當>,保證了g和之前的所有g(≤)不一樣,用于保存調用函數的局部變量。如果是對全局變量更新,則對進行更新。

(3)函數遞歸調用自身,形如:{p1,return_t func_name(para_list){func_name(para_list) ;body},p2}

首先用一階邏輯描述遞歸不動點定理,首先定義連續函數的集合:

然后描述不動點定理:

即任何連續函數都存在不動點。使用lambda 演算來表示上述形式函數,則,取參數,后的演算結果為

所以定義自然數集合到集合{(),(()),…}的映射,表示遞歸的次數不斷增加。

3 實例演示

以一個簡單的C 程序為例,如表1所示,該程序包含賦值語句、條件語句、循環語句以及兩個函數,其中一個函數是inf_1,遞歸調用自身,另外一個是main 函數,作為C程序的啟動入口,其中調用inf_1 函數。C 程序案例:

根據上節給出的轉換規則,可以得到基于一階邏輯的形式模型:

該模型是基于一階邏輯,與同樣基于集合論的Event-B模型具有等價的語義,但是本文生成的形式模型比Event-B 模型的語法更加簡單。因此,可以考慮將形式模型轉換到Event-B 模型,借助Rodin 平臺對Event-B 模型進行定理證明和模型檢測。同樣,有限狀態機模型也是基于一階邏輯,因此可以考慮將本文的形式模型轉換到有限狀態機模型,從而借助狀態機可視化模型中狀態的遷移過程。

4 結 論

本文以雷達軟件安全為背景,研究了從C 程序到基于一階邏輯的形式模型的轉換方法,選取C 程序核心語法子集為對象,通過定義輔助運算子,建立了保持語義一致的映射關系,生成C 程序對應的形式模型,該模型是基于一階邏輯語法的可執行模型,從而借助驗證平臺自動地進行定理證明和進行模型檢測,驗證了C 程序的屬性,提高了程序的安全性。未來將進一步提高轉換的自動化程度,實現自動轉換的工具,并擴大C 程序的子集范圍,該方法已經針對運用C程序語言的雷達系統進行了檢驗,對軟件的測試更加充分,減少漏洞風險,具有重要的應用價值。

猜你喜歡
定義程序模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
3D打印中的模型分割與打包
成功的定義
山東青年(2016年1期)2016-02-28 14:25:25
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
修辭學的重大定義
當代修辭學(2014年3期)2014-01-21 02:30:44
主站蜘蛛池模板: 亚洲精品视频在线观看视频| 色综合久久无码网| 在线高清亚洲精品二区| 国产日韩AV高潮在线| 色偷偷一区| 国产尤物视频网址导航| 99偷拍视频精品一区二区| 人妻熟妇日韩AV在线播放| 内射人妻无码色AV天堂| 亚洲无码熟妇人妻AV在线| 欧美特黄一级大黄录像| 最新国产高清在线| 亚洲成人福利网站| 亚欧美国产综合| 美女免费黄网站| 国产精品黄色片| 色悠久久综合| 亚洲AV免费一区二区三区| 久草热视频在线| 99久久这里只精品麻豆| 又黄又湿又爽的视频| 免费啪啪网址| 日韩二区三区| 国产精品成人第一区| 国产白浆在线观看| 91娇喘视频| 亚洲精品第1页| 人妻丰满熟妇αv无码| 麻豆精品在线播放| 久热中文字幕在线| 久久精品电影| 99re66精品视频在线观看| 高清不卡毛片| 日本中文字幕久久网站| 久久这里只有精品8| 又爽又大又黄a级毛片在线视频| 亚洲免费黄色网| jizz亚洲高清在线观看| 热99精品视频| 99成人在线观看| 欧美亚洲日韩中文| 国产成人久久777777| 99国产在线视频| 亚洲大学生视频在线播放| 夜夜爽免费视频| 亚洲综合狠狠| 亚洲综合18p| 国产乱子伦一区二区=| 亚洲视频a| 国产毛片网站| 国产爽妇精品| 久久久久免费精品国产| 波多野结衣在线se| 国产青榴视频| 91小视频在线播放| 色婷婷天天综合在线| 无码精品福利一区二区三区| 男女男精品视频| 成人国产免费| 成年免费在线观看| 久久国产乱子| 精品91在线| 欧美在线黄| 国产黄网站在线观看| 精品国产女同疯狂摩擦2| 福利一区在线| 97国产在线播放| 国产剧情国内精品原创| 国产精品免费入口视频| 2020国产精品视频| 日韩中文欧美| 91偷拍一区| 免费高清a毛片| 成人午夜视频网站| 中文字幕在线看| 亚洲国产精品日韩av专区| 欧美亚洲国产精品第一页| 凹凸国产分类在线观看| 欧美专区在线观看| 中文字幕首页系列人妻| 亚洲AV无码乱码在线观看代蜜桃| 免费看a级毛片|