丁澤侖,單志勇,王 卉
(東華大學(xué)信息科學(xué)與技術(shù)學(xué)院,上海201620)
基于SSL的交易認證技術(shù)研究*
丁澤侖,單志勇,王 卉
(東華大學(xué)信息科學(xué)與技術(shù)學(xué)院,上海201620)
SSL技術(shù)在互聯(lián)網(wǎng)安全通信領(lǐng)域應(yīng)用廣泛,尤其近年來電子商務(wù)發(fā)展迅速,SSL協(xié)議由于可以提供網(wǎng)絡(luò)信息的安全傳輸,受到了廣大電子網(wǎng)站的青睞,但由于電子商務(wù)業(yè)務(wù)的復(fù)雜性,SSL協(xié)議在實際應(yīng)用中存在一些不足,通過對SSL協(xié)議分析,提出了一種基于SSL的交易認證技術(shù),彌補了SSL在電子商務(wù)不可抵賴性方面功能的不足。
電子安全 身份認證 SSL協(xié)議 加密算法
隨著信息時代的到來,電子商務(wù)等新興產(chǎn)業(yè)發(fā)展火熱,這些新興產(chǎn)業(yè)通過互聯(lián)網(wǎng)傳輸巨量的機密信息,由此,互聯(lián)網(wǎng)安全通信受到人們的高度重視,經(jīng)過近幾年的發(fā)展,SSL協(xié)議(Secure Sockets Layer),成為了國內(nèi)使用最為廣泛,發(fā)展最為成熟的網(wǎng)絡(luò)安全協(xié)議。它可以提供信息在網(wǎng)絡(luò)傳輸層的安全傳輸,防止機密信息被第三方竊聽。而且相比起其他的網(wǎng)絡(luò)安全協(xié)議,SSL協(xié)議結(jié)構(gòu)簡單,易于搭建和使用,因此在電子商務(wù)使用中具有很大的優(yōu)勢[1]。
然而SSL協(xié)議只能提供信息的安全傳輸,不可抵賴性是現(xiàn)代電子商務(wù)的基本特性之一,這要求安全協(xié)議為網(wǎng)絡(luò)數(shù)據(jù)雙方提供事后無法抵賴的交易認證,SSL協(xié)議在這個方面仍然存在缺陷[2]。為此本文提出了網(wǎng)絡(luò)交易的新的認證系統(tǒng)設(shè)計方案,通過對單筆交易信息加密生成交易證書,從而彌補了這個缺陷。
SSL安全協(xié)議工作于在TCP/IP和應(yīng)用層之間,可以使用戶和服務(wù)器之間建立一條加密信道,從而保護雙方傳輸?shù)臄?shù)據(jù)不被剽竊,它基于公開密鑰體制和X.509數(shù)字證書,最適于點對點通信使用[3]。
1.1 SSL工作原理
SSL提供4個基本功能,即為身份認證,數(shù)據(jù)加密,消息完整性和密鑰交換。結(jié)構(gòu)簡單明了,由兩層結(jié)構(gòu)4個協(xié)議組成,如圖1所示[4]。
SSL安全協(xié)議運行時,首先進行的是握手協(xié)議,也是SSL最重要的協(xié)議,這里SSL協(xié)議要完成3個功能:
1)身份認證。在互聯(lián)網(wǎng)通信中,服務(wù)端和客戶會在某個中立權(quán)威的證書授權(quán)中心(CA)各自注冊,CA中心會根據(jù)RSA算法給雙方分配私鑰和公鑰,并且公鑰在網(wǎng)上公布,私鑰發(fā)給雙方自己保存。當雙方通信時。雙方各自把密文用對方公布的公鑰進行加密發(fā)出,這樣,如果接收方正確,自然可以用私鑰解密出信息,從而驗證雙方(也可以只驗證單方,即只驗證服務(wù)端),參考文獻[1-2],流程圖如圖2所示。
圖1 SSL結(jié)構(gòu)Fig.1 SSL structure
圖2 身份認證過程Fig.2 Authentication process
2)確認算法。在通信雙發(fā)確認身份后,SSL協(xié)議會加密雙方的信息,這里使用的是對稱加密算法,即加密解密共用一個密鑰,因為對稱加密算法較多,因此在這個環(huán)節(jié)雙方要確認這次通信使用的加密算法。這里協(xié)商的過程是安全的。
3)密鑰交換。在加密算法確認后,SSL協(xié)議會生成本次通信的共用密鑰,并發(fā)給通信的雙方,雙方此次對話之后所有的信息都使用這個密鑰加密,除了持有這個密鑰的客戶和服務(wù)端,任何第三方都無法偽造信息或者篡改信息[5]。
除了握手協(xié)議,SSL還擁有改變加密協(xié)議,警告協(xié)議等功能,但最為重要的功能仍然是握手協(xié)議,它完成了安全協(xié)議需要完成的絕大部分功能。分析SSL協(xié)議,可以發(fā)現(xiàn)雖然SSL提供了身份認證功能,但是這次身份認證僅僅限于當次對話,如果雙方發(fā)生糾紛,作為客戶一端無法提供服務(wù)端和自己之間的通信證據(jù),因此客戶無法證明自己和商家發(fā)生了交易行為。目前SSL協(xié)議有利于商家,由于目前市場上電子商務(wù)公司普遍是大商家,發(fā)生商業(yè)欺詐的可能性較小,客戶沒有相應(yīng)的技術(shù)抵制商業(yè)欺詐,完全取決于商家的信譽。這種現(xiàn)象非常不合理,并且隨著電子商務(wù)的發(fā)展,互聯(lián)網(wǎng)商務(wù)必將涌現(xiàn)越來越多的小商家,電子商務(wù)欺詐的可能性大大增加。因此,這就要求SSL協(xié)議擁有一個可以抗抵賴的交易認證功能。
目前并沒有專門的交易認證技術(shù),一般商家通過身份認證技術(shù)來作為雙方通信的證據(jù),市場上流行的身份認證技術(shù)為PKI,PMI,單點登錄技術(shù)等,其中PKI技術(shù)最為符合電子商務(wù)的特性,由于PKI技術(shù)采用數(shù)字證書來認證商家,而數(shù)字證書在目前仍然是一種有效認證商家的方式,因此,當前有些學(xué)者認為可以通過SSL加上PKI共同工作的方式,在SSL警告協(xié)議工作后,增加一個發(fā)送數(shù)字證書的環(huán)節(jié),客戶收到商家的身份證書后,即可以在發(fā)生糾紛后,通過身份證書,來證明曾經(jīng)和商家發(fā)生過交易。但當事后發(fā)生商務(wù)糾紛,客戶無法證明自己的交易細節(jié)。
2.1 交易認證系統(tǒng)設(shè)計
基于上述分析,提出了一個針對網(wǎng)絡(luò)交易的認證系統(tǒng)設(shè)計方案,通過商務(wù)交易的需求分析,交易系統(tǒng)需要滿足以下功能:
①包含交易信息:第三方可以通過信息查詢相關(guān)的交易信息,從而做出判決;②機密性:除了相關(guān)企業(yè)和第三方權(quán)威機構(gòu),其他機構(gòu)或個人無法制造和識別交易認證信息,這樣就可以防止他人通過偽造交易信息進行商務(wù)欺詐;③時效性:由于電子商務(wù)交易量巨大,不可能有數(shù)據(jù)庫長時間存儲所有的交易認證信息,交易認證信息有時效性。由于交易加密信息設(shè)計是用來監(jiān)控企業(yè),所以應(yīng)該有權(quán)威的第三方機構(gòu)來負責相關(guān)工作的進行,本文通過CA認證中心增加企業(yè)交易信息加密模塊,來實現(xiàn)對交易信息認證功能,具體流程如圖3所示。
圖3 交易認證流程Fig.3 Trading certification process
CA中心交易認證模塊流程如下:
1)首先,CA中心針對企業(yè)生成獨特的交易認證方案,CA中心生成方案后,將方案發(fā)給企業(yè)。
2)企業(yè)在收到方案后,對于之后和客戶發(fā)生的交易行為,選擇需要的交易信息,使用交易認證方案對交易信息進行加密,生成交易證書發(fā)送給客戶。
3)客戶在收到交易證書后,如果日后與企業(yè)發(fā)生糾紛,可以把交易證書發(fā)送至CA中心,請求CA中心驗證交易信息的正確性。
2.2 CA中心交易認證模塊設(shè)計
文中提出了一種基于RSA算法和MD5算法的交易認證加密方案,利用第三方CA中心添加交易認證功能來實現(xiàn)交易認證。設(shè)計交易認證模塊功能如圖4所示。
圖4 CA中心交易認證Fig.4 CA centre transaction authentication
在設(shè)計的交易認證方案中,企業(yè)在CA中心注冊后,按照規(guī)定的交易認證方案對交易信息進行一系列操作,最后將生成的加密信息PKINFO發(fā)送給用戶,具體流程如下:
1)生成交易認證密鑰對,通過RSA算法原理,生成公鑰PUK和私鑰PSK。
2)隨機生成企業(yè)字符串RMK,將交易信息生成交易信息字符串,如圖5所示。
圖5 交易信息字符串產(chǎn)生過程Fig.5 Transaction string generation process
3)將交易信息按照信息順序排序后生成交易驗證信息字符串a(chǎn),通過MD5散列函數(shù)f(x),對字符串信息進行處理,得到處理后的信息INFO=f(a)。
4)最后將INFO使用PUK通過RSA加密,得到密文PKINFO,PKINFO是最后發(fā)給客戶的密文,本文通過Java實現(xiàn),相關(guān)代碼如下:
通過上述代碼,交易認證模塊就可以實現(xiàn)信息加密信息,例如,當客戶張三與商家A發(fā)生交易行為,金額100,A企業(yè)編號ARK,客戶身份證號碼為14019023425,系統(tǒng)會按照如下順序進行工作:
1)首先,作為交易公司,企業(yè)會從CA中心獲得的隨機生成的RSA公鑰。
本案例中隨機公鑰為:MIGfMA0GCSqGSIb3DQ EBAQUAA4GNADCBiQKBgQCSYab0N8lG1GBkzGwB pL/vnS4KfsMYWpRUYOmQ8ppMAmw0Vu9AomenQz 8NPq7v9TMKEubQ0uL3JYpUrSFX64VDqbnMifwitdM L6AkOXEAVlNpObf+FFlkOUCIUzK7S6k86a7IaWSMr 677WhzQFuCz/sgli+VrCijh+CrGSyXzZuQIDAQAB。
2)然后,系統(tǒng)根據(jù)客戶的交易信息,生成字符串,針對本案例交易信息,生成“張三100ARK14019023425”字符串,作為交易信息載體。
3)交易公司對于交易信息字符串進行相應(yīng)處理,采用MD5算法,對字符串“張三100ARK14019023425”處理后生成相對應(yīng)的字符串INFO:0TwP6BlgFBoJO7soLgc+9Q==。
4)生成INFO字符串后,企業(yè)再對信息進行進一步加密,對于INFO字符串,使用CA中心系統(tǒng)分配的RSA密鑰進行加密,生成PKINFO,這個字符串就是最終發(fā)送給客戶的交易憑證。
2.3 CA中心仲裁方案
當客戶與企業(yè)發(fā)生商務(wù)糾紛后,客戶可以請求CA中心進行仲裁,CA中心會要求客戶出示企業(yè)發(fā)送的PKINFO,并根據(jù)發(fā)于企業(yè)的排序?qū)φ铱蛻羲髑蠼灰紫嚓P(guān)信息,然后根據(jù)以下流程確定客戶提供交易信息的可靠性,如圖6所示。
圖6 CA中心判定交易可靠性Fig.6 CA center determine the reliability of the transactions
1)將PKINFO使用PSK通過RSA算法解密,還原密文INFO。
2)將客戶發(fā)來的信息根據(jù)相關(guān)企業(yè)交易信息排序,然后使用MD5處理生成INFO1。
3)INFO與INFO1,如果相同,則說明客戶提供的交易信息正確,如果不相同,則不予認可。相關(guān)判斷代碼如下:
本文提出了一個新的交易認證方案,該方案包含交易信息:具有機密性,除了相關(guān)企業(yè)和第三方權(quán)威機構(gòu),其他機構(gòu)或個人無法制造和識別交易認證信息,并通過CA認證中心增加企業(yè)交易信息加密模塊,來實現(xiàn)對交易信息認證功能的實現(xiàn).提出了一種基于SSL的交易認證技術(shù),彌補了SSL在電子商務(wù)不可抵賴性方面功能的不足。
[1] 蔡盛勇,吳靜.基于SSL協(xié)議的智能電視支付安全研究[J].通信技術(shù),2013,46(10):41-44.
CAI Sheng-yong,WU Jing.Smart TV based on Payment Security SSL Protocol[J].Communications Technology, 2013,46(10):41-44.
[2] 尋大勇.基于SSL與SET協(xié)議的電子商務(wù)支付安全系統(tǒng)[J].通信技術(shù),2009,42(04):156-158.
XUN Da-yong.SSL and SET Protocol based E-Commerce Payment Security System[J].Communications Technology,2009,42(04):156-158.
[3] 莫賦.基于動態(tài)密鑰的電子支付模式研究與實現(xiàn)[D].廣東:華南理工大學(xué),2012.
MO Fu.Research and Implementation of Electronic Payments based on Dynamic Secret Key[D].Guangdong: South China University,2012.
[4] 楊宇.基于PKI身份認證系統(tǒng)的研究和實現(xiàn)[D].西安:電子科技大學(xué),2009.
YANG Yu.Research and Implementation of PKI-based Authentication System[D].Xian:University of Electronic Science and Technology,2009.
[5] 郭林鳳.基于RSA的動態(tài)口令身份認證技術(shù)研究[D].邯鄲:河北工程大學(xué),2012.
GUO Lin-feng.Authentication Research based on RSA Dynamic Password[D].Handan:Hebei University of Engineering,2012.
DING Ze-lun(1990-),male,graduate student,mainly engaged in software engineering.
單志勇(1974—),男,碩士生導(dǎo)師,主要研究方向為信息與通信工程;
SHAN Zhi-yong(1974-),male,M.Sci.tutor,mainly engaged in information and communication engineering.
王 卉(1990—),女,碩士研究生,主要研究方向為軟件工程。
WANG Hui(1990-),female,graduate student,mainly engaged in software engineering.
Transaction Authentication Technology based on SSL
DING Ze-lun1,SHAN Zhi-yong2,WANG Hui3
(College of Information Science and Technology,Donghua University,Shanghai 201620,China)
SSL technology has been widely applied in the field of Internet security communication,especially e-commerce has developed rapidly in recent years.As SSL protocol can provide security of the network information transmission,it gets the favor of the electronic website.But because of the complexity of the e-commerce business,SSL protocol has some deficiencies in actual application.Through analyzing the SSL protocol,this paper proposes a transaction authenticcation technology based on SSL,thus to make up for the function of SSL in e-commerce non-repudiation.
electronic security;authentication;SSL protocol;encryption algorithm
TP31
A
1002-0802(2014)08-0955-04
10.3969/j.issn.1002-0802.2014.08.023
丁澤侖(1990—),男,碩士研究生,主要研究方向為軟件工程;
2014-05-30;
2014-06-30 Received date:2014-05-30;Revised date:2014-06-30