基于WEB的應(yīng)用系統(tǒng)安全方案_第1頁(yè)
基于WEB的應(yīng)用系統(tǒng)安全方案_第2頁(yè)
基于WEB的應(yīng)用系統(tǒng)安全方案_第3頁(yè)
基于WEB的應(yīng)用系統(tǒng)安全方案_第4頁(yè)
基于WEB的應(yīng)用系統(tǒng)安全方案_第5頁(yè)
已閱讀5頁(yè),還剩53頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第二章 系統(tǒng)安全的需求分析本章從數(shù)據(jù)安全和業(yè)務(wù)邏輯安全兩個(gè)角度對(duì)應(yīng)用系統(tǒng)的安全進(jìn)行需求分析,主要包括保密性需求、完整性需求、可用性需求三部分;隨后對(duì)業(yè)務(wù)邏輯安全需求進(jìn)行了分析,包括身份認(rèn)證、訪問(wèn)控制、交易重復(fù)提交控制、異步交易處理、交易數(shù)據(jù)不可否認(rèn)性、監(jiān)控與審計(jì)等幾個(gè)方面;最后還分析了系統(tǒng)中一些其它的安全需求。2.1 數(shù)據(jù)安全需求2.1.1數(shù)據(jù)保密性需求數(shù)據(jù)保密性要求數(shù)據(jù)只能由授權(quán)實(shí)體存取和識(shí)別,防止非授權(quán)泄露。從目前國(guó)內(nèi)應(yīng)用的安全案例統(tǒng)計(jì)數(shù)據(jù)來(lái)看,數(shù)據(jù)保密性是最易受到攻擊的一個(gè)方面,通常表現(xiàn)為客戶端發(fā)生的數(shù)據(jù)泄密,包括用戶的基本信息、賬戶信息、登錄信息等的泄露。在應(yīng)用系統(tǒng)中,數(shù)據(jù)保密性需求通

2、常主要體現(xiàn)在以下幾個(gè)方面:A客戶端與系統(tǒng)交互時(shí)輸入的各類密碼:包括系統(tǒng)登錄密碼、轉(zhuǎn)賬密碼、憑證查詢密碼、憑證交易密碼等必須加密傳輸及存放,這些密碼在應(yīng)用系統(tǒng)中只能以密文的方式存在,其明文形式能且只能由其合法主體能夠識(shí)別。以網(wǎng)銀系統(tǒng)為例,在網(wǎng)銀系統(tǒng)中,通常存有四種密碼:系統(tǒng)登錄密碼、網(wǎng)銀轉(zhuǎn)賬密碼、柜面交易密碼及一次性密碼。系統(tǒng)登錄密碼用來(lái)認(rèn)證當(dāng)前登錄者為指定登錄名的合法用戶,網(wǎng)銀用戶的登錄密碼和網(wǎng)銀轉(zhuǎn)賬密碼由用戶在柜面開戶時(shí)指定,用戶在首次登錄網(wǎng)銀系統(tǒng)時(shí),系統(tǒng)必須強(qiáng)制用戶修改初始密碼,通常要求長(zhǎng)度不得少于六位數(shù),且不能是類似于111111、1234567、9876543等的簡(jiǎn)單數(shù)字序列,系統(tǒng)將進(jìn)

3、行檢查。網(wǎng)銀轉(zhuǎn)賬密碼是指網(wǎng)銀系統(tǒng)為鞏固用戶資金安全,在涉及資金變動(dòng)的交易中對(duì)用戶身份進(jìn)行了再認(rèn)證,要求用戶輸入預(yù)設(shè)的密碼,網(wǎng)銀交易密碼僅針對(duì)個(gè)人用戶使用,企業(yè)用戶沒(méi)有網(wǎng)銀交易密碼。建立多重密碼機(jī)制,將登錄密碼與網(wǎng)銀轉(zhuǎn)賬密碼分開管理,有利于加強(qiáng)密碼的安全性。由于用戶在使用網(wǎng)銀時(shí)每次都必須先提供登錄密碼,故登錄密碼暴露的機(jī)會(huì)較多,安全性相對(duì)較弱;但登錄網(wǎng)銀的用戶并不是每次都會(huì)操作賬戶資金的,所以專門設(shè)定網(wǎng)銀轉(zhuǎn)賬密碼可加強(qiáng)賬戶的安全性。網(wǎng)銀轉(zhuǎn)賬密碼在網(wǎng)銀開戶時(shí)設(shè)定,網(wǎng)銀用戶在系統(tǒng)中作轉(zhuǎn)賬支付、理財(cái)、代繳費(fèi)等資金變動(dòng)類交易時(shí)使用。柜面交易密碼是指用戶在銀行柜面辦理儲(chǔ)蓄時(shí),針對(duì)儲(chǔ)蓄憑證(如卡折、存單等)

4、而設(shè)的密碼。柜面交易密碼常用于POS系統(tǒng)支付時(shí)、ATM取款時(shí)、憑證柜面取款時(shí),柜面交易密碼一個(gè)明顯的特征是它目前只能是六位的數(shù)字,這是由于目前柜面密碼輸入設(shè)備的限制而造成的。柜面交易密碼與上述的網(wǎng)銀轉(zhuǎn)賬密碼的區(qū)別在于:網(wǎng)銀轉(zhuǎn)賬密碼和系統(tǒng)登錄密碼都產(chǎn)生于網(wǎng)銀系統(tǒng),儲(chǔ)存在網(wǎng)銀系統(tǒng)中,僅限網(wǎng)銀系統(tǒng)中認(rèn)證使用;而柜面交易密碼產(chǎn)生于銀行柜臺(tái),可以在外圍渠道如ATM、電話銀行、自助終端上修改,它保存在銀行核心系統(tǒng)中,供外圍各個(gè)渠道系統(tǒng)共同使用。另外網(wǎng)銀轉(zhuǎn)賬密碼可以有非數(shù)字字符組成,而柜面交易密碼只能是六位的數(shù)字。網(wǎng)銀中使用到柜面交易密碼的交易包括:網(wǎng)銀開戶、加掛賬戶。一次性密碼由用戶的智能卡、令牌卡產(chǎn)生,

5、或由動(dòng)態(tài)密碼系統(tǒng)產(chǎn)生通過(guò)短信方式發(fā)送到用戶注冊(cè)的手機(jī)上。一次性密碼的作用與網(wǎng)銀轉(zhuǎn)賬密碼相同,適用的場(chǎng)合也相同。一次性密碼在農(nóng)商行網(wǎng)銀系統(tǒng)中是可選的安全服務(wù),用戶需到柜面辦理開通手續(xù)才能使用,沒(méi)有開通一次性密碼服務(wù)的用戶必須設(shè)定網(wǎng)銀交易密碼,開通一次性密碼服務(wù)的用戶則無(wú)需設(shè)定網(wǎng)銀交易密碼,要求網(wǎng)銀系統(tǒng)自動(dòng)判斷并提示用戶在某個(gè)交易中是要輸入網(wǎng)銀交易密碼還是提示一次性密碼。B應(yīng)用系統(tǒng)與其它系統(tǒng)進(jìn)行數(shù)據(jù)交換時(shí)在特定安全需求下需進(jìn)行端對(duì)端的加解密處理。這里的數(shù)據(jù)加密主要是為了防止交易數(shù)據(jù)被銀行內(nèi)部人士截取利用,具體通訊加密方案參照應(yīng)用系統(tǒng)的特定需求。 2.1.2數(shù)據(jù)完整性需求數(shù)據(jù)完整性要求防止非授權(quán)實(shí)體

6、對(duì)數(shù)據(jù)進(jìn)行非法修改。用戶在跟應(yīng)用系統(tǒng)進(jìn)行交互時(shí),其輸入設(shè)備如鍵盤、鼠標(biāo)等有可能被木馬程序偵聽(tīng),輸入的數(shù)據(jù)遭到截取修改后被提交到應(yīng)用系統(tǒng)中,如原本用戶準(zhǔn)備向A賬戶轉(zhuǎn)一筆資金在交易數(shù)據(jù)遭到修改后就被轉(zhuǎn)到B賬戶中了。同樣的威脅還存在于交易數(shù)據(jù)的傳輸過(guò)程中,如在用戶向應(yīng)用系統(tǒng)提交的網(wǎng)絡(luò)傳輸過(guò)程中或應(yīng)用系統(tǒng)跟第三方等其它系統(tǒng)的通訊過(guò)程中,另外存儲(chǔ)在應(yīng)用系統(tǒng)數(shù)據(jù)庫(kù)中的數(shù)據(jù)也有可能遭到非法修改,如SQL注入攻擊等。2.1.3數(shù)據(jù)可用性需求數(shù)據(jù)可用性要求數(shù)據(jù)對(duì)于授權(quán)實(shí)體是有效、可用的,保證授權(quán)實(shí)體對(duì)數(shù)據(jù)的合法存取權(quán)利。對(duì)數(shù)據(jù)可用性最典型的攻擊就是拒絕式攻擊(DoS)和分布式拒絕攻擊,兩者都是通過(guò)大量并發(fā)的惡意

