據我所知,通過SSL,瀏覽器獲取安全網站的公鑰,並通過公鑰加密rsa算法,這兩個建立會話密鑰,然後通過一些對稱算法繼續通信,因爲對稱密鑰加密/解密速度更快。 SSL使用哪種對稱密鑰算法? DES? AES?或者是其他東西?SSL使用哪種對稱密鑰算法?
回答
當客戶端連接到服務器時,它協商所謂的密碼組(加密組合,密鑰交換,認證算法)來使用。每個SSL客戶端或服務器都有一個允許的密碼套件列表,並且在握手過程中,客戶端和服務器協商使用哪種密碼套件。有時可能發生,沒有共同的分母(密碼套件不相交),並且無法建立連接。支持SSL的對稱算法有DES,3DES,ARCFOUR,AES,Camellia,RC2,IDEA,SEED,NULL(無加密)。
你忘了ARIA:http://tools.ietf.org/html/rfc6209 – Jumbogram 2011-05-23 01:00:33
@jumbogram感謝你指點這個RFC,我不知何故錯過了它。但是,我應該指出,嚴格來說這不是TLS的一部分。 RFC是「信息性的」而不是Sstandards Track,它具有非常本地化的用途(一個國家)。我還可以提到在前蘇聯很受歡迎的GOST,但它並沒有在其他地方使用過。 – 2011-05-23 06:18:06
幾種可能性包括RC4和DES甚至不加密。不,我知道不好,但我相信客戶端和服務器協商找到一個區域,他們既可以使用
在連接建立(「握手」)期間,客戶端和服務器決定使用「密碼套件」。密碼套件陳述使用的算法(非對稱密鑰協議,對稱加密和完整性檢查)。詳細地說,客戶端發送它支持的密碼套件的列表,並且服務器選擇其中的一個,它也支持它。通常,服務器在客戶端發送的客戶端中選擇它支持的第一個套件(換句話說,客戶端消息中的套件的排序是它的「優先順序」,服務器通常會尊重客戶端的首選項)。
例如,密碼套件TLS_RSA_WITH_3DES_EDE_CBC_SHA
意味着會話密鑰將使用RSA(非對稱加密,使用來自服務器證書的RSA公鑰)傳輸,數據將使用3DES進行對稱加密,並且完整性檢查將會使用SHA-1散列函數。有關標準密碼套件的列表,請參閱TLS specification(其他套件稍後添加,特別是一些帶有AES的套件)。
- 1. SSL對稱密鑰存儲在哪裏?
- 2. 對稱加密密鑰與非對稱密鑰-ssl
- 3. 對稱密鑰加密算法
- 4. 要使用哪種加密算法以及在哪裏存儲密鑰?
- 5. ProtectedData使用哪種加密算法?
- 6. 非對稱加密密鑰
- 7. 使用不對稱算法私鑰和公鑰與RSA C#
- 8. 非對稱密鑰切換的對稱密鑰
- 9. 你推薦哪種C加密框架用於對稱和非對稱加密?
- 10. x509非對稱算法的證書密鑰
- 11. SSL密鑰和用Java
- 12. 使用哪種加密方法?
- 13. 使用列名稱或對稱密鑰獲取證書名稱
- 14. 哪個加密算法在NSDataWritingFileProtection中使用iOS,密鑰大小是什麼?
- 15. 非對稱密鑰系統?
- 16. 對稱密鑰存儲
- 17. 帶對稱密鑰的RSA
- 18. 保護對稱密鑰
- 19. 用哪種對稱加密算法來加密電子郵件地址(短消息)?
- 20. 哪裏存儲加密算法的密鑰?
- 21. SortBy在Spark中使用哪種算法?
- 22. scipy.optimize.leastsq使用哪種優化算法?
- 23. Matlab在SVD中使用哪種算法?
- 24. rnorm函數使用哪種算法
- 25. 找出使用了哪種CRC16算法
- 26. 對稱加密密鑰通過行爲
- 27. 我應該使用哪種Google Maps API密鑰進行開發?
- 28. RSA算法密鑰生成
- 29. 使用對稱密鑰的文件加密
- 30. 在存儲過程中使用密碼打開對稱密鑰
http://en.wikipedia.org/wiki/Secure_Sockets_Layer#TLS_handshake_in_detail – 2011-05-22 14:38:48
總結其他人所說的話:有幾種選擇;連接中使用的內容取決於特定的客戶端和服務器。 – Jumbogram 2011-05-23 01:09:54