漲知è˜(shÃ)時(shÃ)é–“:httpså’Œhttp有什么å€(qÅ«)別
什么是 HTTPS?
HTTPS (基于安全套接å—層的超文本傳輸å”(xié)è° æˆ–è€…æ˜¯ HTTP over SSL) 是一個(gè) Netscape é–‹(kÄi)發(fÄ)çš„ Web å”(xié)è°ã€‚
ä½ ä¹Ÿå¯ä»¥èªª(shuÅ):HTTPS = HTTP + SSL
HTTPS 在 HTTP 應(yÄ«ng)用層的基礎(chÇ”)上使用安全套接å—層作為å層。
ç‚ºä»€ä¹ˆéœ€è¦ HTTPS ?
超文本傳輸å”(xié)è° (HTTP) 是一個(gè)用來(lái)通éŽ(guò)互è¯(lián)ç¶²(wÇŽng)傳輸和接收信æ¯çš„å”(xié)è°ã€‚HTTP 使用請(qÇng)求/響應(yÄ«ng)çš„éŽ(guò)ç¨‹ï¼Œå› æ¤ä¿¡æ¯å¯åœ¨æœå‹™(wù)器間快速ã€è¼•æ¾è€Œä¸”精確的進(jìn)行傳輸。當(dÄng)ä½ è¨ªå•(wèn) Web é (yè)é¢çš„æ™‚(shÃ)å€™ä½ å°±æ˜¯åœ¨ä½¿ç”¨ HTTP å”(xié)è°ï¼Œä½† HTTP 是ä¸å®‰å…¨çš„,å¯ä»¥è¼•æ¾å°(duì)竊è½(tÄ«ng)ä½ è·Ÿ Web æœå‹™(wù)器之間的數(shù)據(jù)傳輸。在很多情æ³ä¸‹ï¼Œå®¢æˆ¶å’Œæœå‹™(wù)器之間傳輸?shù)氖敲舾行?,需è¦é˜²æ¢æœª?jÄ«ng)授權(quán)的訪å•(wèn)。為了滿足這個(gè)è¦æ±‚,網(wÇŽng)景公å¸(Netscape)推出了HTTPS,也就是基于安全套接å—層的 HTTP å”(xié)è°ã€‚
HTTP å’Œ HTTPS 的相åŒé»ž(diÇŽn)
大多數(shù)情æ³ä¸‹ï¼ŒHTTP å’Œ HTTPS 是相åŒçš„ï¼Œå› ?yà n)æ§Žé™…é£æŽçŒ›îƒç²‹â‚¬(gè)基礎(chÇ”)çš„å”(xié)è°ï¼Œä½œç‚º HTTP 或 HTTPS 客戶端——ç€è¦½å™¨ï¼Œè¨(shè)立一個(gè)連接到 Web æœå‹™(wù)器指定的端å£ã€‚ç•¶(dÄng)æœå‹™(wù)器接收到請(qÇng)求,它會(huì)返回一個(gè)狀態(tà i)ç¢¼ä»¥åŠæ¶ˆæ¯ï¼Œé€™å€‹(gè)回應(yÄ«ng)å¯èƒ½æ˜¯è«‹(qÇng)求信æ¯ã€æˆ–者指示æŸå€‹(gè)錯(cuò)誤發(fÄ)é€çš„錯(cuò)誤信æ¯ã€‚系統(tÇ’ng)使用統(tÇ’ng)一資æºå®šä½å™¨ URI 模å¼ï¼Œå› æ¤è³‡æºå¯ä»¥è¢«å”¯ä¸€æŒ‡å®šã€‚而 HTTPS å’Œ HTTP 唯一ä¸åŒçš„åªæ˜¯ä¸€å€‹(gè)å”(xié)è°é (https)的說(shuÅ)明,其他都是一樣的。
HTTP å’Œ HTTPS çš„ä¸åŒä¹‹è™•
HTTP çš„ URL 以 http:// é–‹(kÄi)é ,而 HTTPS çš„ URL 以 https:// é–‹(kÄi)é
HTTP 是ä¸å®‰å…¨çš„,而 HTTPS 是安全的
HTTP 標(biÄo)準(zhÇ”n)ç«¯å£æ˜¯ 80 ,而 HTTPS 的標(biÄo)準(zhÇ”n)ç«¯å£æ˜¯ 443
在 OSI ç¶²(wÇŽng)絡(luò)模型ä¸ï¼ŒHTTP 工作于應(yÄ«ng)用層,而 HTTPS 工作在傳輸層
HTTP ç„¡(wú)éœ€åŠ å¯†ï¼Œè€Œ HTTPS å°(duì)傳輸?shù)臄?shù)據(jù)進(jìn)è¡ŒåŠ å¯†
HTTP ç„¡(wú)éœ€è‰æ›¸ï¼Œè€Œ HTTPS 需è¦èª(rèn)è‰è‰æ›¸
HTTPS 如何工作?
使用 HTTPS 連接時(shÃ),æœå‹™(wù)å™¨è¦æ±‚有公鑰和簽åçš„è‰æ›¸ã€‚
ç•¶(dÄng)使用 https 連接,æœå‹™(wù)器響應(yÄ«ng)åˆå§‹é€£æŽ¥ï¼Œå¹¶æä¾›å®ƒæ‰€æ”¯æŒçš„åŠ å¯†æ–¹æ³•ã€‚ä½œç‚ºå›žæ‡‰(yÄ«ng)ï¼Œå®¢æˆ¶ç«¯é¸æ“‡ä¸€å€‹(gè)連接方法,并且客戶端和æœå‹™(wù)器端交æ›è‰æ›¸é©—(yà n)è‰å½¼æ¤èº«ä»½ã€‚完æˆä¹‹åŽï¼Œåœ¨ç¢ºä¿ä½¿ç”¨ç›¸åŒå¯†é‘°çš„æƒ…æ³ä¸‹å‚³è¼¸åŠ å¯†ä¿¡æ¯ï¼Œç„¶åŽé—œ(guÄn)閉連接。為了æä¾› https 連接支æŒï¼Œæœå‹™(wù)å™¨å¿…é ˆæœ‰ä¸€å€‹(gè)å…¬é‘°è‰æ›¸ï¼Œè©²è‰æ›¸åŒ…å«ç¶“(jÄ«ng)éŽ(guò)è‰æ›¸æ©Ÿ(jÄ«)æ§‹(gòu)èª(rèn)è‰çš„密鑰信æ¯ï¼Œå¤§éƒ¨åˆ†è‰æ›¸éƒ½æ˜¯é€šéŽ(guò)第三方機(jÄ«)æ§‹(gòu)授權(quán)的,以ä¿è‰è‰æ›¸æ˜¯å®‰å…¨çš„。
æ›å¥è©±èªª(shuÅ),HTTPS è·Ÿ HTTP 一樣,åªä¸éŽ(guò)å¢žåŠ äº† SSL。
HTTP 包å«å¦‚下動(dòng)作:
ç€è¦½å™¨æ‰“é–‹(kÄi)一個(gè) TCP 連接
ç€è¦½å™¨ç™¼(fÄ)é€ HTTP è«‹(qÇng)求到æœå‹™(wù)器端
æœå‹™(wù)器發(fÄ)é€ HTTP 回應(yÄ«ng)ä¿¡æ¯åˆ°ç€è¦½å™¨
TCP 連接關(guÄn)é–‰
SSL 包å«å¦‚下動(dòng)作:
é©—(yà n)è‰æœå‹™(wù)器端
å…許客戶端和æœå‹™(wù)å™¨ç«¯é¸æ“‡åŠ å¯†ç®—æ³•å’Œå¯†ç¢¼ï¼Œç¢ºä¿é›™æ–¹éƒ½æ”¯æŒ
é©—(yà n)è‰å®¢æˆ¶ç«¯(å¯é¸)
ä½¿ç”¨å…¬é‘°åŠ å¯†æŠ€è¡“(shù)來(lái)生æˆå…±äº«åŠ å¯†æ•¸(shù)據(jù)
創(chuà ng)建一個(gè)åŠ å¯†çš„ SSL 連接
基于該 SSL é€£æŽ¥å‚³éž HTTP è«‹(qÇng)求
什么時(shÃ)候該使用 HTTPS?
銀行網(wÇŽng)ç«™ã€æ”¯ä»˜ç¶²(wÇŽng)é—œ(guÄn)ã€è³¼(gòu)物網(wÇŽng)ç«™ã€ç™»éŒ„é (yè)ã€é›»å郵件以åŠä¸€äº›ä¼æ¥(yè)部門的網(wÇŽng)站應(yÄ«ng)該使用 HTTPS,例如:
PayPal: https://www.paypal.com
Google AdSense: https://www.google.com/adsense/
如果æŸå€‹(gè)ç¶²(wÇŽng)ç«™è¦æ±‚ä½ å¡«å¯«ä¿¡ç”¨å¡ä¿¡æ¯ï¼Œé¦–å…ˆä½ è¦æª¢æŸ¥è©²ç¶²(wÇŽng)é (yè)是å¦ä½¿ç”¨ https åŠ å¯†é€£æŽ¥ï¼Œå¦‚æžœæ²’(méi)有,那么請(qÇng)ä¸è¦è¼¸å…¥ä»»ä½•æ•æ„Ÿä¿¡æ¯å¦‚信用å¡è™Ÿ(hà o)。
ç€è¦½å™¨é›†æˆ
多數(shù)ç€è¦½å™¨åœ¨æ”¶åˆ°ä¸€å€‹(gè)ç„¡(wú)æ•ˆè‰æ›¸çš„æ™‚(shÃ)候都會(huì)顯示è¦å‘Šä¿¡æ¯ï¼Œè€Œä¸€äº›è€çš„ç€è¦½å™¨æœƒ(huì)彈出å°(duì)è©±æ¡†è®“ç”¨æˆ¶é¸æ“‡æ˜¯å¦ç¹¼çºŒ(xù)ç€è¦½ã€‚æ–°çš„ç€è¦½å™¨ä¸€èˆ¬åœ¨æ•´å€‹(gè)窗å£é¡¯ç¤ºæ©«å¹…çš„è¦å‘Šä¿¡æ¯ï¼ŒåŒæ™‚(shÃ)åœ¨åœ°å€æ¬„上顯示該網(wÇŽng)站的安全信æ¯ã€‚如果網(wÇŽng)ç«™ä¸åŒ…å«åŠ å¯†å’ŒéžåŠ å¯†çš„æ··åˆå…§(nèi)容,多數(shù)ç€è¦½å™¨æœƒ(huì)æç¤ºè¦å‘Šä¿¡æ¯ã€‚
許多人以為,出于安全考慮,ç€è¦½å™¨ä¸æœƒ(huì)在本地ä¿å˜HTTPSç·©å˜ã€‚實(shÃ)際上,åªè¦åœ¨HTTPé ä¸ä½¿ç”¨ç‰¹å®šå‘½ä»¤ï¼ŒHTTPS是å¯ä»¥ç·©å˜çš„。
微軟的IEé …(xià ng)目經(jÄ«ng)ç†Eric Lawrence寫é“:
"說(shuÅ)來(lái)也許令人震驚,åªè¦HTTPé å…許這樣åšï¼Œæ‰€æœ‰ç‰ˆæœ¬çš„IE都緩å˜HTTPSå…§(nèi)容。比如,如果é 命令是Cache-Control:max-age=600,那么這個(gè)ç¶²(wÇŽng)é (yè)就將被IEç·©å˜10分é˜ã€‚IE的緩å˜ç–略,與是å¦ä½¿ç”¨HTTPSå”(xié)è°ç„¡(wú)é—œ(guÄn)。(其他ç€è¦½å™¨åœ¨é€™æ–¹é¢çš„行為ä¸ä¸€è‡´ï¼Œå–æ±ºäºŽä½ ä½¿ç”¨çš„ç‰ˆæœ¬ï¼Œæ‰€ä»¥é€™é‡Œä¸åŠ ä»¥è¨Žè«–ã€‚ï¼‰"