7、請(qǐng)求來(lái)占用系統(tǒng)資源,致使合法用戶無(wú)法正常訪問(wèn)目標(biāo)系統(tǒng),如SYN Flood攻擊等,將會(huì)直接導(dǎo)致其他用戶無(wú)法登錄系統(tǒng)。另外,應(yīng)用登錄機(jī)器人對(duì)用戶的密碼進(jìn)行窮舉攻擊也會(huì)嚴(yán)重影響系統(tǒng)的可用性。2.2 業(yè)務(wù)邏輯安全需求業(yè)務(wù)邏輯安全主要是為了保護(hù)應(yīng)用系統(tǒng)的業(yè)務(wù)邏輯按照特定的規(guī)則和流程被存取及處理。2.2.1身份認(rèn)證需求身份認(rèn)證就是確定某個(gè)個(gè)體身份的過(guò)程。系統(tǒng)通過(guò)身份認(rèn)證過(guò)程以識(shí)別個(gè)體的用戶身份,確保個(gè)體為所宣稱的身份。應(yīng)用系統(tǒng)中身份認(rèn)證可分為單向身份認(rèn)證和雙向身份認(rèn)證,單向身份認(rèn)證是指應(yīng)用系統(tǒng)對(duì)用戶進(jìn)行認(rèn)證,而雙向身份認(rèn)證則指應(yīng)用系統(tǒng)和用戶進(jìn)行互相認(rèn)證,雙向身份認(rèn)證可有效防止“網(wǎng)絡(luò)釣魚”等假網(wǎng)站對(duì)真正系

8、統(tǒng)的冒充。應(yīng)用服務(wù)器采用數(shù)字證書,向客戶端提供身份認(rèn)證,數(shù)字證書要求由權(quán)威、獨(dú)立、公正的第三方機(jī)構(gòu)頒發(fā);系統(tǒng)為客戶端提供兩種可選身份認(rèn)證方案,服務(wù)器端對(duì)客戶端進(jìn)行多重身份認(rèn)證,要求充分考慮到客戶端安全問(wèn)題。將客戶端用戶身份認(rèn)證與賬戶身份認(rèn)證分開進(jìn)行,在用戶登錄系統(tǒng)時(shí),采用單點(diǎn)用戶身份認(rèn)證,在用戶提交更新類、管理類交易請(qǐng)求時(shí),再次對(duì)用戶的操作進(jìn)行認(rèn)證或?qū)τ脩羯矸葸M(jìn)行二次認(rèn)證,以確保用戶信息安全。2.2.2訪問(wèn)控制需求訪問(wèn)控制規(guī)定了主體對(duì)客體訪問(wèn)的限制,并在身份識(shí)別的基礎(chǔ)上,根據(jù)身份對(duì)提出資源訪問(wèn)的請(qǐng)求加以控制。訪問(wèn)控制是應(yīng)用系統(tǒng)中的核心安全策略,它的主要任務(wù)是保證應(yīng)用系統(tǒng)資源不被非法訪問(wèn)。主體、

9、客體和主體對(duì)客體操作的權(quán)限構(gòu)成訪問(wèn)控制機(jī)制的三要素。訪問(wèn)控制策略可以劃分為自主訪問(wèn)控制、強(qiáng)制訪問(wèn)控制和基于角色的訪問(wèn)控制三種。交易重復(fù)提交控制需求交易重復(fù)提交就是同一個(gè)交易被多次提交給應(yīng)用系統(tǒng)。查詢類的交易被重復(fù)提交將會(huì)無(wú)故占用更多的系統(tǒng)資源,而管理類或金融類的交易被重復(fù)提交后,后果則會(huì)嚴(yán)重的多,譬如一筆轉(zhuǎn)賬交易被提交兩次則將導(dǎo)致用戶的賬戶被轉(zhuǎn)出兩筆相同額的資金,顯然用戶只想轉(zhuǎn)出一筆。交易被重復(fù)提交可能是無(wú)意的,也有可能是故意的:A用戶的誤操作。在B/S結(jié)構(gòu)中,從客戶端來(lái)看,服務(wù)器端對(duì)客戶端的響應(yīng)總有一定的延遲,這在某些交易處理上體現(xiàn)的更為明顯,特別是那些涉及多個(gè)系統(tǒng)交互、遠(yuǎn)程訪問(wèn)、數(shù)據(jù)庫(kù)全表

10、掃描、頁(yè)面數(shù)據(jù)簽名等交易,這種延遲通常都會(huì)在5至7秒以上。這時(shí)用戶有可能在頁(yè)面已提交的情況下,再次點(diǎn)擊了提交按鈕,這時(shí)將會(huì)造成交易被重復(fù)提交。B被提交的交易數(shù)據(jù)有可能被拿來(lái)作重放攻擊。應(yīng)用系統(tǒng)必須對(duì)管理類和金融類交易提交的次數(shù)進(jìn)行控制,這種控制即要有效的杜絕用戶的誤操作,還不能影響用戶正常情況下對(duì)某個(gè)交易的多次提交。比如說(shuō):當(dāng)某個(gè)用戶在10秒內(nèi)提交了兩筆相同的轉(zhuǎn)賬業(yè)務(wù),則系統(tǒng)必須對(duì)此進(jìn)行控制;另一方面,當(dāng)用戶在第一筆轉(zhuǎn)賬業(yè)務(wù)完成后,再作另一筆數(shù)據(jù)相同的轉(zhuǎn)賬時(shí),則系統(tǒng)不能對(duì)此進(jìn)行誤控制。這里判斷的依據(jù)就是交易重復(fù)提交的控制因子a,當(dāng)交易提交的間隔小于a時(shí),系統(tǒng)認(rèn)為這是重復(fù)提交,提交間隔大于a的則

11、不作處理,控制因子的大小由應(yīng)用系統(tǒng)業(yè)務(wù)人員決定,系統(tǒng)應(yīng)可對(duì)其進(jìn)行配置化管理。2.2.4異步交易處理需求所謂異步交易就是指那些錄入與提交不是同時(shí)完成的交易,這里的同時(shí)是指客戶端在錄入交易數(shù)據(jù)與提交交易的過(guò)程中,應(yīng)用系統(tǒng)服務(wù)器端并沒(méi)有對(duì)錄入的數(shù)據(jù)進(jìn)行持久化保存,而異步交易在系統(tǒng)處理過(guò)程中,錄入與提交時(shí)間上發(fā)生在兩個(gè)相分離的階段,在兩階段之間,應(yīng)用系統(tǒng)對(duì)錄入的數(shù)據(jù)進(jìn)行了持久化保存。由于異步交易是被系統(tǒng)分兩階段受理的,這就涉及到以下三個(gè)方面的問(wèn)題:錄入與提交的關(guān)系管理。如何保證提交的數(shù)據(jù)就是用戶當(dāng)初錄入的數(shù)據(jù)。如何記錄交易在兩階段的日志狀態(tài)。錄入與提交的關(guān)系定義不當(dāng)將會(huì)導(dǎo)致交易錄入與提交被同時(shí)完成而違

12、反了業(yè)務(wù)處理流程,錄入的數(shù)據(jù)被系統(tǒng)保存后有可能遭到非法篡改,非異步交易執(zhí)行后的日志狀態(tài)不會(huì)被更新而異步交易在提交后日志狀態(tài)將會(huì)被更新。應(yīng)用系統(tǒng)中需要定義成異步的交易通常有以下兩類:需要授權(quán)的交易。出于業(yè)務(wù)管理和業(yè)務(wù)安全方面的考慮,大部分管理類和金融類的交易都需要經(jīng)過(guò)一定的授權(quán)流程后方能被提交。部分定時(shí)交易,如預(yù)約轉(zhuǎn)賬等。預(yù)約一筆在周三轉(zhuǎn)賬的預(yù)約轉(zhuǎn)賬有可能是周一被錄入的,用戶在錄入后,預(yù)約轉(zhuǎn)賬的數(shù)據(jù)將被網(wǎng)銀系統(tǒng)保存直到周三這筆轉(zhuǎn)賬才會(huì)真正發(fā)生。應(yīng)用系統(tǒng)必須定義簡(jiǎn)單、清晰、易維護(hù)的錄入與提交關(guān)系模型,保證被保存的錄入數(shù)據(jù)不會(huì)被非法篡改,同時(shí)要求異步交易的日志狀態(tài)是明確的,不應(yīng)出現(xiàn)錄入與提交相矛盾的

