3.4.2 https的實作原理
有兩種基本的加解密演算法類型:
1)對稱加密:金鑰只有一個,加密解密為同一個密碼,且加解密速度快,典型的對稱加密演算法有DES、AES等;
2)非對稱加密:金鑰成對出現(且根據公鑰無法推知私鑰,根據私鑰也無法推知公鑰),加密解密使用不同金鑰(公鑰加密需要私鑰解密,私鑰加密需要公鑰解密),相對對稱加密速度較慢,典型的非對稱加密演算法有RSA、DSA等。
下面看一下https的通訊流程:
https通訊的優點:
1)客戶端產生的金鑰只有客戶端和伺服器端能得到;
2)加密的資料只有客戶端和金鑰只有客戶端和金鑰伺服器端才能得到明文;
3)客戶端到服務端的通訊是安全的。
3.5 http代理
3.5.1 http代理伺服器
代理伺服器英文全名為Proxy Server,其功能就是代理網路使用者去取得網路資訊。形象的說:它是網路資訊的中轉站。
代理伺服器是介於瀏覽器和Web伺服器之間的一台伺服器,有了它之後,瀏覽器不是直接到Web伺服器去取回網頁而是向代理伺服器發出請求,Request訊號會先送到代理伺服器,由代理伺服器來取回瀏覽器所需的資訊並傳送給你的瀏覽器。
而且,大部分代理伺服器都具有緩衝的功能,就好像一個大的Cache,它有很大的儲存空間,它不斷將新取得資料儲存到它本機的記憶體上,如果瀏覽器所要求的資料在它本機的記憶體上已經存在而且是最新的,那麼它就不重新從Web伺服器取數據,而直接將記憶體上的資料傳送給使用者的瀏覽器,這樣就能顯著提高瀏覽速度和效率。
更重要的是:Proxy Server(代理伺服器)是Internet鏈路級網關所提供的一種重要的安全功能,它的工作主要在開放系統互聯(OSI)模型的對話層。
3.5.2 http代理伺服器的主要功能
主要功能如下:
1)突破自身IP存取限制,造訪國外站點。如:教育網、169網等網路使用者可以透過代理人造訪國外網站;
2)存取一些單位或團體內部資源,如某大學FTP(前提是該代理地址在該資源的允許存取範圍之內),使用教育網內地址段免費代理伺服器,就可以用於對教育網開放的各類FTP下載上傳,以及各類資料查詢共享等服務;
3)突破中國電信的IP封鎖:中國電信用戶有很多網站是被限制存取的,這種限制是人為的,不同Serve對地址的封鎖是不同的。所以不能訪問時可以換一個國外的代理伺服器試試;
4)提高訪問速度:通常代理伺服器都設定一個較大的硬碟緩衝區,當有外界的資訊通過時,同時也將其保存到緩衝區中,當其他用戶再次訪問相同的信息時, 則直接由緩衝區中取出信息,傳給用戶,以提高訪問速度;
5)隱藏真實IP:上網者也可以通過這種方法隱藏自己的IP,免受攻擊。
3.5.3 http代理圖示
http代理程式的圖示請見下圖:
對於客戶端瀏覽器而言,http代理伺服器相當於伺服器。
而對於Web伺服器而言,http代理伺服器又擔任了客戶端的角色。
3.6 虛擬主機的實作
3.6.1什麼是虛擬主機
虛擬主機:是在網頁伺服器上分割出一定的磁碟空間供使用者放置網站、應用元件等,提供必要的網站功能與資料存放、傳輸功能。
所謂虛擬主機,也叫「網站空間」就是把一台運行在互聯網上的伺服器劃分成多個「虛擬」的伺服器,每一個虛擬主機都具有獨立的網域和完整的Internet伺服器(支援WWW、 FTP、E-mail等)功能。一台伺服器上的不同虛擬主機是各自獨立的,並由使用者自行管理。但一台伺服器主機只能夠支援一定數量的虛擬主機,當超過這個數量時,使用者將會感到效能急劇下降。
3.6.2虛擬主機的實作原理
虛擬主機是使用同一個WEB伺服器,為不同網域網站提供服務的技術。 Apache、Tomcat等均可透過設定實現此功能。
相關的HTTP訊息標頭:Host。
例如:Host: www.baidu.com
客戶端發送HTTP請求的時候,會攜帶Host頭,Host頭記錄的是客戶端輸入的網域名稱。這樣伺服器可以根據Host頭確認客戶要存取的是哪一個網域。