軟件設(shè)計(jì)中的安全設(shè)計(jì)_第1頁(yè)
軟件設(shè)計(jì)中的安全設(shè)計(jì)_第2頁(yè)
軟件設(shè)計(jì)中的安全設(shè)計(jì)_第3頁(yè)
軟件設(shè)計(jì)中的安全設(shè)計(jì)_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、軟件設(shè)計(jì)中的安全設(shè)計(jì)摘要:如今,形形色色的安全問(wèn)題已經(jīng)被全球矚目,如何保障資料的安全是大家關(guān)心的問(wèn)題。軟件作為計(jì)算機(jī)用戶常用工具,必需具備一定的安全性。提起安全,人們往往會(huì)想起一連串專業(yè)性名詞:”系統(tǒng)安全性參數(shù)”、“軟件事故率”、“軟件安全可靠度”、“軟件安全性指標(biāo)”等等,它們可能出現(xiàn)在強(qiáng)制的規(guī)范性文檔的頻率比較多,但卻不一定能在設(shè)計(jì)過(guò)程中吸引開(kāi)發(fā)者的眼球。當(dāng)我們?cè)谝粋€(gè)嚴(yán)謹(jǐn)而平穩(wěn)的軟件平臺(tái)上操作時(shí),我們不禁會(huì)稱贊這個(gè)平臺(tái)。一個(gè)專業(yè)、有素質(zhì)的軟件設(shè)計(jì)開(kāi)發(fā)者必定會(huì)將軟件安全性作為軟件設(shè)計(jì)時(shí)一個(gè)重要指標(biāo)。在這里本文將通過(guò)對(duì)軟件安全性概念的引入,以及如何通過(guò)軟件測(cè)試來(lái)驗(yàn)證是否完成了軟件安全性的設(shè)計(jì)目標(biāo)

2、,較全面的闡述軟件設(shè)計(jì)中安全方面考慮的重要性和方法。關(guān)鍵詞:軟件設(shè)計(jì)安全分析一、軟件安全性概念以及作用軟件設(shè)計(jì)階段通常包括軟件概要設(shè)計(jì)階段和軟件詳細(xì)設(shè)計(jì)階段,概要設(shè)計(jì)階段中也包含需求階段。當(dāng)軟件規(guī)模較小時(shí)也可以將而這合并為一個(gè)階段,該階段的主要安全性工作是進(jìn)行軟件安全性設(shè)計(jì)。止匕外,隨著軟件細(xì)節(jié)的展開(kāi),還要進(jìn)一步展開(kāi)安全性分析以發(fā)現(xiàn)新的危險(xiǎn),補(bǔ)充軟件安全性需求。軟件設(shè)計(jì)中的安全設(shè)計(jì)應(yīng)該包括需求階段和詳細(xì)設(shè)計(jì)階段的分析。需求階段要求對(duì)分配給軟件的系統(tǒng)級(jí)安全性需求進(jìn)行分析,設(shè)計(jì)人員要對(duì)系統(tǒng)初步結(jié)構(gòu)設(shè)計(jì)文檔和軟件安全性分析準(zhǔn)備,其中包括接口、軟件等需求的分析,完成系統(tǒng)安全性需求的映射,有了這些,設(shè)計(jì)

3、人員才有把握對(duì)系統(tǒng)做出綜合的分析,從而更好地設(shè)計(jì)軟件安全方面的配置;詳細(xì)設(shè)計(jì)階段要求分析設(shè)計(jì)實(shí)現(xiàn)是否符合安全性要求,詳細(xì)設(shè)計(jì)階段是進(jìn)一步細(xì)化代碼的階段,這部分的詳細(xì)設(shè)計(jì)安全性分析是整個(gè)相關(guān)整個(gè)軟件安全的關(guān)鍵,經(jīng)過(guò)長(zhǎng)期的驗(yàn)證,已經(jīng)有了一些參考參數(shù):設(shè)計(jì)邏輯分析、設(shè)計(jì)約束分析和復(fù)雜性多度量,它們分別是要評(píng)價(jià)軟甲設(shè)計(jì)的方程式、算法等,要用給出的約束評(píng)價(jià)軟件在這些約束下運(yùn)行的能力,還要利用McCabe或Halstead等這樣一些復(fù)雜性評(píng)估技術(shù)來(lái)標(biāo)示出需要進(jìn)一步改進(jìn)的區(qū)域。對(duì)于計(jì)算機(jī)系統(tǒng)來(lái)說(shuō),軟件的安全性設(shè)計(jì)可以保證程序在其設(shè)計(jì)的運(yùn)行環(huán)境中,不會(huì)引起(或可以容忍的小概率引起)或誘發(fā)對(duì)人員或設(shè)備的危害。例

