SSL(Secury Socket Layer)簡(jiǎn)介
Posted on 2007-01-31 22:29 acooly 閱讀(482) 評(píng)論(0) 編輯 收藏 所屬分類(lèi): 移動(dòng)電子商務(wù) 、技術(shù)名詞解釋??? SSL (Secure socket Layer)安全套接層協(xié)議主要是使用公開(kāi)密鑰體制和X.509數(shù)字證書(shū)技術(shù)保護(hù)信息傳輸?shù)臋C(jī)密性和完整性,它不能保證信息的不可抵賴性,主要適用于點(diǎn)對(duì)點(diǎn)之間的信息傳輸,常用Web Server方式。
安全套接層協(xié)議(SSL,Security Socket Layer)是網(wǎng)景(Netscape)公司提出的基于WEB應(yīng)用的安全協(xié)議,它包括:服務(wù)器認(rèn)證、客戶認(rèn)證(可選)、SSL鏈路上的數(shù)據(jù)完整性和SSL 鏈路上的數(shù)據(jù)保密性。對(duì)于電子商務(wù)應(yīng)用來(lái)說(shuō),使用SSL可保證信息的真實(shí)性、完整性和保密性。但由于SSL不對(duì)應(yīng)用層的消息進(jìn)行數(shù)字簽名,因此不能提供交易的不可否認(rèn)性,這是SSL在電子商務(wù)中使用的最大不足。有鑒于此,網(wǎng)景公司在從Communicator 4.04版開(kāi)始的所有瀏覽器中引入了一種被稱(chēng)作"表單簽名(Form Signing)"的功能,在電子商務(wù)中,可利用這一功能來(lái)對(duì)包含購(gòu)買(mǎi)者的訂購(gòu)信息和付款指令的表單進(jìn)行數(shù)字簽名,從而保證交易信息的不可否認(rèn)性。綜上所述,在電子商務(wù)中采用單一的SSL協(xié)議來(lái)保證交易的安全是不夠的,但采用"SSL+表單簽名"模式能夠?yàn)殡娮由虅?wù)提供較好的安全性保證
安全套接層協(xié)議(SSL,Security Socket Layer)是網(wǎng)景(Netscape)公司提出的基于WEB應(yīng)用的安全協(xié)議,它包括:服務(wù)器認(rèn)證、客戶認(rèn)證(可選)、SSL鏈路上的數(shù)據(jù)完整性和SSL 鏈路上的數(shù)據(jù)保密性。對(duì)于電子商務(wù)應(yīng)用來(lái)說(shuō),使用SSL可保證信息的真實(shí)性、完整性和保密性。但由于SSL不對(duì)應(yīng)用層的消息進(jìn)行數(shù)字簽名,因此不能提供交易的不可否認(rèn)性,這是SSL在電子商務(wù)中使用的最大不足。有鑒于此,網(wǎng)景公司在從Communicator 4.04版開(kāi)始的所有瀏覽器中引入了一種被稱(chēng)作"表單簽名(Form Signing)"的功能,在電子商務(wù)中,可利用這一功能來(lái)對(duì)包含購(gòu)買(mǎi)者的訂購(gòu)信息和付款指令的表單進(jìn)行數(shù)字簽名,從而保證交易信息的不可否認(rèn)性。綜上所述,在電子商務(wù)中采用單一的SSL協(xié)議來(lái)保證交易的安全是不夠的,但采用"SSL+表單簽名"模式能夠?yàn)殡娮由虅?wù)提供較好的安全性保證
??? SSL協(xié)議使用不對(duì)稱(chēng)加密技術(shù)實(shí)現(xiàn)會(huì)話雙方之間信息的安全傳遞。可以實(shí)現(xiàn)信息傳遞的保密性、完整性,并且會(huì)話雙方能鑒別對(duì)方身份。不同于常用的http協(xié)議,我們?cè)谂c網(wǎng)站建立SSL安全連接時(shí)使用https協(xié)議,即采用https://ip:port/的方式來(lái)訪問(wèn)。
當(dāng)我們與一個(gè)網(wǎng)站建立https連接時(shí),我們的瀏覽器與Web Server之間要經(jīng)過(guò)一個(gè)握手的過(guò)程來(lái)完成身份鑒定與密鑰交換,從而建立安全連接。具體過(guò)程如下:
- 用戶瀏覽器將其SSL版本號(hào)、加密設(shè)置參數(shù)、與session有關(guān)的數(shù)據(jù)以及其它一些必要信息發(fā)送到服務(wù)器。
- 服務(wù)器將其SSL版本號(hào)、加密設(shè)置參數(shù)、與session有關(guān)的數(shù)據(jù)以及其它一些必要信息發(fā)送給瀏覽器,同時(shí)發(fā)給瀏覽器的還有服務(wù)器的證書(shū)。如果配置服務(wù)器的SSL需要驗(yàn)證用戶身份,還要發(fā)出請(qǐng)求要求瀏覽器提供用戶證書(shū)。
- 客戶端檢查服務(wù)器證書(shū),如果檢查失敗,提示不能建立SSL連接。如果成功,那么繼續(xù)。
- 客戶端瀏覽器為本次會(huì)話生成pre-master secret,并將其用服務(wù)器公鑰加密后發(fā)送給服務(wù)器。
- 如果服務(wù)器要求鑒別客戶身份,客戶端還要再對(duì)另外一些數(shù)據(jù)簽名后并將其與客戶端證書(shū)一起發(fā)送給服務(wù)器。
- 如果服務(wù)器要求鑒別客戶身份,則檢查簽署客戶證書(shū)的CA是否可信。如果不在信任列表中,結(jié)束本次會(huì)話。如果檢查通過(guò),服務(wù)器用自己的私鑰解密收到的pre-master secret,并用它通過(guò)某些算法生成本次會(huì)話的master secret。
- 客戶端與服務(wù)器均使用此master secret生成本次會(huì)話的會(huì)話密鑰(對(duì)稱(chēng)密鑰)。在雙方SSL握手結(jié)束后傳遞任何消息均使用此會(huì)話密鑰。這樣做的主要原因是對(duì)稱(chēng)加密比非對(duì)稱(chēng)加密的運(yùn)算量低一個(gè)數(shù)量級(jí)以上,能夠顯著提高雙方會(huì)話時(shí)的運(yùn)算速度。
- 客戶端通知服務(wù)器此后發(fā)送的消息都使用這個(gè)會(huì)話密鑰進(jìn)行加密。并通知服務(wù)器客戶端已經(jīng)完成本次SSL握手。
- 服務(wù)器通知客戶端此后發(fā)送的消息都使用這個(gè)會(huì)話密鑰進(jìn)行加密。并通知客戶端服務(wù)器已經(jīng)完成本次SSL握手。
- 本次握手過(guò)程結(jié)束,會(huì)話已經(jīng)建立。雙方使用同一個(gè)會(huì)話密鑰分別對(duì)發(fā)送以及接受的信息進(jìn)行加、解密。