13、日志狀態(tài)。2.2.5交易數(shù)據(jù)不可否認(rèn)性需求交易數(shù)據(jù)不可否認(rèn)性是指應(yīng)用系統(tǒng)的客戶不能否認(rèn)其所簽名的數(shù)據(jù),客戶對(duì)交易數(shù)據(jù)的簽名是通過(guò)應(yīng)用系統(tǒng)使用客戶的數(shù)字證書來(lái)完成的。數(shù)字證書的應(yīng)用為交易數(shù)據(jù)不可否認(rèn)性提供了技術(shù)支持,而電子簽名法的頒布為交易數(shù)據(jù)不可否認(rèn)性提供了法律基礎(chǔ)。在應(yīng)用系統(tǒng)中通常要求對(duì)所有管理類與金融類的交易進(jìn)行數(shù)字簽名,以防客戶事后對(duì)交易或交易數(shù)據(jù)的抵賴。應(yīng)用系統(tǒng)需同時(shí)保存客戶錄入的原始數(shù)據(jù)和簽名后的數(shù)據(jù),保存期限依業(yè)務(wù)部門的具體要求而定。考慮到系統(tǒng)性能和對(duì)用戶的響應(yīng)問(wèn)題,應(yīng)用系統(tǒng)可只簽與交易有關(guān)的關(guān)鍵數(shù)據(jù),支付類的交易只對(duì)付款人賬號(hào)、付款金額、收款人姓名、收款人賬號(hào)、收款人開戶行五個(gè)字

14、段進(jìn)行數(shù)字簽名就可以了。2.2.6監(jiān)控與審計(jì)需求安全級(jí)別要求高的應(yīng)用系統(tǒng)應(yīng)提供對(duì)系統(tǒng)進(jìn)行實(shí)時(shí)監(jiān)控的功能,監(jiān)控的內(nèi)容包括系統(tǒng)當(dāng)前登錄的用戶、用戶類型、用戶正在訪問(wèn)的交易、用戶登錄的IP等。對(duì)金融類、管理類的交易以及應(yīng)用系統(tǒng)登錄交易需要完整地記錄用戶的訪問(wèn)過(guò)程,記錄的關(guān)鍵元素包括:用戶登錄名、登錄IP、交易日期及時(shí)間、交易名稱、交易相關(guān)數(shù)據(jù)等,對(duì)有授權(quán)流程的交易要求完整記錄授權(quán)的經(jīng)過(guò),授權(quán)記錄與交易記錄分開存放。 2.3 其它安全需求2.3.1 登錄控制需求登錄通常是應(yīng)用系統(tǒng)的關(guān)鍵交易,系統(tǒng)通過(guò)登錄交易對(duì)用戶身份進(jìn)行認(rèn)證。針對(duì)不同角色的用戶指定不同的登錄策略:最小權(quán)限集用戶,可使用用戶登錄名+靜態(tài)

15、登錄密碼+圖形識(shí)別碼方式登錄。低安全性。普通權(quán)限集用戶,可使用用戶登錄名+動(dòng)態(tài)登錄密碼+數(shù)圖形識(shí)別碼方式登錄。高權(quán)限集用戶,可使用用戶登錄名+數(shù)字證書+靜態(tài)密碼+數(shù)圖形識(shí)別碼方式登錄。所有權(quán)限集用戶,可使用用戶登錄名+數(shù)字證書+動(dòng)態(tài)密碼+數(shù)圖形識(shí)別碼方式登錄。應(yīng)用系統(tǒng)可提供客戶端加密控件對(duì)用戶輸入的密碼域進(jìn)行加密處理后再提交。連續(xù)登錄多次失敗的用戶,其IP將被應(yīng)用系統(tǒng)鎖定,24小時(shí)后系統(tǒng)將自動(dòng)對(duì)鎖定的IP進(jìn)行解鎖。這里登錄失敗的次數(shù)和IP鎖定時(shí)長(zhǎng)根據(jù)業(yè)務(wù)需求說(shuō)明應(yīng)由配置文件進(jìn)行設(shè)定。對(duì)于首次登錄系統(tǒng)的用戶,系統(tǒng)將強(qiáng)制定位到修改密碼的頁(yè)面,要求用戶修改初始密碼重新登錄方可使用系統(tǒng)。對(duì)于密碼類型和

16、長(zhǎng)度,系統(tǒng)將規(guī)則檢查。對(duì)于成功登錄的用戶,應(yīng)用系統(tǒng)自動(dòng)清除其連續(xù)登錄失敗的次數(shù),同時(shí)初始化用戶的相關(guān)數(shù)據(jù)并同時(shí)對(duì)登錄數(shù)據(jù)進(jìn)行記錄,以備審計(jì)。2.3.2 會(huì)話控制需求通過(guò)應(yīng)用服務(wù)器自身的會(huì)話管理或應(yīng)用程序的會(huì)話管理都可以控制會(huì)話的時(shí)長(zhǎng)設(shè)定,設(shè)置過(guò)久的會(huì)話將給客戶端帶來(lái)安全風(fēng)險(xiǎn),而設(shè)置過(guò)短則影響用戶的正常使用。該機(jī)制使在應(yīng)用層無(wú)狀態(tài)的HTTP/HTTPS協(xié)議,能夠支持需要狀態(tài)記錄的互聯(lián)網(wǎng)應(yīng)用,實(shí)現(xiàn)用戶登錄后在新的狀態(tài)下從事交易、超時(shí)斷路等功能。2.3.3 被訪問(wèn)對(duì)象控制需求應(yīng)用系統(tǒng)對(duì)用戶的關(guān)鍵資源或信息,提供操作權(quán)限設(shè)置支持,權(quán)限分為:查詢和更新兩類。權(quán)限為查詢的資源或信息只能對(duì)其進(jìn)行查詢操作,不

17、能進(jìn)行更新。資源權(quán)限由開戶時(shí)指定,為加強(qiáng)安全性,權(quán)限分配可通過(guò)落地處理開通。2.3.4 交易提醒需求交易提醒是指將客戶的賬號(hào)與客戶手機(jī)號(hào)、電子郵件等關(guān)聯(lián)起來(lái),當(dāng)客戶信息發(fā)生變動(dòng)時(shí),向客戶的手機(jī)發(fā)送一條短信或電話通知或發(fā)送一封電子郵件,及時(shí)準(zhǔn)確的告知客戶。另通過(guò)通知提醒功能,系統(tǒng)應(yīng)定期向用戶發(fā)送統(tǒng)計(jì)、明細(xì)、確認(rèn)等信息。第三章 應(yīng)用系統(tǒng)安全的總體解決方案3.1 安全技術(shù)安全技術(shù)是安全子系統(tǒng)的理論基礎(chǔ),安全子系統(tǒng)中主要涉及的安全技術(shù)包括:密碼技術(shù)、PKI技術(shù)體系、一次性口令技術(shù)等,另外考慮到目前實(shí)際應(yīng)用中,大部分WEB應(yīng)用系統(tǒng)是基于J2EE平臺(tái)的,J2EE平臺(tái)本身也對(duì)系統(tǒng)安全提供了較多內(nèi)置的支持,如

18、JAAS技術(shù)等,所以本章中對(duì)于J2EE平臺(tái)的安全技術(shù)特性也有少量的討論。3.1.1 密碼技術(shù)密碼技術(shù)是保護(hù)信息系統(tǒng)安全的基礎(chǔ)技術(shù)之一,密碼技術(shù)可以保證數(shù)據(jù)的保密性和完整性,同時(shí)它還具有身份認(rèn)證和數(shù)字簽名的功能。從密碼體制方面來(lái)說(shuō),密碼技術(shù)可分為對(duì)稱密鑰密碼技術(shù)和非對(duì)稱密鑰密碼技術(shù)兩大類。在應(yīng)用系統(tǒng)中常用的密碼技術(shù)主要有以下幾種:A加密解密技術(shù)加密(Encryption)就是指通過(guò)特定的加密算法對(duì)數(shù)據(jù)進(jìn)行變換,將明文(Plaintext)轉(zhuǎn)換成密文(Cryptograph);解密(Decryption)是加密的逆過(guò)程,解密的過(guò)程就是將密文還原為明文。設(shè)明文為P,密文為C,E為加密算法,D為解密算