4、如多級(jí)火箭一級(jí)點(diǎn)火、二級(jí)點(diǎn)火指令如果錯(cuò)了,火箭就會(huì)失敗。但只要對(duì)火箭指令及傳遞機(jī)構(gòu)采取足夠的防錯(cuò)設(shè)計(jì),錯(cuò)發(fā)指令的概率就可以小到能容忍的程度。如果各關(guān)鍵項(xiàng)目的開(kāi)發(fā)單位能從軟件安全性這方面重視“安全”這個(gè)題目,那么項(xiàng)目的安全性鏈條就不會(huì)輕易地由于諸如小數(shù)點(diǎn)錯(cuò)位的原因而斷開(kāi)。二、設(shè)計(jì)中安全性的目標(biāo)SimsonGarfinkel和GeneSpafford給出定義:“假如你能夠依靠一臺(tái)計(jì)算機(jī)和它上面的軟件做出你期待的行為,就說(shuō)它是安全的”。安全性設(shè)計(jì)的目標(biāo)是實(shí)現(xiàn)最小風(fēng)險(xiǎn)設(shè)計(jì),其中風(fēng)險(xiǎn)包括軟件軟件缺陷產(chǎn)生的風(fēng)險(xiǎn)、用戶操作產(chǎn)生的風(fēng)險(xiǎn)、費(fèi)用風(fēng)險(xiǎn)和進(jìn)度風(fēng)險(xiǎn)。降低這些風(fēng)險(xiǎn)的軟件安全設(shè)計(jì)原則如下:(1)降低軟件和接

5、口的復(fù)雜性;(2)對(duì)安全性關(guān)鍵等級(jí)高的模塊,應(yīng)使用更有針對(duì)性的設(shè)計(jì)方法,以降低其失效的發(fā)生;(3)對(duì)高風(fēng)險(xiǎn)的部分,提供更多的資源(時(shí)間、技術(shù)考慮等);(4)重視人因安全性,強(qiáng)調(diào)用戶使用安全設(shè)計(jì)而非用戶使用友好設(shè)計(jì);(5)設(shè)計(jì)時(shí)應(yīng)考慮測(cè)試性。為落實(shí)以上原則,還要從分析、設(shè)計(jì)、驗(yàn)證三方面開(kāi)展安全性工作。同時(shí)要在設(shè)計(jì)階段或更早階段,選擇好編程語(yǔ)言、編碼規(guī)范、開(kāi)發(fā)工具和操作系統(tǒng)以更好地保證軟件安全性。安全性的目標(biāo)也是保證用戶能夠安全操作不發(fā)生錯(cuò)誤,并且保證用戶資料不外泄。在設(shè)計(jì)軟件的過(guò)程中,應(yīng)該注意保證操作界面的友好,保證軟件的保密性。研究者曾經(jīng)提出安全交互設(shè)計(jì)的原則:(1)用戶能夠清楚理解授權(quán)過(guò)程,

6、明確過(guò)程中的操作;(2)影響安全決定的用戶交互界面應(yīng)該便于檢查;(3)在任何時(shí)候都應(yīng)該答應(yīng)撤銷做出的安全授權(quán);(4)用戶界面不應(yīng)該讓用戶誤以為擁有實(shí)際上沒(méi)擁有的權(quán)限;(5)用戶與授權(quán)實(shí)體之間的通訊渠道必須是不能被欺騙和不輕易癱瘓的;(6)確認(rèn)實(shí)體與確認(rèn)操作在界面上應(yīng)該與其他實(shí)體和操作不同;(7)交互界面應(yīng)該提供足夠的表達(dá)能力讓用戶輕易按照自己的目標(biāo)表達(dá)安全決定;(8)在動(dòng)作生效前應(yīng)該讓用戶清楚授權(quán)操作的結(jié)果。現(xiàn)在計(jì)算機(jī)的構(gòu)件都被標(biāo)注成可信的,可信不是一個(gè)yes或者no的問(wèn)題,不明確下述問(wèn)題,“可信”這個(gè)詞是沒(méi)有任何意義的。這些問(wèn)題是:(1)“誰(shuí)被信任?"(2)“被信任做什么?&quo

7、t;(3)“什么條件下不可信?"(4)“應(yīng)對(duì)的安全風(fēng)險(xiǎn)是什么?”。三、軟件設(shè)計(jì)階段安全性分析設(shè)計(jì)階段的安全性分析主要為發(fā)現(xiàn)新的潛在危險(xiǎn),以及識(shí)別關(guān)鍵軟件部分和單元。隨著軟件設(shè)計(jì)工作的開(kāi)展,可以對(duì)需求分析階段的安全性工作進(jìn)行更新,從而發(fā)現(xiàn)新的危險(xiǎn);通過(guò)部件/單元關(guān)鍵性分析可以識(shí)別安全性關(guān)鍵部件和單元,從而加強(qiáng)該部件/單元的安全性設(shè)計(jì)。合適的開(kāi)展時(shí)間是,在軟件概要設(shè)計(jì)階段開(kāi)始,在軟件概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)工作開(kāi)展的同時(shí)開(kāi)展,至軟件詳細(xì)設(shè)計(jì)完成時(shí)結(jié)束。安全性分析階段的主要工作內(nèi)容分為以下兩點(diǎn):(1)更新需求階段的軟件安全性分析。早期在軟件安全性獲取過(guò)程中進(jìn)行的分析因?yàn)槿鄙偌?xì)節(jié)只是一個(gè)開(kāi)始,在此

