SET應(yīng)用層協(xié)議的安全探討
前面針對SET應(yīng)用層協(xié)議的基本知識我們進(jìn)行了講解,現(xiàn)在我們再來對這部分內(nèi)容進(jìn)行一下擴(kuò)展。主要討論一下SET應(yīng)用層協(xié)議的安全技術(shù)和主要特點(diǎn)。希望通過文章的總結(jié),能讓大家抓住這部分知識的要點(diǎn)。
◆SET應(yīng)用層協(xié)議中采用的安全技術(shù)
SET是在一些早期協(xié)議如MasterCard的SEPP以及VISA和Microsoft的STT的基礎(chǔ)上合并而成的,它定義了交易數(shù)據(jù)在卡用戶、商家、發(fā)卡行、收單行之間的流通過程,也定義了各種支持這些交易的安全功能(數(shù)字簽名、Hash算法、加密等)。
為了進(jìn)一步加強(qiáng)安全性,SET使用兩組密鑰對分別用于加密和簽名。SET不希望商家得到顧客的賬戶信息,同時也不希望銀行了解到交易內(nèi)容,但又要求能對每一筆單獨(dú)的交易進(jìn)行授權(quán)。通過雙簽名(dual signature)機(jī)制將訂購信息同賬戶信息鏈在一起簽名,SET巧妙地解決了這一矛盾。
SET將對稱密鑰的快速、低成本和非對稱密鑰的有效性***地結(jié)合在一起。考慮網(wǎng)上商店的情況,對于成千上萬的消費(fèi)者和商家在INTERNET交換信息,要對每一個消費(fèi)者通過某個渠道發(fā)放一個密鑰,在現(xiàn)實(shí)中是不可取的。而用公開密鑰,商家生成一個公共密鑰對,任何一個消費(fèi)者都可用商家公開發(fā)布的公鑰與商家進(jìn)行保密通信,具體介紹如下。
(1)數(shù)字信封,SET依靠密碼系統(tǒng)保證消息的可靠傳輸,在SET中,使用DES算法產(chǎn)生的對稱密鑰來加密數(shù)據(jù),然后,將此對稱密鑰用接收者的公鑰加密,稱為消息的“數(shù)字信封",將其和數(shù)據(jù)一起送給接收者,接收者先用他的私鑰解密數(shù)字信封,得到對稱密鑰,然后使用對稱密鑰解開數(shù)據(jù)。
(2)數(shù)字簽名,由于公開密鑰和私有密鑰之間存在的數(shù)學(xué)關(guān)系,使用其中一個密鑰加密的數(shù)據(jù)只能用另一個密鑰解開。SET中使用RSA算法來實(shí)現(xiàn)。發(fā)送者用自己的私有密鑰加密數(shù)據(jù)傳給接收者,接收者用發(fā)送者的公鑰解開數(shù)據(jù)后,就可確定消息來自于誰,這就保證了發(fā)送者對所發(fā)信息不能抵賴。
(3)雙重簽名,為了保證消費(fèi)者的帳號等重要信息對商家隱蔽,SET中采用了雙重簽名技術(shù)。在交易中持卡人發(fā)往銀行的支付指令是通過商家轉(zhuǎn)發(fā)的,為了避免在交易的過程中商家竊取持卡人的信用卡信息,以及避免銀行跟蹤持卡人的行為,侵犯消費(fèi)者隱私,但同時又不能
影響商家和銀行對持卡人所發(fā)信息的合理的驗(yàn)證,只有當(dāng)商家同意持卡人的購買請求后,才會讓銀行給商家負(fù)費(fèi),SET應(yīng)用層協(xié)議采用雙重簽名來解決這一問題。
◆SET應(yīng)用層協(xié)議主要特點(diǎn)
(1)信息的保密性。SET的一個重要特點(diǎn)是持卡人的信用卡號碼只提供給銀行,而商家無法知道信用卡號碼。SET利用DES密碼算法提供信息的保密性。
(2)數(shù)據(jù)完整性。從持卡人發(fā)往商家的支付信息包括訂購信息、個人數(shù)據(jù)及支付指令。SET引入RSA數(shù)字簽名及Sha-1雜湊函數(shù)確保這些消息的內(nèi)容在傳輸過程中不被非法更改。
(3)持卡人身份的鑒別。SET可以讓商家鑒別持卡人是有效信用卡賬號的合法用戶。SET采用X.509V3數(shù)字證書和RSA數(shù)字簽名達(dá)到這一目的。
(4)商家的鑒別。SET是持卡人可以鑒別商家真實(shí)性,而且可以驗(yàn)證商家能否接受信用卡支付。SET同樣采用X.509V3數(shù)字證書和RSA數(shù)字簽名實(shí)現(xiàn)這一功能。
◆SET應(yīng)用層協(xié)議的安全性分析與總結(jié)
SET應(yīng)用層協(xié)議主要通過使用密碼技術(shù)和數(shù)字證書方式來保證信息的機(jī)密性和安全性,它實(shí)現(xiàn)了電子交易的數(shù)據(jù)完整性、機(jī)密性、身份的合法性和不可否認(rèn)性。
數(shù)據(jù)完整性(Data Integrity) SET應(yīng)用層協(xié)議通過使用Hash函數(shù)來保證數(shù)據(jù)完整性。報(bào)文發(fā)送后,Hash函數(shù)將為之產(chǎn)生一個惟一的報(bào)文摘要值,一旦報(bào)文中包含的數(shù)據(jù)被篡改,該值就會改變,從而被檢測到,這樣就保證了信息的完整性。
機(jī)密性(Confidentiality)在SET應(yīng)用層協(xié)議下,客戶將支付信息PI和訂單信息OI進(jìn)行雙重簽名商家解密后得到OI,銀行解密后得到PI,從而避免了商家訪問客戶的支付信息。
身份驗(yàn)證(Verification Of Identity)身份認(rèn)證,是電子商務(wù)中非常重要的環(huán)節(jié),SET應(yīng)用層協(xié)議使用數(shù)字證書來確認(rèn)商家、持卡客戶、受卡行和支付網(wǎng)關(guān)的身份,為網(wǎng)上交易提供了一個完整的可信賴的環(huán)境。
不可否認(rèn)性(Non-repudiation of Disputed charges) SET應(yīng)用層協(xié)議中數(shù)字證書的發(fā)布過程也包含了商家和客戶在交易中存在的信息,因此,如果客戶發(fā)出了一個商品的訂單,在收到貨物后它不能否認(rèn)發(fā)出這個訂單,同樣,商家以后也不能否認(rèn)收到過這個訂單。
◆小結(jié)
SET應(yīng)用層協(xié)議位于網(wǎng)絡(luò)的應(yīng)用層中,安全性較好,是實(shí)現(xiàn)安全電子交易的重要保障,它規(guī)范了整個商務(wù)活動的流程,制定了嚴(yán)格的加密和認(rèn)證標(biāo)準(zhǔn),已經(jīng)成為網(wǎng)上交易安全通信協(xié)定的產(chǎn)業(yè)標(biāo)準(zhǔn)。但也存在著一些缺陷,如SET涉及的交易參與主體較多,從而導(dǎo)致協(xié)議比較復(fù)雜,使用成本高,其安全性在某些方面還存在著一些缺陷,這些都是以后需要研究和改進(jìn)的地方。