昨天Jim突然問我,SSH和SSL有甚么不1樣嗎?我1聽,是啊,有甚么區(qū)分嗎?...實(shí)事求是得告知他我不知道:(
晚上回來查了查,呵呵,了解啦.
在OSI7層模型中,這兩個(gè)安全傳輸協(xié)議其實(shí)都是建立在利用層上的:
(圖片來源:Wikipedia)
在最初的設(shè)計(jì)意圖中,SSL(Secure Sockets Layer (SSL) and Transport Layer Security (TLS))被設(shè)計(jì)為加強(qiáng)Web安全傳輸(HTTP/HTTPS/)的協(xié)議(事實(shí)上還有SMTP/NNTP等),SSH(Secure Shell)更多的則被設(shè)計(jì)為加強(qiáng)Telnet/FTP安全的傳輸協(xié)議,默許地,它使用22端口.
以SSL為例,基本上SSL在傳輸進(jìn)程中所處的位置以下:
---------
| HTTP |
---------
| SSL |
---------
| TCP |
---------
| IP |
---------
如果利用SSL協(xié)議來訪問網(wǎng)頁,其步驟以下:
用戶:在閱讀器的地址欄里輸入https://www.sslserver.com
HTTP層:將用戶需求翻譯成HTTP要求,如
GET /index.htm HTTP/1.1
Host http://www.sslserver.com
SSL層: 借助下層協(xié)議的的信道安全的協(xié)商出1份加密密鑰,并用此密鑰來加密HTTP要求。
TCP層:與web server的443端口建立連接,傳遞SSL處理后的數(shù)據(jù)。
接收端與此進(jìn)程相反。
SSL在TCP之上建立了1個(gè)加密通道,通過這1層的數(shù)據(jù)經(jīng)過了加密,因此到達(dá)保密的效果。
SSL協(xié)議分為兩部份:Handshake Protocol和Record Protocol,。其中Handshake Protocol
用來協(xié)商密鑰,協(xié)議的大部份內(nèi)容就是通訊雙方如何利用它來安全的協(xié)商出1份密鑰。 Re
cord Protocol則定義了傳輸?shù)?#26684;式。
參考文章:
[1]Secure Shell
http://en.wikipedia.org/wiki/Secure_Shell
[2]Transport Layer Security
http://en.wikipedia.org/wiki/Transport_Layer_Security
[3]SSL/TLS/WTLS原理
http://groups.google.com/group/cn.bbs.comp.ms-windows/browse_thread/thread/e8508d4535c81d2b/2cca1b45b182ceff%232cca1b45b182ceff
[4]What is the difference between SSH and SSL?
http://www.rpatrick.com/tech/ssh-ssl/
轉(zhuǎn)自:http://blog.chinaunix.net/uid⑴2072359-id⑵960969.html