8、階段可以繼續(xù)進(jìn)行,以發(fā)現(xiàn)新的軟件危險(xiǎn),如繼續(xù)開(kāi)展初步危險(xiǎn)分析,定時(shí)、規(guī)模和吞吐量分析,軟件故障樹(shù)分析、軟件失效模式和影像模式、控制流分析、信息流分析、需求關(guān)鍵分析等。(2)進(jìn)行部件/模塊安全性關(guān)鍵性分析。在需求關(guān)鍵性分析的基礎(chǔ)上,將軟件安全性需求分配到不同的軟件層次,如操作系統(tǒng)、設(shè)備驅(qū)動(dòng)程序、應(yīng)用程序、應(yīng)用程序接口等,然后再映射到相應(yīng)的設(shè)計(jì)部件/模塊中并標(biāo)識(shí)安全性關(guān)鍵部件/模塊,以更有重點(diǎn)地開(kāi)展后續(xù)的安全性工作。四、安全性設(shè)計(jì)軟件工程需建立以后,常規(guī)有效的設(shè)計(jì)方法包括結(jié)構(gòu)化設(shè)計(jì)法、模塊化設(shè)計(jì)法、自頂向下設(shè)計(jì)法、程序邏輯構(gòu)造法、偽碼等設(shè)計(jì)方法;為解決軟件可靠性問(wèn)題,又可以從避錯(cuò)設(shè)計(jì)、差錯(cuò)設(shè)計(jì)、改

9、錯(cuò)設(shè)計(jì)和容錯(cuò)設(shè)計(jì)等方面進(jìn)行軟件可靠性設(shè)計(jì)。常規(guī)方法和可靠性方法的應(yīng)用都可以提高軟件的安全性。軟件安全性設(shè)計(jì)工作主要在軟件設(shè)計(jì)階段開(kāi)展,至軟件設(shè)計(jì)完成時(shí)結(jié)束、它應(yīng)和常規(guī)設(shè)計(jì)緊密結(jié)合,貫穿在軟件設(shè)計(jì)過(guò)程始終。軟件安全設(shè)計(jì)的的主要內(nèi)容和要求如下:(1)所有的軟件安全性功能需求應(yīng)落實(shí)在軟件設(shè)計(jì)中;(2)應(yīng)采用適當(dāng)?shù)陌踩栽O(shè)計(jì)準(zhǔn)則開(kāi)展相應(yīng)的安全性設(shè)計(jì)活動(dòng);(3)采用的軟件設(shè)計(jì)應(yīng)具有可測(cè)試性,即能對(duì)軟件安全性特征和安全性需求進(jìn)行徹底的測(cè)試;(4)應(yīng)將實(shí)現(xiàn)安全性需求或者可能通過(guò)失效或其他機(jī)制影響安全性要素的設(shè)計(jì)要素指定為安全性關(guān)鍵的;(5)設(shè)計(jì)文檔應(yīng)明確標(biāo)識(shí)出所有安全性關(guān)鍵的設(shè)計(jì)要素;(6)軟件設(shè)計(jì)應(yīng)將安全

10、性關(guān)鍵的設(shè)計(jì)進(jìn)行模塊化,以滿足實(shí)際應(yīng)用的需要。五、軟件設(shè)計(jì)階段安全性驗(yàn)證設(shè)計(jì)階段軟件安全性驗(yàn)證的目的是確保軟件安全性需求正確和全面的子部件/模塊中落實(shí)實(shí)。開(kāi)展軟件安全性驗(yàn)證的時(shí)機(jī)是在軟件安全性設(shè)計(jì)完成之后啟動(dòng),在編碼工作開(kāi)始之前完成。軟件安全性驗(yàn)證的內(nèi)容分為以下幾點(diǎn):(1)軟件安全性人員應(yīng)對(duì)軟件設(shè)計(jì)通過(guò)分析進(jìn)行安全性驗(yàn)證。(2)分析驗(yàn)證方法應(yīng)記錄在軟件安全性計(jì)劃中。(3)分析驗(yàn)證方法應(yīng)至少包括如下內(nèi)容:應(yīng)驗(yàn)證軟件設(shè)計(jì)滿足上述的安全設(shè)計(jì)的原則;應(yīng)驗(yàn)證軟件設(shè)計(jì)不違反任何安全性控制措施或過(guò)程,且所有的附加的危險(xiǎn)、危險(xiǎn)原因和危險(xiǎn)的貢獻(xiàn)都被記錄下來(lái),以及在任何運(yùn)行模式中,安全性設(shè)計(jì)都能將系統(tǒng)維持在某個(gè)狀態(tài)中。該分析驗(yàn)證至少要考慮到一些常見(jiàn)的驗(yàn)證示例,比如時(shí)間約束、硬件失效、容錯(cuò)、并發(fā)性等。應(yīng)使用安全性分析(如初步危險(xiǎn)分析、失效模式和影響分析、故障樹(shù)分析等)確定用于防止、減輕或控制失效和故障的設(shè)計(jì)特征,以及所包含的失效/故障

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論