




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、軟件設(shè)計中的安全設(shè)計摘要: 如今, 形形色色的安全問題已經(jīng)被全球矚目,如何保障資料的安全是大家關(guān)心的問題。軟件作為計算機用戶常用工具,必需具備一定的安全性。提起安全,人們往往會想起一連串專業(yè)性名詞: “系統(tǒng)安全性參數(shù)”、 “軟件事故率”、 “軟件安全可靠度”、 “軟件安全性指標(biāo)”等等,它們可能出現(xiàn)在強制的規(guī)范性文檔的頻率比較多,但卻不一定能在設(shè)計過程中吸引開發(fā)者的眼球。當(dāng)我們在一個嚴謹而平穩(wěn)的軟件平臺上操作時,我們不禁會稱贊這個平臺。一個專業(yè)、有素質(zhì)的軟件設(shè)計開發(fā)者必定會將軟件安全性作為軟件設(shè)計時一個重要指標(biāo)。在這里本文將通過對軟件安全性概念的引入,以及如何通過軟件測試來驗證是否完成了軟件安全
2、性的設(shè)計目標(biāo),較全面的闡述軟件設(shè)計中安全方面考慮的重要性和方法。關(guān)鍵詞 : 軟件設(shè)計安全分析一、軟件安全性概念以及作用軟件設(shè)計階段通常包括軟件概要設(shè)計階段和軟件詳細設(shè)計階段,概要設(shè)計階段中也包含需求階段。 當(dāng)軟件規(guī)模較小時也可以將而這合并為一個階段,該階段的主要安全性工作是進行軟件安全性設(shè)計。此外,隨著軟件細節(jié)的展開,還要進一步展開安全性分析以發(fā)現(xiàn)新的危險,補充軟件安全性需求。軟件設(shè)計中的安全設(shè)計應(yīng)該包括需求階段和詳細設(shè)計階段的分析。需求階段要求對分配給軟件的系統(tǒng)級安全性需求進行分析,設(shè)計人員要對系統(tǒng)初步結(jié)構(gòu)設(shè)計文檔和軟件安全性分析準(zhǔn)備,其中包括接口、軟件等需求的分析,完成系統(tǒng)安全性需求的映射
3、,有了這些,設(shè)計人員才有把握對系統(tǒng)做出綜合的分析,從而更好地設(shè)計軟件安全方面的配置;詳細設(shè)計階段要求分析設(shè)計實現(xiàn)是否符合安全性要求,詳細設(shè)計階段是進一步細化代碼的階段,這部分的詳細設(shè)計安全性分析是整個相關(guān)整個軟件安全的關(guān)鍵,經(jīng)過長期的驗證,已經(jīng)有了一些參考參數(shù):設(shè)計邏輯分析、設(shè)計約束分析和復(fù)雜性多度量,它們分別是要評價軟甲設(shè)計的方程式、算法等,要用給出的約束評價軟件在這些約束下運行的能力,還要利用McCab或Halstead等這樣一些復(fù)雜性評估技術(shù)來標(biāo)示出需要進一步改進的區(qū)域。對于計算機系統(tǒng)來說,軟件的安全性設(shè)計可以保證程序在其設(shè)計的運行環(huán)境中,不會引起(或可以容忍的小概率引起)或誘發(fā)對人員或
4、設(shè)備的危害。例如多級火箭一級點火、二級點火指令如果錯了,火箭就會失敗。但只要對火箭指令及傳遞機構(gòu)采取足夠的防錯設(shè)計,錯發(fā)指令的概率就可以小到能容忍的程度。如果各關(guān)鍵項目的開發(fā)單位能從軟件安全性這方面重視 “安全”這個題目,那么項目的安全性鏈條就不會輕易地由于諸如小數(shù)點錯位的原因而斷開。二、設(shè)計中安全性的目標(biāo)SimsonGarfinkel 和 GeneSpafford 給出定義: “假如你能夠依靠一臺計算機和它上面的軟件做出你期待的行為,就說它是安全的”。安全性設(shè)計的目標(biāo)是實現(xiàn)最小風(fēng)險設(shè)計,其中風(fēng)險包括軟件軟件缺陷產(chǎn)生的風(fēng)險、用戶操作產(chǎn)生的風(fēng)險、費用風(fēng)險和進度風(fēng)險。降低這些風(fēng)險的軟件安全設(shè)計原則
5、如下:(1) 降低軟件和接口的復(fù)雜性;(2) 對安全性關(guān)鍵等級高的模塊,應(yīng)使用更有針對性的設(shè)計方法,以降低其失效的發(fā)生;(3) 對高風(fēng)險的部分,提供更多的資源(時間、技術(shù)考慮等);(4) 重視人因安全性,強調(diào)用戶使用安全設(shè)計而非用戶使用友好設(shè)計;(5) 設(shè)計時應(yīng)考慮測試性。為落實以上原則,還要從分析、設(shè)計、驗證三方面開展安全性工作。同時要在設(shè)計階段或更早階段,選擇好編程語言、編碼規(guī)范、開發(fā)工具和操作系統(tǒng)以更好地保證軟件安全性。安全性的目標(biāo)也是保證用戶能夠安全操作不發(fā)生錯誤,并且保證用戶資料不外泄。在設(shè)計軟件的過程中,應(yīng)該注意保證操作界面的友好,保證軟件的保密性。研究者曾經(jīng)提出安全交互設(shè)計的原則
6、:(1) 用戶能夠清楚理解授權(quán)過程,明確過程中的操作;(2) 影響安全決定的用戶交互界面應(yīng)該便于檢查;(3) 在任何時候都應(yīng)該答應(yīng)撤銷做出的安全授權(quán);(4) 用戶界面不應(yīng)該讓用戶誤以為擁有實際上沒擁有的權(quán)限;(5) 用戶與授權(quán)實體之間的通訊渠道必須是不能被欺騙和不輕易癱瘓的;(6) 確認實體與確認操作在界面上應(yīng)該與其他實體和操作不同;(7) 交互界面應(yīng)該提供足夠的表達能力讓用戶輕易按照自己的目標(biāo)表達安全決定;(8) 在動作生效前應(yīng)該讓用戶清楚授權(quán)操作的結(jié)果?,F(xiàn)在計算機的構(gòu)件都被標(biāo)注成可信的,可信不是一個yes 或者 no 的問題,不明確下述問題, “可信”這個詞是沒有任何意義的。這些問題是:(
7、 1) “誰被信任?”( 2) “被信任做什么?”( 3) “什么條件下不可信?”( 4) “應(yīng)對的安全風(fēng)險是什么?”。三、軟件設(shè)計階段安全性分析設(shè)計階段的安全性分析主要為發(fā)現(xiàn)新的潛在危險,以及識別關(guān)鍵軟件部分和單元。隨著軟件設(shè)計工作的開展,可以對需求分析階段的安全性工作進行更新,從而發(fā)現(xiàn)新的危險;通過部件 / 單元關(guān)鍵性分析可以識別安全性關(guān)鍵部件和單元,從而加強該部件/ 單元的安全性設(shè)計。合適的開展時間是,在軟件概要設(shè)計階段開始,在軟件概要設(shè)計、詳細設(shè)計工作開展的同時開展,至軟件詳細設(shè)計完成時結(jié)束。安全性分析階段的主要工作內(nèi)容分為以下兩點:( 1)更新需求階段的軟件安全性分析。早期在軟件安全
8、性獲取過程中進行的分析因為缺少細節(jié)只是一個開始,在此階段可以繼續(xù)進行,以發(fā)現(xiàn)新的軟件危險,如繼續(xù)開展初步危險分析,定時、規(guī)模和吞吐量分析,軟件故障樹分析、軟件失效模式和影像模式、控制流分析、信息流分析、需求關(guān)鍵分析等。( 2) 進行部件 / 模塊安全性關(guān)鍵性分析。在需求關(guān)鍵性分析的基礎(chǔ)上,將軟件安全性需求分配到不同的軟件層次,如操作系統(tǒng)、設(shè)備驅(qū)動程序、應(yīng)用程序、應(yīng)用程序接口等,然后再映射到相應(yīng)的設(shè)計部件/ 模塊中并標(biāo)識安全性關(guān)鍵部件/ 模塊, 以更有重點地開展后續(xù)的安全性工作。四、安全性設(shè)計軟件工程需建立以后,常規(guī)有效的設(shè)計方法包括結(jié)構(gòu)化設(shè)計法、模塊化設(shè)計法、自頂向下設(shè)計法、程序邏輯構(gòu)造法、偽
9、碼等設(shè)計方法;為解決軟件可靠性問題,又可以從避錯設(shè)計、差錯設(shè)計、 改錯設(shè)計和容錯設(shè)計等方面進行軟件可靠性設(shè)計。常規(guī)方法和可靠性方法的應(yīng)用都可以提高軟件的安全性。軟件安全性設(shè)計工作主要在軟件設(shè)計階段開展,至軟件設(shè)計完成時結(jié)束、它應(yīng)和常規(guī)設(shè)計緊密結(jié)合,貫穿在軟件設(shè)計過程始終。軟件安全設(shè)計的的主要內(nèi)容和要求如下:( 1)所有的軟件安全性功能需求應(yīng)落實在軟件設(shè)計中;( 2)應(yīng)采用適當(dāng)?shù)陌踩栽O(shè)計準(zhǔn)則開展相應(yīng)的安全性設(shè)計活動;( 3)采用的軟件設(shè)計應(yīng)具有可測試性,即能對軟件安全性特征和安全性需求進行徹底的測試;( 4)應(yīng)將實現(xiàn)安全性需求或者可能通過失效或其他機制影響安全性要素的設(shè)計要素指定為安全性關(guān)鍵的
10、;( 5)設(shè)計文檔應(yīng)明確標(biāo)識出所有安全性關(guān)鍵的設(shè)計要素;( 6)軟件設(shè)計應(yīng)將安全性關(guān)鍵的設(shè)計進行模塊化,以滿足實際應(yīng)用的需要。五、軟件設(shè)計階段安全性驗證設(shè)計階段軟件安全性驗證的目的是確保軟件安全性需求正確和全面的子部件/ 模塊中落實實。 開展軟件安全性驗證的時機是在軟件安全性設(shè)計完成之后啟動,在編碼工作開始之前完成。軟件安全性驗證的內(nèi)容分為以下幾點:(1) 軟件安全性人員應(yīng)對軟件設(shè)計通過分析進行安全性驗證。(2) 分析驗證方法應(yīng)記錄在軟件安全性計劃中。(3) 分析驗證方法應(yīng)至少包括如下內(nèi)容:應(yīng)驗證軟件設(shè)計滿足上述的安全設(shè)計的原則;應(yīng)驗證軟件設(shè)計不違反任何安全性控制措施或過程,且所有的附加的危險、危險原因和危險的貢獻都被記錄下來,以及在任何運行模式中,安全性設(shè)計都能將系統(tǒng)維持在某個狀態(tài)中。該分析驗證至少要考慮到一些常見的驗證示例,比如時間約束、硬件失效、容錯、并發(fā)性等。應(yīng)使用安全性分析(如初步危險分析、失效模式和影響分析、故障樹分析等)確定用于防止、減輕或控制失效和故障的設(shè)計特征,以及所包含的失效/故障的組合(如一個軟件失效和一個硬件失效、或者多個并發(fā)的硬件失效)的級別。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 米、面制品的電子商務(wù)與網(wǎng)絡(luò)營銷考核試卷
- 跨文化溝通與國際合作考核試卷
- 連鎖酒店品牌形象宣傳手段研究考核試卷
- 谷物磨制企業(yè)產(chǎn)品創(chuàng)新與市場競爭能力考核試卷
- 棉花加工設(shè)備的聲學(xué)降噪技術(shù)考核試卷
- 新育兒護理方法實踐指南
- 影視作品煙霧機租賃與特效制作合同
- 高效沖擊試驗機租賃及材料抗沖擊性能改進合同
- 區(qū)塊鏈智能合約法律審查與合同執(zhí)行監(jiān)督合同
- 模塊化建筑幕墻膠縫更換與裝配式建筑合同
- 2024年青海省中考一模語文試題
- 電器安裝維修服務(wù)合同
- 中信證券公司融資融券業(yè)務(wù)方案設(shè)計
- 2023版煤礦安全管理人員考試題庫及解析
- DBJ04T 289-2020 建筑工程施工安全資料管理標(biāo)準(zhǔn)
- 化工設(shè)計知到智慧樹章節(jié)測試課后答案2024年秋浙江大學(xué)
- 互聯(lián)網(wǎng)金融(同濟大學(xué))知到智慧樹章節(jié)測試課后答案2024年秋同濟大學(xué)
- 宏觀經(jīng)濟學(xué)知到智慧樹章節(jié)測試課后答案2024年秋浙江大學(xué)
- 2024年中考數(shù)學(xué)復(fù)習(xí):中點模型專項練習(xí)
- 旅行社企業(yè)章程范本
- 2025年寧波余姚市直屬企業(yè)招招聘筆試參考題庫含答案解析
評論
0/150
提交評論