版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 第9章 Web Security 目前,所有的工商企業(yè)、大多數(shù)政府機(jī)構(gòu)以及許許多多的個(gè)人都建起了自己的網(wǎng)站,這些網(wǎng)站都可以通過互聯(lián)網(wǎng)進(jìn)行訪問。企業(yè)對利用網(wǎng)絡(luò)開展電子商務(wù)情有獨(dú)鐘。但現(xiàn)實(shí)是互聯(lián)網(wǎng)與Web服務(wù)對于各種攻擊非常脆弱。伴隨著企業(yè)對這種安全現(xiàn)實(shí)的蘇醒與擔(dān)憂,對于Web安全的需求則迅速擴(kuò)張。Web安全可以隨便寫一本書,本章只討論Web安全的一般要求,重點(diǎn)講述web security協(xié)議族:SSL協(xié)議(SSLV2、SSLV3)、TLS協(xié)議和SET協(xié)議。Web Security 第1節(jié) Web 安全考慮 第2節(jié) SSL第3節(jié) SET小結(jié) 本章介紹了Web安全需要考慮的一些問題,介紹了這些問題
2、的解決方案,主要介紹了SSL協(xié)議與SET協(xié)議。講述了SSL協(xié)議的細(xì)節(jié),講述了SET協(xié)議的交易過程。這里還有許多可以改進(jìn)的地方,需要增加銀行處理的圖,對講解順序進(jìn)行重新組織??梢钥紤]直接從現(xiàn)實(shí)的處理過程講解。思考題 (1) 基于本章所學(xué)習(xí)的內(nèi)容,在SSL協(xié)議中,接收者能不能記錄下按不正常順序到達(dá)的記錄包?如果可以,解釋需要怎樣做。如果不可以,請解釋為什么? (2) 你認(rèn)為SET協(xié)議與SSL協(xié)議,還有沒有安全漏洞?如有,試提出一種彌補(bǔ)方法。結(jié)束語 到此為止本門課程結(jié)束了,感謝大家的配合我們在一起度過了愉快的一學(xué)期。你們也即將畢業(yè)走向工作崗位了。祝你們都能夠找一個(gè)理想的工作。希望你們通過自己的努力能
3、夠成為科學(xué)的巨匠、祖國的棟梁。希望你們中間能夠涌現(xiàn)出一批政治家、科學(xué)家、企業(yè)家。好像早上8、9點(diǎn)鐘的太陽,希望寄托在你們身上。茍富貴,勿相忘。今后無論你們在工作還是學(xué)習(xí)中有需要我?guī)椭脑?,我一定竭盡全力。同學(xué)們,再見!第1節(jié) Web Security Considerations www基本上是一種運(yùn)行在互聯(lián)網(wǎng)或者TCP/IP內(nèi)部網(wǎng)絡(luò)中的B/S應(yīng)用。所有的安全措施都與Web Security相關(guān),但Web對網(wǎng)絡(luò)安全提出了一些新的挑戰(zhàn)。比如: (1) 互聯(lián)網(wǎng)是雙向的,因此運(yùn)行在互聯(lián)網(wǎng)上的Web服務(wù)器易于受到攻擊; (2) Web已經(jīng)成為展示公司與產(chǎn)品窗口,成為公司對外交流的出口,成為進(jìn)行交易的支
4、承平臺(tái)。如果Web收到破壞將會(huì)造成財(cái)產(chǎn)的損失和聲譽(yù)下降。Web Security Considerations (3) Web服務(wù)器可以作為進(jìn)入公司內(nèi)部復(fù)雜的計(jì)算機(jī)系統(tǒng)的跳板,一旦Web服務(wù)器被攻破,攻擊者就可以訪問與服務(wù)器相連的數(shù)據(jù)與系統(tǒng)。 (4) 未經(jīng)過訓(xùn)練的、粗心大意的用戶一般是Web服務(wù)的主要用戶。這些用戶沒有必要的安全意識,意識不到可能存在的安全風(fēng)險(xiǎn),也沒有采取有效應(yīng)對措施所需要的工具和知識。Web 安全威脅 完整性修改用戶數(shù)據(jù)、特洛伊木馬瀏覽器、修改存儲(chǔ)、修改傳輸?shù)男畔⒘髁棵艽a學(xué)校驗(yàn)機(jī)密性竊聽、盜竊服務(wù)器信息、盜竊用戶數(shù)據(jù)、獲得網(wǎng)絡(luò)配置信息、獲得用戶與服務(wù)器對話信息加密、Web代理
5、拒絕服務(wù)切斷用戶線程、偽造線程淹沒服務(wù)器、占滿磁盤或內(nèi)存、用DNS攻擊孤立服務(wù)器難于防范認(rèn)證冒充合法用戶、偽造數(shù)據(jù)密碼學(xué)技術(shù)Web 安全威脅 Web安全威脅可以有不同的分類,第1種分為主動(dòng)攻擊與被動(dòng)攻擊:被動(dòng)攻擊包括在服務(wù)器與瀏覽器之間搭線竊聽獲得訪問某個(gè)網(wǎng)站的訪問信息,而這個(gè)網(wǎng)站是不允許他們訪問的。主動(dòng)攻擊包括冒充另一個(gè)用戶、修改客戶端和服務(wù)器之間傳遞的信息、修改網(wǎng)站信息等。第2種根據(jù)威脅的位置分為:Web服務(wù)器威脅、Web瀏覽器威脅、瀏覽器與服務(wù)器之間的網(wǎng)絡(luò)流量威脅。 BACK第2節(jié) SSL SSL是Netscape公司設(shè)計(jì)的協(xié)議,該協(xié)議有三個(gè)版本:SSLV1、SSLV2、SSLV3。其中
6、第1個(gè)版本根本就沒有投入使用,Microsoft對V2進(jìn)行了改進(jìn),修補(bǔ)了一些安全漏洞,提出了一個(gè)類似的協(xié)議PCT。后來Netscape對協(xié)議進(jìn)行了徹底的改進(jìn),得到了SSLV3。這是目前應(yīng)用得最廣泛的協(xié)議。TLS則把密鑰擴(kuò)展和認(rèn)證使用的密碼算法結(jié)合在一起,更符合密碼學(xué)家的期望,但SSL和TLS不能互操作。SSLSSL是在用戶級進(jìn)程中運(yùn)行的協(xié)議。SSL/ TLS可以部署在用戶級別的進(jìn)程中,不需要對操作系統(tǒng)進(jìn)行修改,協(xié)議非常簡單,也不需要考慮超時(shí)和丟失數(shù)據(jù)包重傳這類問題。當(dāng)然也可以運(yùn)行在UDP協(xié)議之上,在SSL/TLS內(nèi)部處理超時(shí)和丟失數(shù)據(jù)包重傳問題。 SSL的目的是在TCP協(xié)議提供的可靠的數(shù)據(jù)流服
7、務(wù)的基礎(chǔ)上, SSL把數(shù)據(jù)分割成帶有報(bào)頭和密碼學(xué)保護(hù)的記錄,為應(yīng)用程序提供可靠的、加密的、完整性保護(hù)的數(shù)據(jù)流服務(wù)。SSL協(xié)議的體系結(jié)構(gòu)SSL不是一個(gè)單獨(dú)的協(xié)議,而是包括兩個(gè)協(xié)議層的四個(gè)協(xié)議組成的協(xié)議包,具體情況如圖所示SSL握手協(xié)議 SSL協(xié)議中最重要最復(fù)雜的協(xié)議就是握手協(xié)議。這個(gè)協(xié)議的任務(wù)是使服務(wù)器與客戶能夠互相認(rèn)證,能夠協(xié)商加密算法與MAC算法、協(xié)商加密與在SSL記錄協(xié)議中為保護(hù)發(fā)送數(shù)據(jù)的機(jī)密性所使用的密鑰。在傳送任何數(shù)據(jù)之前,需要先執(zhí)行握手協(xié)議。握手協(xié)議包括服務(wù)器與客戶端之間的一系列信息交換,交換信息的過程如圖所示信息的格式握手協(xié)議有10種信息,所有信息的格式是相同的,格式如下:Type
8、 (1byte)Length(3byte)Content(0byte)分別說明消息的種類(共有10種);消息長度的字節(jié)數(shù);與消息相關(guān)的參數(shù)。SSL握手協(xié)議握手協(xié)議的信息類型信息種類參數(shù)Client_HelloServer_HelloCertificateServer_key_exchangeCertificate_requestServer_doneCerificate_verifyClient_key_exchangeFinished版本號、隨機(jī)數(shù)、會(huì)話ID、密碼套、壓縮方法(For both)X.509證書鏈參數(shù),簽名類型、授權(quán)Null簽名參數(shù),簽名散列值參數(shù)詳情版本號:是用戶可以理解的最
9、高SSL版本號;隨機(jī)數(shù):用戶產(chǎn)生的隨機(jī)數(shù),包括32位的時(shí)標(biāo)和28位的隨機(jī)數(shù);會(huì)話ID:可變長的會(huì)話標(biāo)示符,0表示用戶希望在新的會(huì)話上建立一個(gè)新的連接,非0表示在原有會(huì)話上建立連接;cipher suite以用戶希望的優(yōu)先順序列出用戶可以接受的密碼算法;壓縮方法列出用戶可以支持的壓縮算法列表。握手協(xié)議 握手過程可以分為四個(gè)階段:協(xié)商安全方法(Establish Security Capability)、服務(wù)器認(rèn)證與密鑰交換、客戶認(rèn)證與密鑰交換、完成握手,如下圖所示。 (1)協(xié)商階段: 任務(wù)是初始化邏輯連接,協(xié)商安全方法。協(xié)商客戶由向服務(wù)器發(fā)送Client_ Hello消息而發(fā)起,消息中包含版本號
10、、一個(gè)隨機(jī)數(shù)、一個(gè)會(huì)話ID、密碼套(Cipher Suite)與壓縮方法。其中隨機(jī)數(shù)由32比特的時(shí)標(biāo)與隨機(jī)數(shù)生成器所生成的28字節(jié)的隨機(jī)數(shù)所握手協(xié)議組成,該隨機(jī)數(shù)作為Nonce防止重放攻擊。會(huì)話ID是一個(gè)可變的會(huì)話標(biāo)示符,ID=0表示希望在新的會(huì)話上建立一個(gè)新的連接,ID0表示希望update 連接參數(shù)或在現(xiàn)有會(huì)話上建立一個(gè)新的連接。Cipher Suite 包括客戶端所支持的密碼算法,以及各算法所采用的密鑰交換算法,最優(yōu)先的算法放在最前面。發(fā)出Client_Hello消息后,客戶端等待服務(wù)器的Server_Hello消息。服務(wù)器返回的消息與客戶發(fā)送的消息內(nèi)容相同,但遵循下面的約定:握手協(xié)議版
11、本號中包含用戶建議的較低的版本和服務(wù)器所支持的最高版本,這里的隨機(jī)數(shù)要獨(dú)立于用戶的隨機(jī)數(shù)。如果用戶的會(huì)話ID0,服務(wù)器的會(huì)話ID填相同的值,如果用戶會(huì)話ID=0,服務(wù)器的會(huì)話ID就填一個(gè)新的數(shù),作為新的會(huì)話ID。Cipher Suite 中填上服務(wù)器從用戶建議的加密與壓縮算法中所選擇的加密與壓縮算法。 (2) 對服務(wù)器的認(rèn)證與密鑰交換:如果需要認(rèn)證,服務(wù)器發(fā)送它的證書、密鑰交換信息以及如果需要認(rèn)證用戶時(shí)的發(fā)送證書請求。第2階段握手協(xié)議要發(fā)送的最后一個(gè)消息是Server_done, 是Server_Hello 及有關(guān)消息結(jié)束標(biāo)志。發(fā)出這個(gè)消息后,服務(wù)器等待用戶的響應(yīng)。 (3) 認(rèn)證用戶與密鑰交換
12、:收到Server_done消息后,用戶驗(yàn)證服務(wù)器的證書是否有效、有關(guān)的參數(shù)可否接受。如果一切OK,就返回服務(wù)器一個(gè)消息或多個(gè)消息。如果服務(wù)器請求證書,用戶應(yīng)該返回自己的證書、以及密鑰交換的信息,并附帶上如何驗(yàn)證自己的證書的有關(guān)信息。握手協(xié)議 (4) 完成握手階段:這個(gè)階段完成建立一個(gè)安全連接的任務(wù)。用戶發(fā)送一個(gè)Change_cipher_ spec消息,并將掛起的Cipher Spec復(fù)制到當(dāng)前的Cipher Spec中,接著立即發(fā)送一個(gè)基于協(xié)商的算法、密鑰以及有關(guān)的信息計(jì)算出的Finished 消息,標(biāo)志著從客戶方面,一切OK。服務(wù)器收到這個(gè)消息后也發(fā)送一個(gè)類似的消息,標(biāo)志著服務(wù)器也已經(jīng)做
13、好一切準(zhǔn)備。這樣握手協(xié)議全部完成,可以開始進(jìn)行應(yīng)用層的數(shù)據(jù)交換了。Change Cipher Spec 協(xié)議 這是在SSL協(xié)議中要利用 SSL Record Protocol的三個(gè)協(xié)議之一,也是SSL協(xié)議族中最簡單的協(xié)議,這個(gè)協(xié)議只有一個(gè)消息,只有一個(gè)值1。這個(gè)消息的用途是將掛起狀態(tài)能夠復(fù)制到當(dāng)前狀態(tài),用于更新本次連接所用的Cipher Suite。Alert Protocol Alert協(xié)議向?qū)Φ鹊膶?shí)體傳達(dá)SSL有關(guān)的Alert。本協(xié)議的每個(gè)信息由兩個(gè)字節(jié)組成,第1個(gè)字節(jié)表示消息的嚴(yán)重程度,1表示值得警惕的,2表示致命的。如果安全及別是致命的,SSL就會(huì)立即中斷這個(gè)連接,其它連接則不受影響,
14、但不能在該會(huì)話基礎(chǔ)上建立新的連接。第2個(gè)字節(jié)說明具體的警報(bào)信息。比如是信息完整性錯(cuò)誤,還是信息機(jī)密性錯(cuò)誤等。SSL Record Protocol 記錄協(xié)議是為SSL連接提供服務(wù)的,主要提供下面兩種服務(wù): (1) 利用握手協(xié)議所達(dá)成的算法、密鑰等,用對稱加密算法對SSL的載荷進(jìn)行機(jī)密性保護(hù);(2)利用握手協(xié)議所達(dá)成的密鑰等,生成有關(guān)消息的認(rèn)證碼,提供完整性保護(hù)。SSL記錄協(xié)議的完整過程如下圖所示。用于機(jī)密性保護(hù)的可選算法有IDEA、RC2-40、DES-40、DES、3DES、RC4-40、RC4-128, 用于完整性保護(hù)的算法有SHA-1。SSL記錄協(xié)議的作用SSL的記錄有4種類型:用戶數(shù)據(jù)
15、、握手消息、警告消息和概念、密碼規(guī)格消息?;緟f(xié)議主要是為用戶與服務(wù)器之間通信服務(wù)的。主要是記錄下握手過程中所達(dá)成的各種安全參數(shù),然后當(dāng)正式進(jìn)行數(shù)據(jù)通信時(shí),根據(jù)所協(xié)商的各種算法與參數(shù),進(jìn)行相應(yīng)的操作,為SSL連接提供有關(guān)信息的機(jī)密性與完整性服務(wù)。SSL 接下來還有一些密碼學(xué)計(jì)算,包括如何計(jì)算Master Secret、如何生成有關(guān)的密碼學(xué)參數(shù),因?yàn)檫@些都非常簡單,沒有什么難于理解的,我們就不再講了,有興趣的同學(xué)可以查找有關(guān)的資料看一下,沒有興趣的話,可以到需要的時(shí)候再去查找有關(guān)資料。SSL的會(huì)話重用機(jī)制 有關(guān)SSL的兩個(gè)重要概念是SSL會(huì)話和SSL連接。 會(huì)話:一個(gè)SSL會(huì)話是服務(wù)器和客戶端之
16、間的一次商談并達(dá)成的協(xié)議。會(huì)話是由握手協(xié)議創(chuàng)造的。會(huì)話定義了一系列可以被許多連接所共用的密碼學(xué)安全參數(shù)。避免每次連接都進(jìn)行昂貴的安全參數(shù)的協(xié)商。類似一次商務(wù)談判。 連接:連接是在OSI分層模型中所定義的、提供適當(dāng)服務(wù)的一次傳輸。類似談判過程的一次接觸。連接是一個(gè)對等關(guān)系,連接是變化的,每一個(gè)連接都與一個(gè)會(huì)話相關(guān)聯(lián)。會(huì)話重用機(jī)制 任何兩個(gè)參與實(shí)體之間可能存在多個(gè)安全連接。理論上任何兩個(gè)參與實(shí)體之間也可能同時(shí)存在多個(gè)會(huì)話,但實(shí)際上這個(gè)特性沒有被使用。實(shí)際上有許多狀態(tài)與一個(gè)會(huì)話相關(guān)聯(lián)。一旦一個(gè)會(huì)話建立起來,就存在一個(gè)當(dāng)前的讀和寫的狀態(tài),這個(gè)會(huì)話狀態(tài)結(jié)束,就會(huì)調(diào)用新的會(huì)話狀態(tài)。一個(gè)會(huì)話狀態(tài)包括:會(huì)話標(biāo)
17、示符、Peer Certific-ate、壓縮方法、密碼規(guī)范、主秘密、是否可重用等。一個(gè)連接狀態(tài)包括:服務(wù)器與用戶的隨機(jī)數(shù)、服務(wù)器(用戶)寫MAC秘密、服務(wù)器(用戶)寫密鑰、初始向量、序列號等。SSL的會(huì)話重用機(jī)制 會(huì)話密鑰是用開銷比較大的公開密鑰技術(shù)建立起來的,為了降低開銷,SSL允許在一個(gè)會(huì)話密鑰的基礎(chǔ)上建立多個(gè)連接,這種機(jī)制稱為會(huì)話的重用。這主要是因?yàn)镾SL能夠與HTTP1.0協(xié)議協(xié)同工作,而HTTP 1.0協(xié)議允許在相同的客戶和服務(wù)器之間打開大量的TCP連接。雖然SSL允許會(huì)話重用,但是服務(wù)器上的會(huì)話都是無狀態(tài)的。如果服務(wù)器希望重用會(huì)話,就需要給用戶發(fā)送一個(gè)不保密的ID,并把ID和會(huì)話
18、密鑰存起來。協(xié)議細(xì)節(jié) 如果Alice在消息1中出現(xiàn)了已經(jīng)保存的會(huì)話ID,那么就可以繞過握手過程的公鑰操作部分。只有在Alice和Bob都記住了相同的主密鑰的前提下,這種簡化的握手過程才能繼續(xù)。如果Bob沒有識別出這個(gè)會(huì)話ID,就會(huì)在消息2中返回另一個(gè)ID,或者忽略Alice的消息。沒有先前狀態(tài)下的會(huì)話重用與雙方都記住了ID的情況下的會(huì)話重用情況如下兩圖所示。沒有先前狀態(tài)下的會(huì)話重用雙方都記住了ID的情況下的會(huì)話重用BACK第3節(jié) SET SET 是由Master卡公司與Visa卡公司于1996年設(shè)計(jì)的、用于保護(hù)在互聯(lián)網(wǎng)進(jìn)行的信用卡交易的公開的加密與安全標(biāo)準(zhǔn)規(guī)范。其中IBM、Microsoft、
19、Netscape、RSA、Terisa與Verisign公司都參與了該標(biāo)準(zhǔn)的設(shè)計(jì)工作。SET本身并不是一個(gè)支付系統(tǒng)。而是使用戶能夠在互聯(lián)網(wǎng)上部署現(xiàn)有的信用卡支付基礎(chǔ)設(shè)施的一整套安全協(xié)議與安全格式。本質(zhì)上,SET可提供三種服務(wù):SET 在交易的所有參與方之間提供一個(gè)安全的通信信道;通過應(yīng)用X.509V3證書解決相互之間的信任問題;因?yàn)橹挥性诒匾獣r(shí)和需要的場合,參與者才能獲得有關(guān)的信息,所以保證參與者的隱私。討論SET的最好方式是從SET交易中的SET要求、密鑰特性與參與者開始。對SET的要求 在互聯(lián)網(wǎng)或者其他網(wǎng)絡(luò)中用信用卡進(jìn)行安全支付需要滿足下列商業(yè)的要求: (1) 要保證支付信息的機(jī)密性和訂單
20、信息的機(jī)密性; (2) 要保證所有傳輸數(shù)據(jù)的完整性; (3) 要保證持卡人是信用卡帳戶的合法用戶。這就需要進(jìn)行認(rèn)證。 (4) 保證一個(gè)商戶與金融機(jī)構(gòu)的關(guān)系使它能夠接受信用卡交易。對SET的要求 (5) 運(yùn)用最好的安全技術(shù)與最好的系統(tǒng)設(shè)計(jì)技術(shù),保護(hù)電子商務(wù)交易中的所有合法當(dāng)事人。 (6) 需要開發(fā)一種協(xié)議,該協(xié)議既不依賴于傳輸安全機(jī)制的使用也不影響傳輸安全機(jī)制的使用。 (7) 便于并鼓勵(lì)軟件供應(yīng)商和網(wǎng)絡(luò)服務(wù)商之間的互操作。SET的主要特點(diǎn) (1) 信息的機(jī)密性:即使在網(wǎng)絡(luò)中漫游,持卡人的帳戶信息與支付信息都是保密的,一個(gè)重要的特點(diǎn)是商戶不知道信用卡號,只有發(fā)卡行知道卡號,SET采用DES保證機(jī)密
21、性。 (2) 數(shù)據(jù)的完整性:用RSA數(shù)字簽名、SHA-1散列算法保證數(shù)據(jù)的完整性,確保訂單信息、個(gè)人數(shù)據(jù)、支付指令在傳輸過程中不被修改。 (3) 對持卡人帳戶的認(rèn)證:SET使商戶能夠驗(yàn)證持卡人是有效信用卡帳號的合法用戶。 (4) SET使持卡人能夠驗(yàn)證相應(yīng)的商戶與金融機(jī)構(gòu)有信用卡結(jié)算關(guān)系,能夠接受信用卡付款。SET的當(dāng)事人SET的當(dāng)事人 (1) 持卡人:持信用卡進(jìn)行消費(fèi)的消費(fèi)者。 (2) 商戶:向持卡人提供商品或服務(wù)的個(gè)人或組織。 (3) 發(fā)卡行:為持卡人發(fā)放信用卡的金融機(jī)構(gòu)。 (4) 收款行:商戶開有帳戶、并受理信用卡認(rèn)證與結(jié)算的金融機(jī)構(gòu)。商店通常都可以接受許多種信用卡,但商店并不想與許多發(fā)
22、卡銀行打交道,收款行向商店提供認(rèn)證,保證某個(gè)信用卡是有效的,并且SET的當(dāng)事人其購物金額沒有超過其授信額度。收款行負(fù)責(zé)將購貨資金轉(zhuǎn)移給商店,并向發(fā)卡銀行進(jìn)行索償。 (5) 支付網(wǎng)關(guān):支付網(wǎng)關(guān)是由收款行或者指定的第三方維護(hù)的、處理商戶支付信息的功能設(shè)備。網(wǎng)關(guān)現(xiàn)有銀行卡支付網(wǎng)絡(luò)的中介,負(fù)責(zé)認(rèn)證和支付。 (5) CA: 這是一個(gè)為持卡人、商戶和支付網(wǎng)關(guān)頒發(fā)X.509V3公鑰證書的可信賴的實(shí)體。SET的成敗取決于CA基礎(chǔ)設(shè)施是否可用。一般采用層次型的CA,以避免當(dāng)事人都直接要根CA進(jìn)行發(fā)證。SET交易過程的事件SET的雙簽名 現(xiàn)在我們看一下持信用卡在商店購物的過程,基本上是選擇好貨物之后到商店的結(jié)算柜
23、臺(tái),直接將信用卡交給商店,商店刷卡,我們輸入密碼,完成結(jié)算。這樣商店就會(huì)知道我們的信用卡號碼,甚至能知道我們的密碼,而銀行則知道我們在哪個(gè)商店購物,甚至知道我們買了什么東西。但實(shí)際上只要能夠付款,商店其實(shí)沒有必要知道我們的信用卡號,銀行也沒有必要知道我們在哪里購物,購了什么東西。SET的雙簽名 這是我們所希望的。而SET協(xié)議的設(shè)計(jì)人員注意到這個(gè)問題,并發(fā)明了雙簽名機(jī)制,利用雙簽名機(jī)制很好地解決了這個(gè)問題。雙簽名機(jī)制是SET協(xié)議一個(gè)重要的創(chuàng)新。雙簽名的目的是要把準(zhǔn)備發(fā)送給兩個(gè)接收者的信息連接起來。而且又使得兩個(gè)接收者只能看到自己應(yīng)該看到的信息。有些同學(xué)可能說,那直接把兩個(gè)信息分別發(fā)給這兩個(gè)接收者
24、不就得了?假如這樣的話,大家想一想會(huì)出現(xiàn)什么問題?SET的雙簽名 用戶雖然付過款、并購買貨物,但卻沒有付款與所購貨物綁定的證據(jù)。這樣商店可以不為你的商品質(zhì)量負(fù)責(zé)。因此我們要求用戶必須要能把這兩個(gè)信息關(guān)聯(lián)起來。這就是雙簽名的作用。用戶既獲得了相應(yīng)的隱私保護(hù),也獲得了相應(yīng)的質(zhì)量保證。我們再來看一看連接的必要性,假設(shè)客戶將訂單信息和支付信息都發(fā)給商店,出現(xiàn)的問題就是,一旦以后發(fā)生爭議,用戶拿不出你曾經(jīng)給該商店的并由商店把支付信息轉(zhuǎn)交給銀行的進(jìn)行收款的證據(jù),如果商店能夠SET的雙簽名截獲該客戶的另一個(gè)訂單信息,商店可以說該支付信息支付的是另一個(gè)訂單的貨款,而本次訂單客戶并沒有付款。 下面的圖說明了SE
25、T是如何滿足這個(gè)要求的:用戶首先產(chǎn)生訂單信息和支付信息,分別對支付信息和訂單信息進(jìn)行散列運(yùn)算,得到其散列值H(PI)和H(OI),把這兩個(gè)散列值連接起來,再作一次散列運(yùn)算,最后客戶用自己的私鑰加密連接的散列值,就構(gòu)成了一個(gè)雙簽名,DSCESCH(H(PI)|H(OI)SET的雙簽名SET的雙簽名 假設(shè)商店擁有了雙簽名,OI以及H(PI)。商店根據(jù)用戶的證書也知道用戶的公鑰PC,商店就能夠計(jì)算下面的兩個(gè)數(shù)據(jù) H(H(PI)|H(OI) 與 DPCDS 如果這兩個(gè)數(shù)據(jù)相等,用戶對訂單信息的簽名就得到了驗(yàn)證。類似地,銀行有DS,PI和H(OI)以及用戶的公鑰,銀行就可以計(jì)算 H(H(PI)|H(OI
26、) 與 DPCDS 如果這兩個(gè)數(shù)據(jù)相等,用戶對付款信息的簽名就得到了驗(yàn)證。SET的雙簽名 結(jié)果商店收到了訂單信息,并驗(yàn)證了客戶對訂單信息的簽名;銀行收到了支付信息,并驗(yàn)證了客戶對支付信息的簽名;客戶將訂單信息與支付信息連在了一起,并且以后能證明這種連接。 假設(shè)某個(gè)不誠實(shí)的商店,為了自己的利益,想用其他訂單信息代替本次交易的訂單信息,我們看將會(huì)發(fā)生什么問題?它必須找到另一個(gè)訂單信息,使其散列函數(shù)值與本訂單的散列函數(shù)值相等,而這一點(diǎn)是做不到的。SET支持的交易類型 SET支持多種交易類型,包括Card-holder registration, Merchant registration, Purc
27、hase request, Payment authorization, Payment capture (Allow the merchant to request payment from the payment gate-way), Certificate inquiry and status, Purchase inquiry, Authorization reversal (Allow a merchant to correct previous authorization request), Capture reversalSET支持的交易類型(Allow a merchant t
28、o correct errors in cap-ture request such as transaction amount that were entered incorrectly by a clerk), Credit (Allow a merchant to issue a credit to a cardholders account such as when goods are returned or were damaged during shipping.) Credit reversal, Payment gateway certificate request, Batch
29、 administration, Error message.SET支持的交易類型 其中有三個(gè)是最關(guān)鍵、最重要的交易類型,這包括Purchase request, Payment auth-orization and Payment capture. 我們要對這三者進(jìn)行比較詳細(xì)的討論。要完成一筆交易,客戶首先要上網(wǎng)瀏覽,選擇貨物,下訂單。然后商店要給用戶發(fā)送一個(gè)完整的訂單,詳細(xì)列明用戶購買的貨物名稱、數(shù)量、單價(jià),總值、送貨地點(diǎn)等詳細(xì)信息。這些過程都沒有SET的介入。交易準(zhǔn)備階段購買請求 Purchase Request(購買請求)要交換四條信息,發(fā)起請求、發(fā)起響應(yīng)、購買請求、購買響應(yīng)。 為了給
30、商店發(fā)送SET信息,持卡人必須擁有商店的證書與支付網(wǎng)關(guān)的證書,客戶在發(fā)給商店的發(fā)起請求信息中,要求商店提供證書。該條信息包含用戶的信用卡種類,一個(gè)請求響應(yīng)的ID號,一個(gè)Nonce以保證一定的時(shí)效。購買請求商店產(chǎn)生一個(gè)響應(yīng),并用自己的私有密鑰簽名。響應(yīng)包括用戶發(fā)來的Nonce,一個(gè)新的要求用戶返回信息時(shí)使用的新的Nonce,本次購買交易的ID,除此之外,還包括商店的簽名證書和支付網(wǎng)關(guān)的密鑰交換證書。持卡人驗(yàn)證這兩個(gè)密鑰,然后生成訂單信息和支付信息,訂單信息并不包含數(shù)量、價(jià)格等信息,而只包含在SET介入之前,客戶和商店之間交換的有關(guān)信息的Reference。購買請求下一步,客戶準(zhǔn)備一個(gè)購買請求消息
31、和一個(gè)一次性的對稱加密密鑰。購買消息包含: (1)支付有關(guān)的消息:這是需要商店轉(zhuǎn)發(fā)給支付網(wǎng)關(guān)的信息,包括PI、雙簽名、H(OI)、數(shù)字信封(由支付網(wǎng)關(guān)的公鑰加密對稱密鑰而獲得),因?yàn)樵陂喿x其他信息之前,必須先解密這個(gè)對稱密鑰,所以將其稱為數(shù)字信封。 (2)購買有關(guān)的消息:這是商店真正需要的信息,包括OI、雙簽名、H(PI)(供商店用于驗(yàn)證雙簽名)。購買請求 (3)持卡人證書:包含持卡人的簽名驗(yàn)證公鑰(這是商店與支付網(wǎng)關(guān)都需要的)。當(dāng)商店受到購買請求信息時(shí),采取如下行動(dòng): (1) 根據(jù)CA的簽名,驗(yàn)證持卡人的證書。 (2) 驗(yàn)證用戶雙簽名有效性。以確保訂單在傳遞過程中沒有被篡改,而且確實(shí)是用用戶
32、的私鑰簽署的。 (3) 處理訂單消息,并把支付信息轉(zhuǎn)交給支付網(wǎng)關(guān)。 (4) 給用戶返回一個(gè)購買響應(yīng)。購買響應(yīng)信息 購買響應(yīng)信息包括訂單確認(rèn)、并給客戶一個(gè)交易編號。這些信息用商店的私鑰進(jìn)行簽名,并與商店的證書一起發(fā)給用戶。 持卡人的工作站收到購買響應(yīng)后,驗(yàn)證商店的證書,驗(yàn)證簽名,并采取一些適當(dāng)?shù)男袆?dòng),比如可以將有關(guān)信息顯示給用戶,或者更新訂單狀態(tài)。Payment Authorization 在處理客戶訂單的同時(shí),商店請求網(wǎng)關(guān)進(jìn)行進(jìn)行付款確認(rèn)。支付確認(rèn)保證發(fā)卡行同意該付款交易,也保證商店能夠收到貨款,商店可以向客戶提供貨物或服務(wù)。付款確認(rèn)包括兩條信息:確認(rèn)請求和確認(rèn)響應(yīng)。 商店向支付網(wǎng)關(guān)發(fā)送確認(rèn)請求信息,包括下列內(nèi)容: (1) 支付有關(guān)的信息:包括PI,雙簽名,H(OI), 數(shù)字信封。Payment Authorization (2)有關(guān)的確認(rèn)信息: 是商店生成的一些信息,包括:用商店的私鑰簽名,并用一次性的對稱密鑰加密的含有交易ID的確認(rèn)信息,數(shù)字信封。 (3) 證書:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 南京工業(yè)大學(xué)浦江學(xué)院《稅收管理》2021-2022學(xué)年第一學(xué)期期末試卷
- 百通馨苑二期三區(qū)18#樓工程安全施工組織設(shè)計(jì)
- 防溺水的說課稿
- 端午節(jié)的說課稿幼兒園
- 《中 國石拱橋》說課稿
- 《憶讀書》說課稿
- 簡單外包合同(2篇)
- 【初中化學(xué)】二氧化碳的實(shí)驗(yàn)室制取教學(xué)課件-2024-2025學(xué)年九年級化學(xué)人教版上冊
- 南京工業(yè)大學(xué)《土質(zhì)學(xué)與土力學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- 統(tǒng)一海之言體育旅行定制綜藝案例
- 品牌授權(quán)書范本中英文版
- 中國地圖(WORD版標(biāo)準(zhǔn)地圖-可編輯)(共3頁)
- 《神奇的海洋動(dòng)物》PPT課件.ppt
- 組織認(rèn)同研究新進(jìn)展-基本概念及其形成、整合機(jī)制
- 股票分析入門整理-入眠
- 山東預(yù)拌砂漿生產(chǎn)企業(yè)備案登記
- 小學(xué)四年級班家長會(huì)班主任PPT課件
- 雙師同堂課題中期報(bào)告
- 怎樣提出好的改善提案5篇
- 《服裝市場營銷》課程標(biāo)準(zhǔn).
- xx醫(yī)院三季度藥事管理委員會(huì)會(huì)議紀(jì)要
評論
0/150
提交評論