19、法,則加密解密的過(guò)程可以記為: (3.1)上述的加密與解密過(guò)程沒(méi)有使用到密鑰,通常稱之為無(wú)密鑰密碼體制。無(wú)密鑰密碼主要依靠加密算法提供保密性,在應(yīng)用系統(tǒng)中這種密碼很少用到,主要使用還是有密鑰的密碼體制,在有密鑰的密碼體制中,密文的保密性依賴于密鑰而不依賴于算法,算法可以公開。其中,只有一個(gè)密鑰K的密碼體制稱為單鑰體制(One-key System),又稱對(duì)稱加密體制(Symmetrical Encryption);有加密密鑰KE和解密密鑰KD兩個(gè)密鑰的密碼體制稱為雙鑰體制(Two-key System),又稱非對(duì)稱加密體制(Dissymmetrical Encryption),有時(shí)也叫公開密鑰

20、算法(Public Key Algorithm)。應(yīng)用系統(tǒng)中經(jīng)常使用最廣泛的對(duì)稱加密算法是DES算法 (Data Encryption Standard),非對(duì)稱加密算法是RSA算法(Receive,Shamir,Adelman)。單鑰體制的加密解密過(guò)程可以記為: (3.2)上式用圖示可以表示為:明文密文明文加密密鑰K解密密鑰K圖5 單鑰體制加密解密過(guò)程圖雙鑰體制的加密解密過(guò)程可以記為: (3.3)上式用圖示可以表示為: 明文密文明文加密密鑰KE解密密鑰KD圖6 雙鑰體制加密解密過(guò)程圖還有一種應(yīng)用系統(tǒng)中經(jīng)常用到的加密技術(shù)是數(shù)據(jù)摘要,數(shù)據(jù)摘要就是應(yīng)用單向散列函數(shù)算法,將輸入的任意長(zhǎng)度明文變換成固

21、定長(zhǎng)度的密文,而將此密文再轉(zhuǎn)換成明文在數(shù)學(xué)上來(lái)說(shuō)是困難的。應(yīng)用系統(tǒng)中應(yīng)用最廣泛的數(shù)據(jù)摘要算法主要有MD5和SHA兩種,MD5輸出壓縮值為128bits,SHA輸出壓縮值為160bits。設(shè)Hash表示單向散列函數(shù),則數(shù)據(jù)摘要的過(guò)程可以記為: (3.4)上式用圖示可以表示為:明文密文明文加密密鑰K解密密鑰K密文明文Hash圖7 數(shù)據(jù)摘要的過(guò)程圖B數(shù)字簽名。數(shù)字簽名是指通過(guò)密碼算法對(duì)原始數(shù)據(jù)信息進(jìn)行加密處理后,生成一段原始數(shù)據(jù)信息的信息標(biāo)識(shí),這段信息標(biāo)識(shí)稱為原始數(shù)據(jù)信息的數(shù)字簽名。通常數(shù)字簽名和原始數(shù)據(jù)信息是放在一起發(fā)送的,這樣便于信息的接受者對(duì)其進(jìn)行驗(yàn)證,數(shù)字簽名是對(duì)現(xiàn)實(shí)中手寫簽名和印章的模擬,

22、數(shù)字簽名只有信息發(fā)送方一人能產(chǎn)生,這種唯一性對(duì)應(yīng)了原始數(shù)據(jù)信息的來(lái)源。數(shù)字簽名具有驗(yàn)證數(shù)據(jù)完整性和信息來(lái)源不可否認(rèn)性的功能,這正是PKI體系提供的核心功能。在應(yīng)用系統(tǒng)中,較小的數(shù)據(jù)可以直接簽名,而較大的數(shù)據(jù)或文件通常先對(duì)其作數(shù)據(jù)摘要后再對(duì)數(shù)據(jù)摘要作數(shù)字簽名。下式表達(dá)了對(duì)一段原始數(shù)據(jù)信息進(jìn)行簽名的過(guò)程:原始數(shù)據(jù)信息OriginalMsg先是被單向散列函數(shù)Hash作數(shù)據(jù)摘要生成摘要信息DigestMsg,然后應(yīng)用非對(duì)稱加密算法DissymmetricalEncrypt及其私鑰Keyprivate對(duì)數(shù)據(jù)摘要進(jìn)行簽名(私鑰僅有發(fā)送方持有,公鑰需散發(fā)給接收方),最后將簽名結(jié)果DigitalSignatu

23、re與原始數(shù)據(jù)信息一起發(fā)送給接受方: (3.4)上式用圖示可以表示為:OriginalMsgKeyprivavteDigitalSignatureHashDissymmetricalEncrytDigestOriginalMsg + DigitalSignature圖8 數(shù)字簽名的過(guò)程圖信息接受方在接受到原始數(shù)據(jù)信息OriginalMsg與其數(shù)字簽名DigitalSignature后,可以對(duì)數(shù)字簽名進(jìn)行驗(yàn)證。首先分離出兩者,然后對(duì)原始數(shù)據(jù)信息應(yīng)用同樣的單向散列函數(shù)Hash對(duì)其作數(shù)據(jù)摘要得到Digest2,再對(duì)接收到的數(shù)字簽名應(yīng)用非對(duì)稱加密算法DissymmetricalEncrypt及其公鑰K

24、eypublic對(duì)其進(jìn)行解密,得到Digest1。比較Digest1與Digest2,如果兩者一樣則證明:1信息OriginalMsg及其數(shù)字簽名DigitalSignature是真實(shí)的,確實(shí)來(lái)自于私鑰Keyprivate的持有方。2信息OriginalMsg及其數(shù)字簽名DigitalSignature在發(fā)送過(guò)程中是完整的,未曾遭到篡改。3私鑰Keyprivate的持有方發(fā)送了信息OriginalMsg及其數(shù)字簽名DigitalSignature這件事是不可否認(rèn)的。上述數(shù)字簽名的驗(yàn)證過(guò)程可以表達(dá)為: (3.5)用圖形表示如下:KeypublicOriginalMsgDigitalSignatu

25、reHashDissymmetricalEncrytDigest2OriginalMsg + DigitalSignatureDigest2兩者相同?圖9 數(shù)字簽名驗(yàn)證的過(guò)程圖C報(bào)文識(shí)別碼應(yīng)用系統(tǒng)跟其它系統(tǒng)通訊時(shí)大都是通過(guò)發(fā)送接收?qǐng)?bào)文方式進(jìn)行的,除比較常用的ISO8583,sop報(bào)文等,還有比較多的就是自定義的報(bào)文格式,自定義報(bào)文需要解決報(bào)文的保密性和完整性問(wèn)題,報(bào)文的完整性可以通過(guò)加密算法生成原始報(bào)文的報(bào)文標(biāo)識(shí)來(lái)識(shí)別,這個(gè)加密后的報(bào)文標(biāo)識(shí)稱為原始報(bào)文的識(shí)別碼,也叫報(bào)文校驗(yàn)碼MAC(Message Authentication Code)。而報(bào)文的保密性可以通過(guò)對(duì)整個(gè)報(bào)文及其識(shí)別碼進(jìn)行加密處理

26、來(lái)完成,實(shí)際應(yīng)用中識(shí)別碼通常可以通過(guò)單向散列函數(shù)對(duì)原始報(bào)文作數(shù)據(jù)摘要得到,然后對(duì)原始報(bào)文和數(shù)據(jù)摘要作對(duì)稱加密,這樣既保證了報(bào)文的完整性,同時(shí)也保證了報(bào)文的保密性,這里對(duì)稱加密算法的密鑰分發(fā)是主要問(wèn)題。D數(shù)字信封數(shù)字信封DE(Digital Envelope)是指信息發(fā)送方在通訊雙發(fā)首次通訊時(shí),使用對(duì)方的公鑰對(duì)雙方的通訊密鑰SK(Symmentric Key)進(jìn)行加密,形成一個(gè)數(shù)字信封,然后發(fā)給接收方,接收方收到數(shù)字信封后進(jìn)行拆封操作,用自己的私鑰對(duì)信封進(jìn)行解密得到通訊密鑰,然后雙方可以用通訊密鑰對(duì)自己發(fā)送的信息進(jìn)行對(duì)稱加密2。這樣既解決了對(duì)稱加密的密鑰分配問(wèn)題又提高了雙方通訊加密的效率,畢竟非

