http协议--笔记
HTTP協(xié)議的缺點(diǎn):
1.通信使用明文(不加密),內(nèi)容可能會被竊聽
2.不驗(yàn)證通信方的身份,因此有可能遭遇偽裝
3.無法證明報(bào)文的完整性,所以有可能已遭篡改
?
防止竊聽保護(hù)信息的幾種對策:加密技術(shù)
通信的加密
HTTP和SSL(Secure Socket Layer,安全套接層)或TLS(Transport Layer Security,安全層傳輸協(xié)議)的組合使用,加密HTTP的通信內(nèi)容。與SSL組合使用的HTTP被稱為HTTPS(HTTP Secure,超文本傳輸安全協(xié)議)或HTTP over SSL.
?
HTTP+加密+認(rèn)證+完整性保護(hù)=HTTPS
我們把添加了加密及認(rèn)證機(jī)制的HTTP稱為HTTPS(HTTP Secure)
HTTPS是身披SSL外殼的HTTP
HTTPS不是應(yīng)用層的一種新協(xié)議。只是HTTP通信接口部分用SSL(Secure Socket Layer)和TLS(Transport Layer Security)協(xié)議代替而已
通常,HTTP直接和TCP通信。當(dāng)使用SSL時,則演變成先和SSL通信,再由SSL和TCP通信了。
SSL是獨(dú)立于HTTP的協(xié)議,所以不光是HTTP協(xié)議,其他運(yùn)行在應(yīng)用層的SMTP和Telnet等協(xié)議均可配合SSL協(xié)議使用。SSL是當(dāng)今世界上應(yīng)用最為廣泛的網(wǎng)絡(luò)安全技術(shù)
?
近代的加密方法中加密算法是公開的,而密鑰卻是保密的。加密和解密都會用到密鑰。沒有密鑰就無法對密碼解密
共享密鑰加密的困境
加密和解密同用一個密鑰的方式稱為共享密鑰加密(Common key crypto system),也被叫做對稱密鑰加密
密鑰發(fā)送問題
發(fā)送密鑰就有被竊聽的風(fēng)險(xiǎn),但不發(fā)送,對方就不能解密。再說,密鑰若能夠安全發(fā)送,那數(shù)據(jù)也應(yīng)該能安全送達(dá)
使用兩把密鑰的公開密鑰加密
公開密鑰加密使用一對非對稱的密鑰。一把叫做私有密鑰(private key),另一把叫做公開密鑰(public key)
要想根據(jù)密文和公開密鑰,恢復(fù)到信息原文是異常困難的,因?yàn)榻饷苓^程就是在對離散對數(shù)進(jìn)行求值,這并非輕而易舉就能辦到。退一步講,如果能對一個非常大的整數(shù)做到快速地因式分解,那么密碼破解還是存在希望的。但就目前的技術(shù)來看是不太現(xiàn)實(shí)的
?
Ajax的核心技術(shù)是名為XMLHttpRequest的API,通過JavaScript腳本語言的調(diào)用就能和服務(wù)器進(jìn)行HTTP通信
使用HTTP協(xié)議探知服務(wù)器上是否有內(nèi)容更新,就必須頻繁地從客戶端到服務(wù)器端進(jìn)行確認(rèn)。如果服務(wù)器上沒有內(nèi)容更新,那么就會產(chǎn)生徒勞的通信。
想在現(xiàn)有WEB實(shí)現(xiàn)所需的功能,以下這些HTTP標(biāo)準(zhǔn)就會成為瓶頸
1.一條連接上只可發(fā)送一個請求
2.請求只能從客戶端開始,客戶端不可以接收除響應(yīng)以外的指令
3.請求/響應(yīng)首部未經(jīng)壓縮就發(fā)送。首部信息越多延遲越大
4.發(fā)送冗余的首部。每次互相發(fā)送相同的首部造次的浪費(fèi)較多
5.可任意選擇數(shù)據(jù)壓縮格式。非強(qiáng)制壓縮發(fā)送
SPDY沒有完全改寫HTTP協(xié)議,而是在TCP/IP的應(yīng)用層與運(yùn)輸層之間通過新加會話層的形式運(yùn)作。同時,考慮到安全性問題,SPDY規(guī)定通信中使用SSL
SPDY以會話層的形式加入,控制對數(shù)據(jù)的流動,但還是采用HTTP建立通信連接。因此,可照常使用HTTP的GET和POST等方法、Cookie以及HTTP報(bào)文等
使用SPDY后,HTTP協(xié)議額外獲得以下功能
多路復(fù)用流
通過單一的TCP連接,可以無限制處理多個HTTP請求。所有請求的處理都在一條TCP連接上完成,因此TCP的處理效率得到提高
賦予請求優(yōu)先級
SPDY不僅可以無限制地并發(fā)處理請求,還可以給請求逐個分配優(yōu)先級順序。這樣主要是為了在發(fā)送多個請求時,解決因帶寬低而導(dǎo)致響應(yīng)變慢的問題
壓縮HTTP首部
壓縮HTTP請求和響應(yīng)的首部。這樣一來,通信產(chǎn)生的數(shù)據(jù)包數(shù)量和發(fā)送的字節(jié)數(shù)就更少了
推送功能
支持服務(wù)器主動向客戶端推送數(shù)據(jù)的功能。這樣,服務(wù)器可直接發(fā)送數(shù)據(jù),而不必等待客戶端的請求
服務(wù)器提示功能
服務(wù)器可以主動提示客戶端請求所需的資源。由于在客戶端發(fā)現(xiàn)資源之前就可以獲知資源的存在,因此在資源已緩存等情況下,可以避免發(fā)送不必要的請求。
不足:SPDY基本上只是將單個域名(IP地址)的通信多路復(fù)用,所以當(dāng)一個Web網(wǎng)站上使用多個域名下的資源,改善效果就會受到限制
WebSocket的設(shè)計(jì)與功能
WebSocket,即Web瀏覽器與Web服務(wù)器之間全雙工通信標(biāo)準(zhǔn)。仍在開發(fā)中的WebSocket技術(shù)主要是為了解決Ajax和Comet里XMLHttpRequest附帶的缺陷所引起的問題
轉(zhuǎn)載于:https://www.cnblogs.com/919czzl/p/4946236.html
總結(jié)
以上是生活随笔為你收集整理的http协议--笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 0920,结构体
- 下一篇: .NET Nancy 详解(三) Res