筆記

          way

          SSL

          1 . SSL(Server Socket Layer) 簡介

          在網絡上信息在源 - 宿的傳遞過程中會經過其它的計算機。一般情況下,中間的計算機不會監聽路過的信息。但在使用網上銀行或者進行信用卡交易的時候有可能被監視,從而導致個人 隱私的泄露。由于 Internet 和 Intranet 體系結構的原因,總有某些人能夠讀取并替換用戶發出的信息。隨著網上支付的不斷發展,人們對信息安全的要求越來越高。因此 Netscape 公司提出了 SSL 協議,旨在達到在開放網絡 (Internet) 上安全保密地傳輸信息的目的,這種協議在 WEB 上獲得了廣泛的應用。 之后 IETF(ietf.org) 對 SSL 作了標準化,即 RFC2246 ,并將其稱為 TLS ( Transport Layer Security ),從技術上講, TLS1.0 與 SSL3.0 的差別非常微小。

          2 . SSL 工作原理

          SSL 協議使用不對稱加密技術實現會話雙方之間信息的安全傳遞。可以實現信息傳遞的保密性、完整性,并且會話雙方能鑒別對方身份。不同于常用的 http 協議,我們在與網站建立 SSL 安全連接時使用 https 協議,即采用 https://ip:port/ 的方式來訪問。當我們與一個網站建立 https 連接時,我們的瀏覽器與 Web Server 之間要經過一個握手的過程來完成身份鑒定與密鑰交換,從而建立安全連接。具體過程如下:

          用戶瀏覽器將其 SSL 版本號、加密設置參數、與 session 有關的數據以及其它一些必要信息發送到服務器。

          服務器將其 SSL 版本號、加密設置參數、與 session 有關的數據以及其它一些必要信息發送給瀏覽器,同時發給瀏覽器的還有服務器的證書。如果配置服務器的 SSL 需要驗證用戶身份,還要發出請求要求瀏覽器提供用戶證書。

          客戶端檢查服務器證書,如果檢查失敗,提示不能建立 SSL 連接。如果成功,那么繼續。客戶端瀏覽器為本次會話生成 pre-master secret ,并將其用服務器公鑰加密后發送給服務器。如果服務器要求鑒別客戶身份,客戶端還要再對另外一些數據簽名后并將其與客戶端證書一起發送給服務器。

          如果服務器要求鑒別客戶身份,則檢查簽署客戶證書的 CA 是否可信。如果不在信任列表中,結束本次會話。如果檢查通過,服務器用自己的私鑰解密收到的 pre-master secret ,并用它通過某些算法生成本次會話的 master secret 。

          客戶端與服務器均使用此 master secret 生成本次會話的會話密鑰 ( 對稱密鑰 ) 。在雙方 SSL 握手結束后傳遞任何消息均使用此會話密鑰。這樣做的主要原因是對稱加密比非對稱加密的運算量低一個數量級以上,能夠顯著提高雙方會話時的運算速度。

          客戶端通知服務器此后發送的消息都使用這個會話密鑰進行加密。并通知服務器客戶端已經完成本次 SSL 握手。

          服務器通知客戶端此后發送的消息都使用這個會話密鑰進行加密。并通知客戶端服務器已經完成本次 SSL 握手。

          本次握手過程結束,會話已經建立。雙方使用同一個會話密鑰分別對發送以及接受的信息進行加、解密。

          posted on 2009-11-12 17:38 yuxh 閱讀(178) 評論(0)  編輯  收藏 所屬分類: 協議


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          導航

          <2009年11月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          統計

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          收藏夾

          博客

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 安图县| 屯门区| 建瓯市| 营山县| 龙岩市| 丽江市| 呼伦贝尔市| 江西省| 汉源县| 梅河口市| 荆州市| 隆子县| 江永县| 亚东县| 中方县| 邹城市| 京山县| 德庆县| 光泽县| 喀什市| 石泉县| 万年县| 金坛市| 永仁县| 乐业县| 饶河县| 乌什县| 安达市| 措美县| 新巴尔虎左旗| 玛曲县| 祁东县| 乌什县| 双鸭山市| 陆丰市| 江油市| 嘉鱼县| 通江县| 昭觉县| 唐河县| 舞钢市|