27、對(duì)稱加密算法比對(duì)稱加密算法效率要低下。3.1.2 PKI體系PKI體系是由政策機(jī)構(gòu)、認(rèn)證機(jī)構(gòu)和注冊(cè)機(jī)構(gòu)組成的,通過(guò)使用單向散列函數(shù)、非對(duì)稱加密體制等加密解密技術(shù),安全套接字協(xié)議SSL,LDAP協(xié)議(Lightweight Directory Access Protocol),X.509證書標(biāo)準(zhǔn)等技術(shù),實(shí)現(xiàn)數(shù)據(jù)加密、身份認(rèn)證和數(shù)字簽名等功能,從而保證數(shù)據(jù)保密性、完整性、真實(shí)性和不可否認(rèn)性的一種技術(shù)體系。PKI體系很好的解決了網(wǎng)上銀行的大部分安全需求,對(duì)網(wǎng)上銀行的數(shù)據(jù)安全和業(yè)務(wù)邏輯安全提供了有力的支持。CA是PKI體系的主要實(shí)體,數(shù)字證書是CA的主要產(chǎn)品,CA通過(guò)數(shù)字證書的應(yīng)用來(lái)實(shí)現(xiàn)PKI體系所提

28、供的功能。1PKI的組成PKI由政策批準(zhǔn)機(jī)構(gòu)PAA、政策CA機(jī)構(gòu)PCA、認(rèn)證機(jī)構(gòu)CA和注冊(cè)機(jī)構(gòu)RA組成。PAA創(chuàng)建整個(gè)PKI系統(tǒng)的方針、政策,批準(zhǔn)本PAA下屬的PCA的政策,為下屬PCA簽發(fā)公鑰證書,建立整個(gè)PKI體系的安全策略,并具有監(jiān)控個(gè)PCA行為的責(zé)任。PCA制定自身的具體政策,包括密鑰的產(chǎn)生、密鑰的長(zhǎng)度、證書的有效期規(guī)定及CRL的處理等,同時(shí)PCA為其下屬CA簽發(fā)公鑰證書。CA按照上級(jí)PCA制定的政策,為具體用戶簽發(fā)、生成并發(fā)布數(shù)字證書,負(fù)責(zé)CRL的管理與維護(hù)。RA負(fù)責(zé)接收用戶的證書申請(qǐng),驗(yàn)證用戶的身份,向CA提交證書申請(qǐng),驗(yàn)證接收CA簽發(fā)的數(shù)字證書,并將證書發(fā)放給申請(qǐng)者。PKI的組成

29、圖示如下:PCA1RA1PAAPCAnRAnCAnRAnRA1CAnCA1CA1圖10 PKI的體系結(jié)構(gòu)圖2PKI的操作功能證書的生成及分發(fā)。在用戶向RA提交數(shù)字證書申請(qǐng)后,RA負(fù)責(zé)對(duì)申請(qǐng)者的身份進(jìn)行認(rèn)證,認(rèn)證通過(guò)后RA將向CA轉(zhuǎn)發(fā)證書申請(qǐng)。CA負(fù)責(zé)生成用戶的數(shù)字證書,數(shù)字證書的公私密鑰對(duì)可以由用戶產(chǎn)生,也可以由CA產(chǎn)生。用戶自己產(chǎn)生的公鑰需提交給CA,CA對(duì)公鑰強(qiáng)度驗(yàn)證后將根據(jù)用戶提交的公鑰產(chǎn)生用戶的數(shù)字證書;如果是CA產(chǎn)生用戶的公私密鑰對(duì),則CA不保存用戶的私鑰,私鑰需通過(guò)安全的方式發(fā)放給用戶。CA生成證書后將其發(fā)布到相應(yīng)的目錄服務(wù)器上。證書的獲取。在PKI體系中,要獲取某個(gè)用戶的數(shù)字證書

30、,可以RA處獲得,也可以查詢CA的證書目錄服務(wù)器,另外用戶也可以將自己的證書發(fā)送給別人。證書的廢止。數(shù)字證書的持證人如果發(fā)生證書丟失、密鑰泄漏時(shí),持證人可以向CA或RA提交證書廢止請(qǐng)求,CA將會(huì)把用戶的證書加入到廢止列表中。廢止列表CRL的獲取與查詢。由于CRL通常都比較大,在線查詢效率比較低下,所以現(xiàn)在通常在RA端建立一個(gè)CRL的鏡像,定期將CA端的CRL同步到本地,同步又分全部CRL同步和增量同步兩種,全部CRL同步的好處能保證CRL數(shù)據(jù)一致,缺點(diǎn)是同步的數(shù)據(jù)量龐大,通常也沒(méi)有必要進(jìn)行全局同步。增量同步就是每次只同步CA端新增的CRL部分,增量同步的數(shù)據(jù)量較小,比較符合現(xiàn)實(shí)。CRL的查詢可

31、以通過(guò)LDAP等訪問(wèn)。證書恢復(fù)。證書恢復(fù)功能為客戶在證書存儲(chǔ)介質(zhì)損壞或遺忘口令等情況下,提供原證書的恢復(fù),申請(qǐng)者向RA或CA提出證書恢復(fù)請(qǐng)求,CA將會(huì)為用戶生成新的數(shù)字證書,原來(lái)的證書將作廢,同時(shí)還會(huì)將其加入CRL中。證書更新。證書更新用于解決客戶證書到期后的續(xù)費(fèi)問(wèn)題,也有可能是客戶的證書并未到達(dá)有效期而是CA或RA的本身的數(shù)字證書到達(dá)了有效期。這時(shí)用戶需更新證書,CA將會(huì)為用戶簽發(fā)新的數(shù)字證書。3PKI的服務(wù)功能PKI提供的服務(wù)功能包括:數(shù)據(jù)保密性服務(wù)、數(shù)據(jù)完整性服務(wù)、數(shù)據(jù)真實(shí)性服務(wù)、數(shù)據(jù)不可否認(rèn)性服務(wù)和身份認(rèn)證服務(wù)。這些服務(wù)都是通過(guò)數(shù)字證書的應(yīng)用來(lái)實(shí)現(xiàn)的,在集成這些服務(wù)時(shí),還需要應(yīng)用系統(tǒng)作

32、部分支持才能真正實(shí)現(xiàn)這些服務(wù)。3.1.3 一次性口令技術(shù)所謂一次性口令(OTP,One Time Password)是指針對(duì)傳統(tǒng)可重復(fù)使用的口令而言的。一次性口令只能使用一次,不可重復(fù)使用??芍赜玫目诹钜资芊N種攻擊:截取攻擊:當(dāng)口令以明文方式在網(wǎng)絡(luò)上傳遞時(shí),容易被攻擊者截取獲得,一旦口令泄漏則可能被未授權(quán)者非法使用。重放攻擊:當(dāng)口令以密文方式在網(wǎng)絡(luò)上傳遞時(shí),雖然攻擊者無(wú)法獲取口令的明文,但攻擊者可以截取口令密文后對(duì)系統(tǒng)實(shí)施重放攻擊。窮舉攻擊:攻擊者還有可能針對(duì)用戶的登錄名,根據(jù)系統(tǒng)對(duì)口令的限定規(guī)則,嘗試規(guī)則范圍內(nèi)各個(gè)可能的口令,對(duì)用戶口令實(shí)施窮舉攻擊。窺探:用戶在輸入可重復(fù)使用的口令時(shí)必然要借

33、助某種輸入設(shè)備,如鍵盤、鼠標(biāo)、手寫筆等,這時(shí)容易被他人或其它錄影設(shè)備窺探到輸入內(nèi)容,也有可能被木馬程序等記錄了擊鍵事件而分析出口令。社交工程:攻擊者通過(guò)利用人們心理弱點(diǎn)、本能反應(yīng)、好奇心、信任、貪婪等心理陷阱通過(guò)電子郵件、電話訪談、釣魚網(wǎng)站等騙取用戶的口令。垃圾搜索:攻擊者偽裝成垃圾工人收集用戶的垃圾文檔用以分析用戶的口令等。一次口令由于每次使用各不相同的口令,所以并不存在上述的問(wèn)題。一次口令并不要求用戶記住多個(gè)口令,所以也不會(huì)增加用戶和系統(tǒng)的負(fù)擔(dān)。一次性口令的原理:在客戶端和服務(wù)器端各存在一個(gè)相同的算法、一個(gè)與用戶有關(guān)的種子、一個(gè)不確定的因子,每次系統(tǒng)對(duì)用戶進(jìn)行認(rèn)證時(shí),用戶將不確定的因子追加

