版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、在社會高度信息化的今天,社會生產生活高度依賴軟件系統(tǒng),因此軟件系統(tǒng)的安全性與可靠性也就顯得愈加重要,通過形式化驗證的方式保證程序的安全是一種重要的手段。
形式化驗證有兩種方法,一種是模型檢測,模型檢測能夠通過遍歷系統(tǒng)所有的狀態(tài)空間,自動驗證有窮狀態(tài)的系統(tǒng)并構造不滿足性質定理的反例。另一種是演繹推理,它使用形式化的方式對程序進行數(shù)學推理,盡管以這種方式實現(xiàn)的自動驗證工具早已有實驗室開發(fā)出來,但是至今都無法在工業(yè)界使用。究其原因在
2、于自動定理證明方面的困難,因為不管是斷言語言描述能力的提升、循環(huán)不變式的推斷、別名判斷和驗證條件的證明等,最終還是受到自動定理證明器能力的影響。鑒于這些原因,在研究自動定理證明的同時,應當適當考慮降低對自動定理證明期待,可以通過設計安全的語言去提高合法程序的門檻,同時設計規(guī)范語言來描述程序代碼的行為性質以降低定理證明器的負擔。
本文主要貢獻:
第一,設計了一種面向驗證的C語言子集,稱為安全C語言。在基于Hoare邏輯
3、推理規(guī)則對程序進行形式驗證過程中,每當使用賦值公理{Q[E/x]}x=E{Q}(Q是賦值語句的后斷言,Q[E/x]表示對Q中所有x代換為E)時,必須保證后斷言Q與賦值語句x=E中沒有潛在別名,否則Q[E/x]是最弱前斷言的結論不可靠,而C語言廣泛存在的別名,給基于Hoare邏輯的推理帶來難題。本文在基于C99標準之上,從別名的角度討論了C語言的安全性以及其會給程序驗證帶來的問題,并以此為啟示設計了安全C語言,在安全C語言中要求對C語言中
4、各種類型增加編程限制來使得對這些被限制類型的變量操作表現(xiàn)得較為規(guī)范,同時還要求使用標注對程序加以說明以減輕定理證明器負擔。
第二,設計了一種規(guī)范語言,規(guī)范語言定義了安全C語言要求的標注的語法語義及使用方式,規(guī)范語言以形式化的方式描述C程序的行為性質,這些對C程序行為性質的描述最終都會傳遞給自動定理證明器,從而更大程度上幫助自動定理證明器認知程序的行為,并最終驗證程序行為是否符合規(guī)范中的描述。在規(guī)范語言中還專門引入形狀描述來表示
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安全C語言形狀系統(tǒng)的設計與實現(xiàn).pdf
- 安全C語言的驗證條件生成器的設計與實現(xiàn).pdf
- 安全C語言驗證器的形狀系統(tǒng)的擴展設計與實現(xiàn).pdf
- PIM-C語言設計與實現(xiàn).pdf
- C語言在線考試系統(tǒng)的設計與實現(xiàn).pdf
- C語言網絡考試系統(tǒng)的設計與實現(xiàn).pdf
- 匯編語言到C語言翻譯軟件的設計與實現(xiàn).pdf
- “C語言”教學系統(tǒng)設計與實現(xiàn).pdf
- C語言程序自動評測系統(tǒng)的設計與實現(xiàn).pdf
- c語言源碼評判系統(tǒng)設計與實現(xiàn)
- 《C語言程序設計》學習平臺的設計與實現(xiàn).pdf
- C-C++語言考試自動評分系統(tǒng)的設計與實現(xiàn).pdf
- C語言源碼評判系統(tǒng)設計與實現(xiàn).doc
- c語言課程設計—超市收銀系統(tǒng)的設計與實現(xiàn)
- 基于c語言的圖書管理系統(tǒng)設計與實現(xiàn)
- C-C++程序安全檢查工具前端的設計與實現(xiàn).pdf
- C-C++程序安全分析中契約的設計與實現(xiàn).pdf
- 數(shù)字排序的設計與實現(xiàn)c語言課程設計報告
- C語言程序設計課程教學網站的設計與實現(xiàn).pdf
- 基于c語言的智能點餐系統(tǒng)設計與實現(xiàn)
評論
0/150
提交評論