基本介紹
一般說來,在網上進行電子商務交易時,交易雙方需要使用數字簽名來表明自己的身份,並使用數字簽名來進行有關的交易操作。隨著電子商務的盛行,數位簽章的頒發機構 CA中心將為為電子商務的發展提供可靠的安全保障。
功能
通俗點說SSL證書可以實現2個基本功能:
數據傳輸加密
我們通常的網際網路訪問、瀏覽都是基於標準的TCP/IP協定,內容以數據包的形式在網路上傳遞。由於數據包內容沒有進行加密,任何截獲數據包的人都可以取得其中的內容。那么數據包中如果傳遞的是用戶名、密碼或其他個人隱私資料就很容易被別人竊取。
SSL可以在用戶使用的客戶端(如:瀏覽器)和伺服器之間建立一個加密的通道,所有在網路上傳輸的數據都會先進行加密,當傳輸到目的地以後再進行解密,這樣傳輸過程中即時數據包被截獲,也很難破解其中的內容。
伺服器身份證明
目前,仿冒網站已經成為網際網路使用中的嚴重威脅,仿冒者可以製作一個與真實網站完全一樣的界面,並且採用相似的域名引導用戶訪問。如:真實的某某銀行網址為www.XXX.xxx。 而仿冒者使用了一個相似的域名:www.0XXX.xxx,字母i換成了數字1,如果使用者不加注意,很容易上當。一旦在仿冒網站的使用過程中輸入了帳號密碼等信息,就會被仿冒網站記錄,進而被冒用,威脅用戶的帳戶安全。
SSL伺服器證書可以有效地證明網站的真實身份、使用的域名的合法性,讓使用者可以很容易識別真實網站和仿冒網站。現在的SSL伺服器證書在申請的時候都會通過嚴格的審查手段對申請者的身份進行確認,用戶在訪問網站的時候可以看到證書的內容,其中包含網站的真實域名、網站的所有者、證書頒發組織等信息。瀏覽器也會給出相應的安全標識,讓訪問者可以放心使用。
類型
根據SSL安全強度,CA一般將SSL證書分為5種類型:
DVSSL:即域名型SSL安全證書,無需人工審核,快速頒發。
OVSSL:即企業型SSL安全證書,需要人工審核,證書包含企業認證信息。
EVSSL:即增強型SSL安全證書,人工審核嚴格,頒發之後可以使網站域名在瀏覽器地址欄變成綠色。
SSL安全性
SSL技術提供了身份認證服務,信息加密服務和數據的完整性服務等3項服務以達到高安全性。
1.用戶和伺服器的合法性認證
2.加密數據以隱藏被傳送的數據
SSL協定所採用的加密技術既有對稱密鑰加密技術,也有非對稱密鑰加密技術。
3.保護數據的完整性
採用Hash函式和機密共享的方法來提供信息的完整新服務,建立客戶機與伺服器之間的安全通道,使所有經過SSL協定處理的業務在傳輸過程中能全部完整準確無誤的到達目的地
通過以上敘述,SSL協定提供的安全信道有以下三個特性:
1.數據的保密性 信息加密就是把明碼的輸入檔案用加密算法轉換成加密的檔案以實現數據的保密。加密的過程需要用到密匙來加密數據然後再解密。沒有了密鑰,就無法解開加密的數據。數據加密之後,只有密匙要用一個安全的方法傳送。加密過的數據可以公開地傳送。
2.數據的一致性 加密也能保證數據的一致性。例如:訊息驗證碼(MAC),能夠校驗用戶提供的加密信息,接收者可以用MAC來校驗加密數據,保證數據在傳輸過程中沒有被篡改過。
3.安全驗證 加密的另外一個用途是用來作為個人的標識,用戶的密匙可以作為他的安全驗證的標識。SSL是利用公開密鑰的加密技術(RSA)來作為用戶端與伺服器端在傳送機密資料時的加密通訊協定。
SSL使用HTTPS協定來對訊息進行加密和簽名,使用SSL證書來對服務進行身份驗證。
實現機制
SSL安全機制是依靠數字證書來實現的。用戶與IIS伺服器建立連線後,伺服器會把數字證書與公用密鑰傳送給用戶,用戶端生成會話密鑰,並用公共密鑰對會話密鑰進行加密,然後傳遞給伺服器,伺服器端用私人密鑰進行解密,這樣,用戶端和伺服器端就建立了一條安全通道,只有SSL允許的用戶才能與IIS伺服器進行通信。
具體過程如下 :1.Client Hello:客戶端將其SSL版本號、加密設定參數、與session有關的數據以及其它一些必要信息(如加密算法和能支持的密鑰大小)傳送到伺服器。
2.Server Hello:伺服器將其SSL版本號、加密設定參數、與session有關的數據以及其它一些必要信息傳送給客戶端
3.Certificate(可選):伺服器發一個證書或一個證書鏈到客戶端,證書鏈開始於伺服器公共鑰匙並結束於證明權威的根證書。該證書用於向客戶端確認伺服器的身份,該訊息是可選的。如果配置伺服器的SSL需要驗證伺服器的身份,會傳送該訊息。多數電子商務套用都需要伺服器端身份驗證。
4.Certificate Request(可選):如果配置伺服器的SSL需要驗證用戶身份,還要發出請求要求瀏覽器提供用戶證書。 多數電子商務不需要客戶端身份驗證,不過,在支付過程中經常需要客戶端身份驗證。
5.Server Key Exchange(可選):如果伺服器傳送的公共密鑰對加密密鑰的交換不是很合適,則傳送一個伺服器密鑰交換訊息。
6.ServerHelloDone:通知客戶端,伺服器已經完成了交流過程的初始化。
7.Certificate(可選):客戶端傳送客戶端證書給伺服器。僅當伺服器請求客戶端身份驗證的時候會傳送客戶端證書
8.Client Key Exchange:客戶端產生一個會話密鑰與伺服器共享。在SSL握手協定完成後,客戶端與伺服器端通信信息的加密就會使用該會話密鑰。如果使用RSA加密算法,客戶端將使用伺服器的公鑰將會話加密後再傳送給伺服器。伺服器使用自己的私鑰對接收的訊息進行解密得到共享的會話密鑰。
9.Certificate Verify:如果伺服器請求驗證客戶端,則這訊息允許伺服器完成驗證過程。
10.Change cipher spec:客戶端要求伺服器在後續的通信中使用加密模式
11.Finished:客戶端告訴伺服器已經準備好安全通信了。
12.Change cipher spec:伺服器要求客戶端在後續的通信中使用加密模式
13.Finished:伺服器告訴客戶端它已經準備好安全通信了。SSL握手完成的標誌
14.Encrypted Data:客戶端和服務端在安全信道上進行加密信息的交流
當上述動作完成之後,兩者的資料傳送就會加密。傳送時信息用會話密鑰加密形成一個數據包A,對稱密鑰用非對稱算法加密形成另一個數據包B,再把兩個包一起傳送。接收的過程域傳送正好相反,先用非對稱算法打開對稱密鑰的加密包B,獲得會話密鑰,然後再用會話密鑰解密數據包A,獲取傳送過來的信息原文。會話密鑰還被描述為對稱密鑰,或“共享秘密”。具有對稱密鑰很重要,因為它減少了事務雙方所需執行的計算量。如果每個訊息都要求對 Nonce 和哈希進行新的交換,那么性能將會下降。因此,SSL 的最終目標是使用允許訊息在通信雙方之間自由流動的對稱密鑰,同時具有更高程度的安全和效率。
傳輸協定
HTTPS安全超文本傳輸協定
HTTPS(Secure Hypertext Transfer Protocol)安全超文本傳輸協定,它是由Netscape開發並內置於其瀏覽器中,用於對數據進行壓縮和解壓操作,並返回網路上傳送回的結果。HTTPS實際上套用了Netscape的安全套接字層(SSL)作為HTTP套用層的子層。(HTTPS使用連線埠443,而不是象HTTP那樣使用連線埠80來和TCP/IP進行通信。)SSL使用40 位關鍵字作為RC4流加密算法,這對於商業信息的加密是合適的。HTTPS和SSL支持使用X.509數字認證,如果需要的話用戶可以確認傳送者是誰。。
https是以安全為目標的HTTP通道,簡單講是HTTP的安全版。即HTTP下加入SSL層,https的安全基礎是SSL。
它是一個URI scheme(抽象標識符體系),句法類同http:體系。用於安全的HTTP數據傳輸。https:URL表明它使用了HTTP,但HTTPS存在不同於HTTP的默認連線埠及一個加密/身份驗證層(在HTTP與TCP之間)。這個系統的最初研發由網景公司進行,提供了身份驗證與加密通訊方法,現在它被廣泛用於全球資訊網上安全敏感的通訊,例如交易支付方面。
限制:
它的安全保護依賴瀏覽器的正確實現以及伺服器軟體、實際加密算法的支持.
一種常見的誤解是“銀行用戶線上使用https:就能充分徹底保障他們的銀行卡號不被偷竊。”實際上,與伺服器的加密連線中能保護銀行卡號的部分,只有用戶到伺服器之間的連線及伺服器自身。並不能絕對確保伺服器自己是安全的,這點甚至已被攻擊者利用,常見例子是模仿銀行域名的釣魚攻擊。少數罕見攻擊在網站傳輸客戶數據時發生,攻擊者嘗試竊聽數據於傳輸中。
商業網站被人們期望迅速儘早引入新的特殊處理程式到金融網關,僅保留傳輸碼(transaction number)。不過他們常常存儲銀行卡號在同一個資料庫里。那些資料庫和伺服器少數情況有可能被未授權用戶攻擊和損害。
安裝配置指南
第一步:生成證書籤名請求檔案(CSR)
運行 IKEYMAN(在 IBMHTTPServer 的 BIN 目錄下)
第二步:提交 CSR,申請證書
遞交證書申請表及相關資料, 並把證書請求檔案( CSR )提交。確認資料齊全後,三個工作日內完成證書頒發。
第三步:獲取伺服器證書
獲取伺服器證書(此證書由系統通過Email 方式傳送給用戶),證書檔案的內容為(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”),請把此內容保存為 server.cer(文本格式),並獲取 GlobalSign 根證書和對應的中級證書。
第四步:安裝伺服器證書
點擊簽署人證書,添加根證書及中級證書。