34、到種子后,然后用算法對(duì)其加密算出一個(gè)結(jié)果,這個(gè)結(jié)果作為一個(gè)一次性口令提交給服務(wù)器,服務(wù)器端用相同的算法對(duì)相同種子和不確定因子進(jìn)行運(yùn)算,將得出的結(jié)果與用戶提交的結(jié)果進(jìn)行比較,相同則說(shuō)明用戶輸入的口令是正確的。一次性口令技術(shù)要求服務(wù)器端具有與用戶端相同的算法、種子及不確定因子。這里關(guān)鍵是如何保證客戶端、服務(wù)器端具有相同的不確定因子。兩端不確定因子的選擇方式主要有以下三種:1挑戰(zhàn)應(yīng)答方式。每次用戶請(qǐng)求登錄系統(tǒng)時(shí),服務(wù)器端將不確定因子發(fā)送給用戶,稱為一次挑戰(zhàn),而用戶提交的口令是根據(jù)發(fā)送來(lái)的不確定因子,和用戶端保存的種子,由用戶端保存的算法計(jì)算出來(lái)的,所以每次計(jì)算出的口令不相同。這里的算法可以采用單向散

35、列函數(shù)算法,也可以采用對(duì)稱加密算法。不確定因子采用挑戰(zhàn)應(yīng)答方式的原理可以圖示如下:返回登錄結(jié)果運(yùn)用算法對(duì)種子和因子進(jìn)行運(yùn)算得出登錄口令并提交發(fā)送不確定因子請(qǐng)求登錄,輸入用戶名用 戶系 統(tǒng)圖11 一次性口令應(yīng)用的原理圖2時(shí)間同步方式??蛻舳撕头?wù)器端以時(shí)間作為不確定因子,這里要求雙方的時(shí)間是嚴(yán)格同步的,精確度可以控制在約定的范圍內(nèi),比如說(shuō)雙方的時(shí)間差不超過(guò)一分鐘。3事件同步方式??蛻舳撕头?wù)器端以單向序列的迭代值作為不確定因子,這里要求雙方每次迭代值的大小相同。這種方式的實(shí)現(xiàn)代價(jià)比時(shí)間同步方式的小得多,而且也不用向挑戰(zhàn)應(yīng)答方式那樣多出個(gè)挑戰(zhàn)的交互,這種方式客戶端以單向迭代作為挑戰(zhàn),迭代作為規(guī)則可

36、以在客戶端實(shí)現(xiàn)。3.1.3 基于J2EE平臺(tái)的相關(guān)安全技術(shù)1語(yǔ)言內(nèi)置的安全技術(shù)Java語(yǔ)言具有強(qiáng)類型檢查,在編譯時(shí)就能對(duì)變量類型進(jìn)行檢查;自動(dòng)內(nèi)存管理,在C、C+中內(nèi)存的分配和回收都需要程序員負(fù)責(zé)完成,在大型應(yīng)用中內(nèi)存泄漏是個(gè)頗為棘手的問(wèn)題,而Java內(nèi)置垃圾回收機(jī)制,由系統(tǒng)負(fù)責(zé)內(nèi)存的管理;字節(jié)碼檢查,JVM(Java Virtual Machine)對(duì)源代碼編譯生成的字節(jié)碼進(jìn)行檢查,防止惡意代碼對(duì)運(yùn)行環(huán)境的破壞;安全的類裝載機(jī)制,確保不信任的代碼不會(huì)影響其它Java程序的運(yùn)行。2密碼技術(shù)支持JCA(Java Cryptography Architecture)和JCE(Java Crypto

37、graphic Extension)為加密、解密、數(shù)字證書、數(shù)據(jù)摘要提供完整的支持;提供對(duì)各種密碼算法的支持,包括RSA、DSA、DES、SHA等;提供對(duì)PKCS#11的支持。3認(rèn)證和訪問(wèn)控制支持JAAS(Java Authentication and Authorization Service)和Policy的實(shí)現(xiàn)及語(yǔ)法等提供了細(xì)粒度的訪問(wèn)控制,抽象的認(rèn)證APIs可以插件方式靈活地集成到其它登錄控制系統(tǒng)中。4安全通訊Java Secure Socket Extension (JSSE),Java GSS-API (JGSS),Java Simple Authentication and Se

38、curity Layer API(SASL)等提供對(duì)Transport Layer Security (TLS)、SSL、Kerberos、SASL等協(xié)議的實(shí)現(xiàn),提供對(duì)基于SSL/TLS的HTTPS完全支持,為的數(shù)據(jù)完整性、保密性提供支持確保通訊安全。5為PKI提供支持J2EE提供管理密鑰和證書的工具,廣泛抽象的APIs對(duì)X.509證書、廢止列表、證書路徑、OCSP (On-Line Certificate Status Protocol)、PKCS#11、PKCS#12、LDAP等提供支持,大大簡(jiǎn)化了PKI應(yīng)用開發(fā)和部署的難度3。3.2 網(wǎng)絡(luò)總體結(jié)構(gòu)應(yīng)用系統(tǒng)的總體拓?fù)鋱D參考如下示:圖12 應(yīng)

39、用系統(tǒng)的總體拓?fù)鋱D參考用戶通過(guò)Internet網(wǎng)絡(luò)向應(yīng)用系統(tǒng)發(fā)起請(qǐng)求,請(qǐng)求在到達(dá)Web服務(wù)器之前將通過(guò)NSAE(使用兩臺(tái)帶SSL加速卡的SSL安全網(wǎng)關(guān)服務(wù)器,并配置為熱備部署模式)建立128位SSL加密通信通道。系統(tǒng)應(yīng)用服務(wù)器通過(guò)有NSAE經(jīng)由Web服務(wù)器傳過(guò)來(lái)的Request對(duì)象獲取客戶端證書(如果客戶端采用數(shù)字證書認(rèn)證的話)。在登錄環(huán)節(jié),系統(tǒng)應(yīng)用服務(wù)器通過(guò)身份認(rèn)證及簽名驗(yàn)證服務(wù)器(NetSign Server)所提供的API驗(yàn)證用戶證書有效性并完成登錄。在交易過(guò)程中需要對(duì)交易簽名時(shí),通過(guò)客戶端簽名控件對(duì)頁(yè)面信息進(jìn)行簽名,簽名結(jié)果信息及原始信息傳遞至應(yīng)用服務(wù)器后,通過(guò)簽名驗(yàn)證服務(wù)器(NetS

40、ign Server)提供的API將簽名結(jié)果和原始信息以及客戶端證書傳至簽名驗(yàn)證服務(wù)器進(jìn)行驗(yàn)證。一次性口令的驗(yàn)證由系統(tǒng)應(yīng)用程序調(diào)用動(dòng)態(tài)密碼系統(tǒng)的服務(wù)適配器,由動(dòng)態(tài)密碼服務(wù)器完成驗(yàn)證并返回結(jié)果。短信密碼的發(fā)送,由動(dòng)態(tài)密碼服務(wù)器向的短信網(wǎng)關(guān)SMS Gateway發(fā)送請(qǐng)求實(shí)現(xiàn)。3.3 網(wǎng)絡(luò)層方案選擇3.3.1 安全連接協(xié)議系統(tǒng)客戶端至服務(wù)器端的安全連接常見(jiàn)的協(xié)議有SSL、SPKM可供選擇4。SPKM(Simple Public Key Mechanism)協(xié)議,用于建立點(diǎn)對(duì)點(diǎn)之間的安全通道,結(jié)合數(shù)字證書主要適用于內(nèi)聯(lián)網(wǎng)環(huán)境,在運(yùn)用于互聯(lián)網(wǎng)時(shí)有如下問(wèn)題5:1因客戶端在跟服務(wù)器端建立連接時(shí)需要訪問(wèn)CRL

41、,而SPKM協(xié)議固有的原因會(huì)造成客戶端對(duì)廢止列表訪問(wèn)的時(shí)間過(guò)長(zhǎng)。2SPKM協(xié)議在客戶端對(duì)整個(gè)頁(yè)面進(jìn)行數(shù)字簽名也是沒(méi)有必要的,并不是用戶提交的所有頁(yè)面都需要數(shù)字簽名的,而且就算某個(gè)頁(yè)面需要數(shù)字簽名通常也不是頁(yè)面中所有的元素都是需要數(shù)字簽名的。比如對(duì)于行外轉(zhuǎn)賬交易而言,收款人姓名、收款人賬號(hào)、收款人開戶行、轉(zhuǎn)賬金額、付款人賬號(hào)是其五要素,客戶在提交轉(zhuǎn)賬交易時(shí)只需對(duì)這五要素進(jìn)行數(shù)字簽名就可以了,而頁(yè)面上還有一些諸如是否發(fā)送Email通知等要素就沒(méi)必再被簽名了。超出需求的要素被簽名,一方面將會(huì)增加網(wǎng)絡(luò)流量,同時(shí)還會(huì)導(dǎo)致服務(wù)器相應(yīng)的遲滯。3由于SPKM協(xié)議并非普遍采用的安全通訊協(xié)議,因此在通用的瀏覽器如

