魏美香
(泉州紡織服裝職業學院,福建 泉州 362700)
電子商務正迅速發展,據艾瑞咨詢報告,2012年中國網絡購物的交易總規模達1.3萬億,增長66%;預計2013年整個市場還有40%以上的增長。然而,網絡支付依托的是開放的Internet平臺,由于網絡協議本身的漏洞和電子商務網站設計上的缺陷等,不可避免地會出現各種安全問題。近期網上商城用戶賬號被盜事件頻發,造成用戶資金流失,隱私失去保障,電商的安全運行環境有待提高。用戶賬戶被盜,可能是用戶計算機中木馬病毒或密碼設置過于簡單等原因造成,但從根本上說,網上銀行和第三方支付平臺作為主導網絡支付的一方應承擔大部分的責任——應在技術上提供安全支付所需的相應軟硬件:安全套接層協議SSL、數字證書、靜態密碼、動態口令等,在執行方案上應提供多重資金保護,確保交易安全。目前SSL和PKI結合使用是目前國內網上銀行、第三方支付平臺所廣泛使用的安全機制之一。論文將闡述國內各大網上銀行和主流第三方支付平臺普遍使用的網絡安全支付的技術SSL協議、數字證書等原理。然而,再好的技術也會有漏洞,因此應采用多種保障機制,從而更好地保障網上資金賬戶的安全。論文另一方面將分析各大網上銀行和主流第三方支付平臺保障用戶資金安全和用戶隱私所采取的實施方案,以期為廣大網絡支付用戶提供安全支付的一些建議。
20世紀90年代,以Internet為基礎的網上交易等電子商務行為產生,當時的網絡協議并沒提供安全傳輸服務,這與電子商務交易的高安全性要求之間的矛盾日益突出,迫切需要網絡傳輸安全協議加密傳輸消息,以確保信息業務的安全,同時保證操作的便捷。SSL就是在這種背景下由Netscape公司開發的一個網絡安全協議,建立在傳輸層和應用層之間,可為各種應用層協議(HTTP、FTP、SMPT等)提供安全傳輸,已成為事實上的網絡支付安全標準協議。從網絡支付的服務器端看,目前國內網上銀行和第三支付平臺普遍采用SSL協議;從網絡支付的普通用戶看,幾乎所有的桌面瀏覽器都支持SSL協議,SSL協議被廣泛應用于Web瀏覽器與服務器之間的加密數據傳輸。SSL協議操作便利,相關的加密算法、通信密鑰的協商以及服務器的認證都是由SSL自動完成的。在SSL的連接建立之后,應用層不需要進行任何干預,通信中的所有數據都會被SSL自動加密。SSL協議的安全性來源如下:
傳統的萬維網協議HTTP不具備安全機制——采用明文的形式傳輸數據,在開放的Internet網上,傳輸的數據很容易被非法用戶竊取。SSL把數據加密后,再傳輸,這樣即使數據中途被竊取,也無法被破解。SSL協議結合使用私鑰加密算法(加密和解密使用相同的密鑰)和公鑰加密算法(加密和解密使用不同密鑰),充分利用了兩者的優點。與公鑰加密算法相比,私鑰加密算法運算速度快,適用于長信息加密;而公鑰加密算法適用于短信息加密。SSL協議在加密傳輸數據時采用私鑰加密算法,此密鑰稱為會話密鑰。目前主要支持的算法有DES、3DES、AES等,這些算法都可以有效地防止交互數據被竊聽。同時SSL利用公鑰加密算法加密會話密鑰,保證會話密鑰的安全傳輸,第三方無法獲取該會話密鑰。SSL協議所用的會話密鑰是一次一密,公鑰則需要向數字證書權威機構——CA申請數字證書,并由CA保證數字證書的真實性。數字證書是一個包含用戶的公鑰及其身份信息的文件,證明了用戶與公鑰的關聯。數字證書里還有CA的數字簽名,用戶可通過PKI(公鑰基礎設施)判斷該證書的真實性。
為了避免網絡中傳輸的數據被非法篡改,SSL協議使用消息摘要算法(哈希函數)來保證消息的完整性。發送者利用Hash函數向接收者發送信息和信息摘要,接收者驗證信息的過程如下圖所示:

SSL可保證消息的真實性、完整性和保密性,但SSL不對應用層的消息進行數字簽名,不能提供交易的不可否認性,這個是它的不足。因此,SSL協議中使用了數字簽名技術來保證交易身份的確定性。基于數字證書利用數字簽名方法對服務器和客戶端進行身份驗證,其中客戶端的身份驗證是可選的。首先,用戶在網絡支付中必須保證要登錄的Web服務器是真實的——避免登錄釣魚網站,以免重要信息被非法竊取。其次,SSL利用數字簽名來驗證通信對方的身份。數字簽名及其驗證過程步驟如下:
(1)SSL服務器端用私鑰加密一段信息,服務器端將明文和密文一起發給SSL客戶端;
(2)SSL客戶端使用SSL服務端的公鑰解密該密文;
(3)若解密后得到的消息與明文一致,則SSL客戶端確認該SSL服務器端的身份。
目前網絡支付平臺常用安全工具和方案:有數字證書、動態口令、靜態密碼、圖形驗證碼、交易情況短信通知等層層防護,以確保交易安全。
網銀客戶端數字證書分兩類:一類存放在類似優盤的USBKey中,俗稱“硬證書”,是目前網上銀行客戶端級別最高的一種安全工具;USBKey作為最高級別的安全工具,是因為其控制芯片被設計為只能寫入證書,不能讀取證書并且所有利用證書進行的運算都在U盾中進行。所以只能從U盾讀出運算結果。另一類存在電腦里,叫做“軟證書”。軟證書使用方便,成本低,但是放在硬盤中可能會被黑客植入木馬程序竊取,因此使用軟證書最好跟其他安全支付手段配合使用,比如加上靜態或動態密碼。
(1)軟證書
支付寶具有大量只使用軟證書進行支付驗證的第三方支付平臺:數字證書安裝后,只能在安裝有數字證書的電腦上操作,如果換一臺電腦或重裝系統,要重裝數字證書,此時需要輸入手機驗證碼。筆者認為,這個方法可以最大程度地避免軟件證書被盜取造成的損害,黑客即使竊取了數字證書也無法在他的電腦上安裝成功,更談不上進行交易。支付寶中數字證書用戶在進行交易時只需要輸入支付密碼就可以完成支付,使用方便。
(2)硬證書
各個網絡支付平臺都推出了各自的USBKey,在安全使用和用戶便利性上各有側重。USBKey內置CPU或智能卡芯片,可以實現數據摘要、數字簽名等操作都在USBKey內進行,保證用戶私鑰不會出現在計算機內存中,確保網上交易的保密性、真實性、完整性和不可否認性。第一次在個人電腦上使用U盾,要安裝驅動。目前銀行新推出的USBKey具有自動安裝驅動和下載數字證書功能,不需要客戶完成。
中國四大銀行和支付寶平臺USBKey的大致使用情況如下:中國銀行E盾,建設銀行網銀盾(無驅動無軟,即插即用),工商銀行U盾(第一次使用需要安裝U盾驅動,需要安裝證書),農業銀行分為有驅型K寶(第一使用要安裝驅動,安裝驅動后要安裝數字證書)、二代K寶(可顯示交易內容和提供按鍵功能)。支付寶第三方平臺同時支持支付盾、工商銀行第一代U盾。
一次一密理論上是不可破解的,使用起來又方便。在網絡支付行業得到普遍使用,幾乎所有的網上銀行和第三方支付平臺等都有使用一次一密作為支付安全手段之一。一次一密在實際應用中有銀行動態口令卡和手機驗證碼。
動態口令是一種動態密碼技術,就是客戶每次在網上銀行進行資金交易時使用不同的密碼進行交易確認。
網絡支付平臺使用的動態密碼技術大致如下:工商銀行電子密碼器(在電子密碼器中輸入收款人賬號后6位和轉賬金額,按確認鍵,得到一個動態口令,將該動態密碼輸入到網銀頁面動態密碼框中)。工商銀行電子銀行口令卡(當您在使用工行電子銀行相關功能時,按系統指定的若干坐標,將卡片上對應的字符串作為密碼輸入,系統校驗密碼字符的正確性。一張卡可以使用1000次)。建設銀行推出的網上銀行動態口令卡是一種大小、形狀與銀行卡一樣的卡片,俗稱刮刮卡,每張卡片覆蓋有100個不同的密碼,客戶在使用網上銀行過程中,需要輸入交易密碼時,只需按順序輸入刮刮卡上的密碼即可,每個密碼只可以使用一次。中行使用E令,農業銀行使用動態口令卡,支付寶使用寶令、手機動態口令等。
幾乎所有網絡支付平臺都使用靜態密碼(分為登錄密碼和交易密碼)、圖形驗證碼、動態密碼(動態口令卡和手機驗證碼)及數字證書(軟證書和硬證書)作為客戶端驗證工具。通過上述幾種方式的組合使用達到交易安全的目的。下面將簡述四大網上銀行和支付寶平臺不同安全實施方案及其優缺點。
登錄中行網銀時,要輸入用戶名、密碼和圖形驗證碼。在進行交易時,如果用中行E令,在確認付款信息后,要在網銀頁面輸入手機交易碼才能完成交易,進一步保證交易安全。若用中行E盾,交易時要輸入靜態密碼,在確認付款信息后,按E盾上的確認鍵才能完成交易,進一步保證交易安全。
網上銀行系統采取登錄密碼,在輸入密碼時采用軟鍵盤(可以防止鍵盤記錄攻擊)和交易密碼兩種控制。在系統登錄時,提供附加碼和密碼小鍵盤等服務。
(1)純動態口令用戶(2011年2月26號以后新簽約的動態口令卡客戶,首次登錄個人網上銀行無需下載數字證書,進行網上銀行交易時取消數字證書認證。該項業務功能上線后,將有效解決目前動態口令卡客戶開通和使用復雜、證書保管、使用和到期更換流程復雜,客戶體驗欠佳的業務現狀,從而使動態口令卡客戶可以更便捷地使用網上銀行。)輸入轉賬信息(付款人和收款人賬號、金額)后,直接輸入動態口令就可以完成交易。
(2)網銀盾用戶:插入網銀盾和輸入網銀盾密碼可以完成交易。步驟:輸入個人信息(賬號和登錄密碼、附加碼);輸入交易信息;輸入交易密碼;選擇證書類型;輸入網銀盾密碼。
(3)網銀盾+動態口令:插入網銀盾,輸入動態口令,再輸入網銀盾密碼。
U盾用戶:操作與其他銀行大致相同。如果是二代U盾,在交易時認真核對顯示屏中回顯的交易信息,確認無誤后按下“確認”按鈕。(之前也要輸入圖形驗證碼,使用時要插入U盾,輸入U盾密碼)
電子銀行口令卡:輸入口令卡密碼和網銀密碼及圖形驗證碼,會顯示“預留信息”來辨別真假網站。
[1]馬英杰,肖麗萍,何文才,等.SSL協議分析及其在Web服務應用中的改進[J].微處理機,2005,(6):31-37.
[2]馮登國.網絡安全原理與技術[M].北京:科學出版社,2003:320-325.