2009-08-01 105 views
2

我決定使用SSL加密我的整個網站,即使只有部分實際上是必要的。最終結果是該網站現在有點慢。所以,我的問題是:SSL速度:128 vs 256位

  1. 我應該只加密該網站的成員部分(記住我有登錄表單的首頁)?
  2. 我應該減少加密到128位?

如果網站一般很小,速度差異是否顯着?

然後,有沒有人知道一個好的網站或方法,你可以看到你的網站的真實速度在行中幾次?即緩存不會影響您的結果?

回答

3

有幾個不同的因素影響SSL速度。

  1. 服務器負載。您將通過加密所有流量來增加服務器的CPU工作負載。但是,尤其是在現代硬件上,除了非常高的流量站點之外,這不應該導致真正明顯的差異。

  2. 對稱加密的密鑰大小。我假設這是你的意思是將加密減少到128位。這可能不是整體速度的重要因素。您可以通過運行例如基準測試openssl。 openssl speed aes。您可能會發現AES 256並不比AES 128慢很多。

  3. SSL握手速度。 SSL握手引入了簡單HTTP中不需要的客戶端和服務器之間的其他幾次往返。這意味着特別是在高延遲鏈路上,在你開始從服務器獲取任何數據之前,它會更長。爲了減輕這一點,你可以做一些不同的事情:

    a。使用2048位RSA私鑰。這是目前推薦的尺寸作爲安全和速度之間的權衡。較大的密鑰在客戶端和服務器之間傳輸需要更長的時間,並且會稍微佔用更多的CPU資源。 (見openssl speed rsa2048 rsa4096。)

    b。確保您使用HTTP Keepalive和SSL會話恢復。 HTTP keepalive將允許客戶端重複使用現有連接到服務器以處理多個請求,從而避免再次建立連接。 SSL會話恢復允許客戶端和服務器使用他們先前商定的SSL參數更快速地啓動新會話,從而減少新請求所需的往返數據包數量。

當只有部分頁面通過SSL提供時,獲得正確保護可能非常棘手。您肯定會想要通過HTTPS提供登錄表單和其發佈的頁面。您還應該在會話cookie上設置Secure標誌,否則與服務器的任何純文本通信都將包含cookie並允許竊聽者模擬用戶的會話。

但是總的來說,試圖弄清楚哪些頁面需要保護,因爲加密所有內容是多麼容易。爲了獲得最佳安全性,您還應確保已設置好您的Web服務器,使其通過Qualys SSL實驗室的SSL Server Test

好的基準測試工具可能取決於您的平臺。如果你使用的是linux,你可以嘗試使用apache:http://en.wikipedia.org/wiki/ApacheBench附帶的ab命令。

+0

我會說「和」 - 不是「和/或」。如果任一服務不安全,則可以對其進行修改或讀取,從而使整個過程不安全。 – 2013-05-31 23:06:24

相關問題