42、IE、Navigator等中沒(méi)有支持,需要下載安裝客戶端軟件,這就增加了系統(tǒng)安裝、維護(hù)、使用的難度。SSL(Security Socket Layer)協(xié)議已得到各主流瀏覽器內(nèi)置的支持。由于標(biāo)準(zhǔn)的SSL協(xié)議,在采用客戶端證書時(shí),并未對(duì)用戶的交易數(shù)據(jù)進(jìn)行顯式簽名,造成應(yīng)用系統(tǒng)無(wú)法記錄交易數(shù)據(jù)的數(shù)字簽名,給在技術(shù)層面維護(hù)交易的不可否認(rèn)性帶來(lái)了一定的困難6。在應(yīng)用系統(tǒng)中我們采用SSL協(xié)議來(lái)建立安全連接。SSL協(xié)議簽名的問(wèn)題可通過(guò)在客戶瀏覽器端安裝簽名控件來(lái)完成,簽名控件一方面可以完成數(shù)字簽名,另一方面,通過(guò)自定義簽名格式,只對(duì)需要的頁(yè)面要素進(jìn)行簽名,去除不必要的數(shù)據(jù)被簽名。3.3.2 安全區(qū)域的劃分

43、通過(guò)三臺(tái)防火墻將網(wǎng)絡(luò)劃分為四個(gè)邏輯區(qū)域,按由外到內(nèi)的順序部署。第一道防火墻之外是Internet區(qū)(非授信區(qū));第一道防火墻和第二道防火墻之間是Web區(qū),在此區(qū)域中部署SSL服務(wù)器以及應(yīng)用系統(tǒng)和網(wǎng)站系統(tǒng)的Web服務(wù)器等其它第三方應(yīng)用系統(tǒng);第二道防火墻和第三道防火墻之間是系統(tǒng)及網(wǎng)站的應(yīng)用/DB區(qū),在此區(qū)域中部署應(yīng)用服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器;第三道防火墻之后為其它的核心系統(tǒng)、中間業(yè)務(wù)平臺(tái)等第三方業(yè)務(wù)系統(tǒng)。3.3.2 網(wǎng)絡(luò)層安全組件應(yīng)用系統(tǒng)的最外端部署了綠盟黑洞抗DoS攻擊系統(tǒng)COLLAPSAR600D-5-B,以控制拒絕式攻擊和分布式拒絕攻擊;防火墻采用的是天融信防火墻產(chǎn)品NGFW4000-G,入侵檢

44、測(cè)則采用的是啟明入侵檢測(cè)NS500系統(tǒng),漏洞掃描軟件采用的是冠群金辰承影網(wǎng)絡(luò)漏洞掃描器,原有系統(tǒng)被兩道防火墻分隔成三個(gè)區(qū)。系統(tǒng)部署時(shí)要求在停火區(qū)中再增加一道防火墻,一方面隔離Web服務(wù)器與應(yīng)用服務(wù)器;另一方面隔離應(yīng)用服務(wù)器和其它核心系統(tǒng)。增加的防火墻依然采用的是天融信NGFW4000-G防火墻,此外還增加了兩臺(tái)IBM TotalStorage SAN 16M-2的交換機(jī),一套啟明NS500系統(tǒng)。3.4 系統(tǒng)層方案選擇系統(tǒng)Web服務(wù)器的操作系統(tǒng)采用SUSE Linux 9 Enterprise,應(yīng)用服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器的操作系統(tǒng)采用AIX5L,V5.3,數(shù)據(jù)庫(kù)管理系統(tǒng)采用Oracle 10.0.

45、2 FOR AIX。由于軟件系統(tǒng)通常都存在漏洞,操作系統(tǒng)也不例外,無(wú)論是Unix、Linux還是Windows系統(tǒng)。操作系統(tǒng)要求定期安裝系統(tǒng)的最新補(bǔ)丁,并定期對(duì)審計(jì)日志進(jìn)行檢查和備份。另外,UNIX、Linux、NT系統(tǒng)一般包含許多網(wǎng)絡(luò)服務(wù)應(yīng)用程序,如FTP、Telnet等,有些不必要的網(wǎng)絡(luò)服務(wù)程序必須禁用并關(guān)閉對(duì)應(yīng)的端口。3.5 應(yīng)用層方案選擇3.5.1 數(shù)字證書國(guó)外比較著名的數(shù)字證書有:Verisign、Etrust、Baltimore等;國(guó)內(nèi)應(yīng)用比較廣泛的數(shù)字證書主要有中國(guó)金融認(rèn)證中心CFCA的數(shù)字證書、上海數(shù)字證書認(rèn)證中心SHECA的證書等;另外有些實(shí)體建設(shè)了自己的CA,向本實(shí)體內(nèi)的系

46、統(tǒng)及其客戶發(fā)放數(shù)字證書。對(duì)比分析上述的幾家認(rèn)證中心的數(shù)字證書的優(yōu)缺點(diǎn)將有助于安全子系統(tǒng)的數(shù)字證書的選擇。下表是比較結(jié)果:表8 認(rèn)證中心比較的表格方案優(yōu)點(diǎn)缺點(diǎn)CFCA良好的公信力,是金融領(lǐng)域CA的權(quán)威高級(jí)證書費(fèi)用較高,但可采用普通證書。VeriSign國(guó)際的發(fā)證權(quán)威機(jī)構(gòu)國(guó)外機(jī)構(gòu),發(fā)證手續(xù)麻煩,費(fèi)用也不低。自建CA發(fā)證成本較低仍需購(gòu)買發(fā)證軟件;銀行不具備管理CA的專長(zhǎng)(大量的管理工作);法律問(wèn)題(非授信第三方)等等。3.5.2 動(dòng)態(tài)密碼輔助解決方案動(dòng)態(tài)密碼方案是以一次性口令技術(shù)為基礎(chǔ)的,目前成熟的產(chǎn)品主要有智能卡、刮刮卡、動(dòng)態(tài)短信系統(tǒng)等,產(chǎn)品供應(yīng)商主要有RSA、Todos等。應(yīng)用系統(tǒng)可采用動(dòng)態(tài)密碼

47、系統(tǒng)作為身份認(rèn)證的輔助解決方案,Todos動(dòng)態(tài)密碼系統(tǒng)可以采用手機(jī)短信的方式向客戶端發(fā)送一次性口令,客戶端僅需有一臺(tái)可以接受短信的手機(jī)就可以了,這種方案客戶端幾乎沒(méi)有投入成本,造價(jià)也相對(duì)低廉,安全性強(qiáng)。除手機(jī)短信方式,動(dòng)態(tài)密碼系統(tǒng)還有以下幾種客戶端的終端可供選擇:智能卡,以IC卡為載體,IC卡的內(nèi)置芯片實(shí)現(xiàn)某個(gè)密碼算法,卡內(nèi)同時(shí)儲(chǔ)存了用戶的種子,每次按某種序列計(jì)算出不確定因子。智能卡通常還有個(gè)啟動(dòng)PIN碼,提供對(duì)智能卡持有人的認(rèn)證,加強(qiáng)智能卡的安全性。智能卡具有攜帶方便,保密性好,即使卡遺失也不怕被他人利用等優(yōu)點(diǎn),缺點(diǎn)就是成本相對(duì)較高。刮刮卡,就是通過(guò)一次性口令技術(shù)事先算出一次性口令的子集或全

48、集,將這些口令印制在一張卡片上,再在每個(gè)口令上涂蓋上防讀層,以后每次使用時(shí)按系統(tǒng)提示刮開相應(yīng)位置的涂層,便得到當(dāng)次的口令,這種卡便稱為刮刮卡。刮刮卡具有成本低,使用方便的優(yōu)點(diǎn),安全性要比智能卡的低,一旦遺失有可能被他人利用。動(dòng)態(tài)密碼系統(tǒng)的采用一方面加強(qiáng)了應(yīng)用系統(tǒng)的安全性,另一方面也增加了客戶選擇認(rèn)證措施的余地。3.6 系統(tǒng)運(yùn)行環(huán)境3.6.1 硬件配置Web主機(jī)表9 Web主機(jī)的配置表型號(hào)數(shù)量配置備注Openpower710 1G,1 CPU, SUSE 91HD 2*73Gweb server 1 門戶用Openpower710 1G,1 CPU, SUSE 91HD 2*73Gweb ser

49、ver 2 門戶用Openpower710 1G,1 CPU, SUSE 91HD 2*73Gweb server 3 應(yīng)用用Openpower710 1G,1 CPU, SUSE 91HD 2*73Gweb server 4 應(yīng)用用NSAE表10 NSAE加速卡的配置表型號(hào)數(shù)量配置備注InfoSec NSAE 加速卡版1HD 2*73GInfoSec NSAE 加速卡版1HD 2*73G應(yīng)用主機(jī)和數(shù)據(jù)庫(kù)主機(jī)表11 應(yīng)用主機(jī)和數(shù)據(jù)庫(kù)主機(jī)的配置表型號(hào)數(shù)量配置備注P550 4G 2CPU, AIX5.3L1HD 2*73GP550 4G 2CPU, AIX5.3L1HD 2*73GNETSIGN表

50、12 數(shù)字簽名驗(yàn)證設(shè)備的配置表型號(hào)數(shù)量配置備注InfoSec NETSIGN1HD 2*73GSAN SWITH表13 交換機(jī)的配置表型號(hào)數(shù)量配置備注IBM TotalStorage SAN 16M-228口磁盤陣列表14 磁盤陣列的配置表型號(hào)數(shù)量配置備注DS43001HD 8*73G7+1 冗余 RAID53.6.2 軟件配置Web服務(wù)器表15 Web服務(wù)器的配置表型號(hào)數(shù)量備注IBM HTTP SERVER 6.0 1CFCA RA1Dynamic Password Server1應(yīng)用服務(wù)器表16 應(yīng)用服務(wù)器的配置表型號(hào)數(shù)量備注IBM WebSphere 6.0.2 ND1數(shù)據(jù)庫(kù)服務(wù)器表17

51、 數(shù)據(jù)庫(kù)服務(wù)器的配置表型號(hào)數(shù)量備注Oracle 10.0.2 FOR AIX1雙機(jī)熱備軟件表18 雙機(jī)熱備軟件的配置表型號(hào)數(shù)量備注HACMP 5.3 FOR AIX 5.31附錄資料:web前端面試題1. W3C標(biāo)準(zhǔn)有哪些?W3C推行的主要規(guī)范有HTML,CSS,XML,XHTML和DOM(Document Object Model)。2. 談?wù)凧s的內(nèi)存泄露問(wèn)題。3. 談?wù)剬?duì)Html 5的了解。4. 談?wù)剬?duì)CSS 3的了解。5. 用js實(shí)現(xiàn)隨即選取10-100之間的10個(gè)數(shù)字,存入一個(gè)數(shù)組,并排序。var iArray = ;funtion getRandom(istart, iend) v

52、ar iChoice = istart - iend +1; return Math.floor(Math.random() * iChoice + istart;for(var i=0; i10; i+) iArray.push(getRandom(10,100);iArray.sort();6. 把兩個(gè)數(shù)組合并,并刪除第二個(gè)元素。var array1 = a,b,c;var bArray = d,e,f;var cArray = array1.concat(bArray);cArray.splice(1,1);7. Js面向?qū)ο蟮膸追N方式。8. 請(qǐng)談?wù)勗头绞綐?gòu)造對(duì)象的特點(diǎn)。9. 在Css

53、中那個(gè)屬性會(huì)影響dom讀取文檔流的順序。答: float屬性。10. 請(qǐng)介紹幾種用div實(shí)現(xiàn)兩列布局的方案(兼容),另外要考慮文檔流的加載。11. 談?wù)刢ss在瀏覽器中的兼容問(wèn)題,詳細(xì)談?wù)処E6的一些bug,以及解決方案。12. 談?wù)勀銓?duì)閉包的理解。以及如何實(shí)現(xiàn)js方法的重寫。HTML & CSS1.Doctype? 嚴(yán)格模式與混雜模式-如何觸發(fā)這兩種模式,區(qū)分它們有何意義? 首先我講講如何觸發(fā)兩種模式: 加入xml頭部聲明可以觸發(fā)IE瀏覽器的Quirks mode,觸發(fā)之后,瀏覽器解析方式就和IE5.5一樣,擁有IE5.5一樣的bug和其他問(wèn)題,行為(Javascript)也是如此。 IE6

54、的觸發(fā) 在XHTML的DOCTYPE前加入XML聲明 IE7的觸發(fā) 在XML聲明和XHTML的DOCTYPE之間加入HTML注釋 IE6和IE7都可以觸發(fā)的 在HTML4.01的DOCTYPE文檔頭部加入HTML注釋 其次是這樣的意義 各個(gè)瀏覽器的混雜模式,基本就是各個(gè)瀏覽器的私有模式,不相互兼容。所以,除非是為了兼容的問(wèn)題,比如你不想修改很久很久以前做的IE ONLY的網(wǎng)頁(yè),否則刻意觸發(fā)混雜模式?jīng)]有任何意義。2:行內(nèi)元素有哪些?塊級(jí)元素有哪些?CSS的盒模型?一.行內(nèi)元素和塊級(jí)元素有哪些?塊級(jí)元素information on authorlong quotationpush buttonta

55、ble captiondefinition descriptiondeleted textgeneric language/style containerdefinition listdefinition termform control groupinteractive formheadingheadingheadingheadingheadingheadinghorizontal ruleinline subwindowinserted textfieldset legendlist itemclient-side image mapalternate content container

56、for non frame-based renderingalternate content container for non script-based renderinggeneric embedded objectordered listparagraphpreformatted texttabletable bodytable data celltable footertable header celltable headertable rowunordered list行內(nèi)元素anchorabbreviated formacronymbold text styleI18N BiDi

57、over-ridelarge text styleforced line breakpush buttoncitationcomputer code fragmentdeleted textinstance definitionemphasisitalic text styleinline subwindowEmbedded imageform controlinserted texttext to be entered by the userform field label textclient-side image mapgeneric embedded objectshort inlin

58、e quotationsample program output, scripts, etc.option selectorsmall text stylegeneric language/style containerstrong emphasissubscriptsuperscriptmulti-line text fieldteletype or monospaced text styleinstance of a variable or program argument二.行內(nèi)元素與塊級(jí)元素有什么不同?1.尺寸-塊級(jí)元素和行內(nèi)元素之間的一個(gè)重要的不同點(diǎn)行內(nèi)元素和widthW3C CSS

59、2 標(biāo)準(zhǔn)規(guī)定行內(nèi)元素、非置換元素不會(huì)應(yīng)用width屬性。以下例子中,對(duì)行內(nèi)元素應(yīng)用了width:200px,你可以看到,根本就沒(méi)有什么效果。行內(nèi)元素和heightW3C CSS2 標(biāo)準(zhǔn)規(guī)定行內(nèi)元素、非置換元素不會(huì)應(yīng)用height屬性,但是盒子高度可以通過(guò)line-height來(lái)指定。以下例子,對(duì)行內(nèi)元素應(yīng)用了height:50px,你可以看到什么效果都沒(méi)。行內(nèi)元素和padding你可以給行內(nèi)元素設(shè)置padding,但只有padding-left和padding-right生效。以下例子,行內(nèi)元素應(yīng)用了padding:50px。你可以看到對(duì)左右的內(nèi)容有影響,但是對(duì)上下沒(méi)影響。行內(nèi)元素和margi

60、ngmargin屬性也是和padding屬性一樣,對(duì)行內(nèi)元素左右有效,上下無(wú)效。下面的例子,對(duì)應(yīng)用了margin:50px,你可以看到左右邊緣是生效了但是內(nèi)容上下卻沒(méi)有。記住對(duì)行內(nèi)元素設(shè)置寬度width 無(wú)效。設(shè)置高度height 無(wú)效,可以通過(guò)line-height來(lái)設(shè)置。設(shè)置margin 只有左右margin有效,上下無(wú)效。設(shè)置padding 只有左右padding有效,上下則無(wú)效。注意元素范圍是增大了,但是對(duì)元素周圍的內(nèi)容是沒(méi)影響的,看圖上效果就知道了 盒子模型W3C 組織建議把所有網(wǎng)頁(yè)上的對(duì)像都放在一個(gè)盒(box)中,設(shè)計(jì)師可以通過(guò)創(chuàng)建定義來(lái)控制這個(gè)盒的屬性,這些對(duì)像包括段落、列表、標(biāo)

溫馨提示

  • 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)論