HTTP和HTTPS的區(qū)別和聯(lián)系

(一)HTTP和HITTPS的基本概念

HTTP:超文本傳輸協(xié)議(HTTP寡壮,HyperText Transfer Protocol)是互聯(lián)網(wǎng)上應(yīng)用最為廣泛的一種網(wǎng)絡(luò)協(xié)議,是一個(gè)客戶端和服務(wù)器端請(qǐng)求和應(yīng)答的標(biāo)準(zhǔn)(TCP)衅斩,用于從WWW服務(wù)器傳輸超文本到本地瀏覽器的傳輸協(xié)議盆顾,它可以使瀏覽器更加高效,使網(wǎng)絡(luò)傳輸減少畏梆。
HTTPS:(全稱(chēng):Hyper Text Transfer Protocol over Secure Socket Layer)您宪,是以安全為目標(biāo)的HTTP通道,簡(jiǎn)單講是HTTP的安全版奠涌。即HTTP下加入SSL層宪巨,HTTPS的安全基礎(chǔ)是SSL,因此加密的詳細(xì)內(nèi)容就需要SSL溜畅。 它是一個(gè)URI scheme(抽象標(biāo)識(shí)符體系)捏卓,句法類(lèi)同http:體系。用于安全的HTTP數(shù)據(jù)傳輸慈格。https:URL表明它使用了HTTP怠晴,但HTTPS存在不同于HTTP的默認(rèn)端口及一個(gè)加密/身份驗(yàn)證層(在HTTP與TCP之間)。這個(gè)系統(tǒng)的最初研發(fā)由網(wǎng)景公司(Netscape)進(jìn)行浴捆,并內(nèi)置于其瀏覽器Netscape Navigator中蒜田,提供了身份驗(yàn)證與加密通訊方法。現(xiàn)在它被廣泛用于萬(wàn)維網(wǎng)上安全敏感的通訊选泻,例如交易支付方面冲粤。

HTTPS協(xié)議的主要作用可以分為兩種:一種是建立一個(gè)信息安全通道,來(lái)保證數(shù)據(jù)傳輸?shù)陌踩趁校涣硪环N就是確認(rèn)網(wǎng)站的真實(shí)性梯捕。

(二)HTTP和HTTPS的區(qū)別

HTTPS協(xié)議是由SSL+HTTP協(xié)議構(gòu)建的可進(jìn)行加密傳輸、身份認(rèn)證的網(wǎng)絡(luò)協(xié)議

HTTPS=HTTP+SSL

HTTPS和HTTP的區(qū)別主要如下:

1窝撵、https協(xié)議需要到ca申請(qǐng)證書(shū)傀顾,一般免費(fèi)證書(shū)較少,因而需要一定費(fèi)用碌奉。
2短曾、http是超文本傳輸協(xié)議,信息是明文傳輸道批,https則是具有安全性的ssl加密傳輸協(xié)議错英。
3入撒、http和https使用的是完全不同的連接方式隆豹,用的端口也不一樣,前者是80茅逮,后者是443璃赡。
4判哥、http的連接很簡(jiǎn)單,是無(wú)狀態(tài)的碉考;HTTPS協(xié)議是由SSL+HTTP協(xié)議構(gòu)建的可進(jìn)行加密傳輸塌计、身份認(rèn)證的網(wǎng)絡(luò)協(xié)議,比http協(xié)議安全侯谁。

(三)HTTP工作原理

客戶端與服務(wù)器建立連接后锌仅,發(fā)送一個(gè)請(qǐng)求給服務(wù)器,請(qǐng)求格式為:統(tǒng)一資源標(biāo)識(shí)符墙贱、協(xié)議版本號(hào)热芹。服務(wù)器收到請(qǐng)求的信息(包括請(qǐng)求行,請(qǐng)求頭惨撇,請(qǐng)求體)伊脓。服務(wù)器接收到請(qǐng)求后,給予相應(yīng)的響應(yīng)信息魁衙,格式為一個(gè)狀態(tài)行(包括響應(yīng)行报腔,響應(yīng)頭,響應(yīng)體)剖淀。

在internet上纯蛾,http通訊通常發(fā)生在TCP/IP連接之上。缺省端口是TCP的80端口祷蝌。

基于HTTP協(xié)議的客戶/服務(wù)器模式的信息交換過(guò)程茅撞,分為四個(gè)過(guò)程:建立連接、發(fā)送請(qǐng)求信息巨朦、發(fā)送響應(yīng)信息米丘、關(guān)閉連接。

服務(wù)器可能同時(shí)接受多個(gè)請(qǐng)求糊啡,這時(shí)就會(huì)產(chǎn)生多個(gè)sessoin拄查,每個(gè)session分別處理各自的請(qǐng)求。
HTTP的工作過(guò)程
一次HTTP操作稱(chēng)為一個(gè)事務(wù)棚蓄,其工作整個(gè)過(guò)程如下:

1)堕扶、地址解析

如用客戶端瀏覽器請(qǐng)求這個(gè)頁(yè)面:http://localhost.com:8080/index.htm

 從中分解出協(xié)議名、主機(jī)名梭依、端口稍算、對(duì)象路徑等部分,對(duì)于我們的這個(gè)地址役拴,解析得到的結(jié)果如下:
 協(xié)議名:http
 主機(jī)名:localhost.com
 端口:8080
 對(duì)象路徑:/index.html

在這一步糊探,需要域名系統(tǒng)DNS解析域名localhost.com,得主機(jī)的IP地址。

2)、封裝HTTP請(qǐng)求數(shù)據(jù)包

把以上部分結(jié)合本機(jī)自己的信息科平,封裝成一個(gè)HTTP請(qǐng)求數(shù)據(jù)包

3)封裝成TCP包褥紫,建立TCP連接(TCP的三次握手)

在HTTP工作開(kāi)始之前,客戶機(jī)(Web瀏覽器)首先要通過(guò)網(wǎng)絡(luò)與服務(wù)器建立連接瞪慧,該連接是通過(guò)TCP來(lái)完成的髓考,該協(xié)議與IP協(xié)議共同構(gòu)建Internet,即著名的TCP/IP協(xié)議族弃酌,因此Internet又被稱(chēng)作是TCP/IP網(wǎng)絡(luò)氨菇。HTTP是比TCP更高層次的應(yīng)用層協(xié)議,根據(jù)規(guī)則妓湘,只有低層協(xié)議建立之后才能门驾,才能進(jìn)行更層協(xié)議的連接,因此多柑,首先要建立TCP連接奶是,一般TCP連接的端口號(hào)是80。這里是8080端口

4)客戶機(jī)發(fā)送請(qǐng)求命令

建立連接后竣灌,客戶機(jī)發(fā)送一個(gè)請(qǐng)求給服務(wù)器聂沙,請(qǐng)求方式的格式為:統(tǒng)一資源標(biāo)識(shí)符(URL)、協(xié)議版本號(hào)初嘹,后邊是MIME信息包括請(qǐng)求修飾符及汉、客戶機(jī)信息和可內(nèi)容。

5)服務(wù)器響應(yīng)

服務(wù)器接到請(qǐng)求后屯烦,給予相應(yīng)的響應(yīng)信息坷随,其格式為一個(gè)狀態(tài)行,包括信息的協(xié)議版本號(hào)驻龟、一個(gè)成功或錯(cuò)誤的代碼温眉,后邊是MIME信息包括服務(wù)器信息、實(shí)體信息和可能的內(nèi)容翁狐。
實(shí)體消息是服務(wù)器向?yàn)g覽器發(fā)送頭信息后类溢,它會(huì)發(fā)送一個(gè)空白行來(lái)表示頭信息的發(fā)送到此為結(jié)束,接著露懒,它就以Content-Type應(yīng)答頭信息所描述的格式發(fā)送用戶所請(qǐng)求的實(shí)際數(shù)據(jù)

6)服務(wù)器關(guān)閉TCP連接

一般情況下闯冷,一旦Web服務(wù)器向?yàn)g覽器發(fā)送了請(qǐng)求數(shù)據(jù),它就要關(guān)閉TCP連接懈词,然后如果瀏覽器或者服務(wù)器在其頭信息加入了這行代碼
Connection:keep-alive
TCP連接在發(fā)送后將仍然保持打開(kāi)狀態(tài)蛇耀,于是,瀏覽器可以繼續(xù)通過(guò)相同的連接發(fā)送請(qǐng)求坎弯。保持連接節(jié)省了為每個(gè)請(qǐng)求建立新連接所需的時(shí)間纺涤,還節(jié)約了網(wǎng)絡(luò)帶寬躁倒。

服務(wù)器將響應(yīng)信息傳給客戶端,響應(yīng)體中的內(nèi)容可能是一個(gè)html頁(yè)面洒琢,也可能是一張圖片,通過(guò)輸入流將其讀出褐桌,并寫(xiě)回到顯示器上衰抑。

(四)HTTPS的工作原理

我們都知道HTTPS能夠加密信息,以免敏感信息被第三方獲取荧嵌,所以很多銀行網(wǎng)站或電子郵箱等等安全級(jí)別較高的服務(wù)都會(huì)采用HTTPS協(xié)議呛踊。

1、客戶端發(fā)起HTTPS請(qǐng)求

用戶在瀏覽器里輸入一個(gè)https網(wǎng)址啦撮,然后連接到server的443端口谭网。

2、服務(wù)端的配置

采用HTTPS協(xié)議的服務(wù)器必須要有一套數(shù)字證書(shū)赃春,可以自己制作愉择,也可以向組織申請(qǐng),區(qū)別就是自己頒發(fā)的證書(shū)需要客戶端驗(yàn)證通過(guò)织中,才可以繼續(xù)訪問(wèn)锥涕,而使用受信任的公司申請(qǐng)的證書(shū)則不會(huì)彈出提示頁(yè)面(startssl就是個(gè)不錯(cuò)的選擇,有1年的免費(fèi)服務(wù))狭吼。

這套證書(shū)其實(shí)就是一對(duì)公鑰和私鑰层坠,如果對(duì)公鑰和私鑰不太理解,可以想象成一把鑰匙和一個(gè)鎖頭刁笙,只是全世界只有你一個(gè)人有這把鑰匙破花,你可以把鎖頭給別人,別人可以用這個(gè)鎖把重要的東西鎖起來(lái)疲吸,然后發(fā)給你座每,因?yàn)橹挥心阋粋€(gè)人有這把鑰匙,所以只有你才能看到被這把鎖鎖起來(lái)的東西摘悴。

3尺栖、傳送證書(shū)

這個(gè)證書(shū)其實(shí)就是公鑰,只是包含了很多信息烦租,如證書(shū)的頒發(fā)機(jī)構(gòu)延赌,過(guò)期時(shí)間等等。

4叉橱、客戶端解析證書(shū)

這部分工作是有客戶端的TLS來(lái)完成的挫以,首先會(huì)驗(yàn)證公鑰是否有效,比如頒發(fā)機(jī)構(gòu)窃祝,過(guò)期時(shí)間等等掐松,如果發(fā)現(xiàn)異常,則會(huì)彈出一個(gè)警告框,提示證書(shū)存在問(wèn)題大磺。

如果證書(shū)沒(méi)有問(wèn)題抡句,那么就生成一個(gè)隨機(jī)值,然后用證書(shū)對(duì)該隨機(jī)值進(jìn)行加密杠愧,就好像上面說(shuō)的待榔,把隨機(jī)值用鎖頭鎖起來(lái),這樣除非有鑰匙流济,不然看不到被鎖住的內(nèi)容锐锣。

5、傳送加密信息

這部分傳送的是用證書(shū)加密后的隨機(jī)值绳瘟,目的就是讓服務(wù)端得到這個(gè)隨機(jī)值雕憔,以后客戶端和服務(wù)端的通信就可以通過(guò)這個(gè)隨機(jī)值來(lái)進(jìn)行加密解密了。

6糖声、服務(wù)段解密信息

服務(wù)端用私鑰解密后斤彼,得到了客戶端傳過(guò)來(lái)的隨機(jī)值(私鑰),然后把內(nèi)容通過(guò)該值進(jìn)行對(duì)稱(chēng)加密蘸泻,所謂對(duì)稱(chēng)加密就是畅卓,將信息和私鑰通過(guò)某種算法混合在一起,這樣除非知道私鑰蟋恬,不然無(wú)法獲取內(nèi)容翁潘,而正好客戶端和服務(wù)端都知道這個(gè)私鑰,所以只要加密算法夠彪悍歼争,私鑰夠復(fù)雜拜马,數(shù)據(jù)就夠安全。

7沐绒、傳輸加密后的信息

這部分信息是服務(wù)段用私鑰加密后的信息俩莽,可以在客戶端被還原。

8乔遮、客戶端解密信息

客戶端用之前生成的私鑰解密服務(wù)段傳過(guò)來(lái)的信息扮超,于是獲取了解密后的內(nèi)容,整個(gè)過(guò)程第三方即使監(jiān)聽(tīng)到了數(shù)據(jù)蹋肮,也束手無(wú)策出刷。

(五 )HTTPS的優(yōu)點(diǎn)

正是由于HTTPS非常的安全,攻擊者無(wú)法從中找到下手的地方坯辩,從站長(zhǎng)的角度來(lái)說(shuō)馁龟,HTTPS的優(yōu)點(diǎn)有以下2點(diǎn):

1、SEO方面

谷歌曾在2014年8月份調(diào)整搜索引擎算法漆魔,并稱(chēng)“比起同等HTTP網(wǎng)站坷檩,采用HTTPS加密的網(wǎng)站在搜索結(jié)果中的排名將會(huì)更高”却音。

2、安全性

盡管HTTPS并非絕對(duì)安全矢炼,掌握根證書(shū)的機(jī)構(gòu)系瓢、掌握加密算法的組織同樣可以進(jìn)行中間人形式的攻擊,但HTTPS仍是現(xiàn)行架構(gòu)下最安全的解決方案句灌,主要有以下幾個(gè)好處:

(1)夷陋、使用HTTPS協(xié)議可認(rèn)證用戶和服務(wù)器,確保數(shù)據(jù)發(fā)送到正確的客戶機(jī)和服務(wù)器涯塔;

(2)、HTTPS協(xié)議是由SSL+HTTP協(xié)議構(gòu)建的可進(jìn)行加密傳輸清蚀、身份認(rèn)證的網(wǎng)絡(luò)協(xié)議匕荸,要比http協(xié)議安全,可防止數(shù)據(jù)在傳輸過(guò)程中不被竊取枷邪、改變榛搔,確保數(shù)據(jù)的完整性。

(3)东揣、HTTPS是現(xiàn)行架構(gòu)下最安全的解決方案践惑,雖然不是絕對(duì)安全,但它大幅增加了中間人攻擊的成本嘶卧。

(六)HTTPS的缺點(diǎn)

雖然說(shuō)HTTPS有很大的優(yōu)勢(shì)尔觉,但其相對(duì)來(lái)說(shuō),還是有些不足之處的芥吟,具體來(lái)說(shuō)侦铜,有以下2點(diǎn):

1、SEO方面

據(jù)ACM CoNEXT數(shù)據(jù)顯示钟鸵,使用HTTPS協(xié)議會(huì)使頁(yè)面的加載時(shí)間延長(zhǎng)近50%钉稍,增加10%到20%的耗電,此外棺耍,HTTPS協(xié)議還會(huì)影響緩存贡未,增加數(shù)據(jù)開(kāi)銷(xiāo)和功耗,甚至已有安全措施也會(huì)受到影響也會(huì)因此而受到影響蒙袍。

而且HTTPS協(xié)議的加密范圍也比較有限俊卤,在黑客攻擊、拒絕服務(wù)攻擊害幅、服務(wù)器劫持等方面幾乎起不到什么作用瘾蛋。

最關(guān)鍵的,SSL證書(shū)的信用鏈體系并不安全矫限,特別是在某些國(guó)家可以控制CA根證書(shū)的情況下哺哼,中間人攻擊一樣可行佩抹。

2、經(jīng)濟(jì)方面

(1)取董、SSL證書(shū)需要錢(qián)棍苹,功能越強(qiáng)大的證書(shū)費(fèi)用越高,個(gè)人網(wǎng)站茵汰、小網(wǎng)站沒(méi)有必要一般不會(huì)用枢里。

(2)、SSL證書(shū)通常需要綁定IP蹂午,不能在同一IP上綁定多個(gè)域名栏豺,IPv4資源不可能支撐這個(gè)消耗(SSL有擴(kuò)展可以部分解決這個(gè)問(wèn)題,但是比較麻煩豆胸,而且要求瀏覽器奥洼、操作系統(tǒng)支持,Windows XP就不支持這個(gè)擴(kuò)展晚胡,考慮到XP的裝機(jī)量灵奖,這個(gè)特性幾乎沒(méi)用)。

(3)估盘、HTTPS連接緩存不如HTTP高效瓷患,大流量網(wǎng)站如非必要也不會(huì)采用,流量成本太高遣妥。

(4)擅编、HTTPS連接服務(wù)器端資源占用高很多,支持訪客稍多的網(wǎng)站需要投入更大的成本箫踩,如果全部采用HTTPS沙咏,基于大部分計(jì)算資源閑置的假設(shè)的VPS的平均成本會(huì)上去。

(5)班套、HTTPS協(xié)議握手階段比較費(fèi)時(shí)肢藐,對(duì)網(wǎng)站的相應(yīng)速度有負(fù)面影響,如非必要吱韭,沒(méi)有理由犧牲用戶體驗(yàn)吆豹。

參考:

HTTP和HTTPS的區(qū)別

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市理盆,隨后出現(xiàn)的幾起案子痘煤,更是在濱河造成了極大的恐慌,老刑警劉巖猿规,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件衷快,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡姨俩,警方通過(guò)查閱死者的電腦和手機(jī)蘸拔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)师郑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人调窍,你說(shuō)我怎么就攤上這事宝冕。” “怎么了邓萨?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵地梨,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我缔恳,道長(zhǎng)宝剖,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任歉甚,我火速辦了婚禮万细,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘铃芦。我一直安慰自己雅镊,他們只是感情好襟雷,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布刃滓。 她就那樣靜靜地躺著,像睡著了一般耸弄。 火紅的嫁衣襯著肌膚如雪咧虎。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,631評(píng)論 1 305
  • 那天计呈,我揣著相機(jī)與錄音砰诵,去河邊找鬼。 笑死捌显,一個(gè)胖子當(dāng)著我的面吹牛茁彭,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播扶歪,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼理肺,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了善镰?” 一聲冷哼從身側(cè)響起妹萨,我...
    開(kāi)封第一講書(shū)人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎炫欺,沒(méi)想到半個(gè)月后乎完,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡品洛,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年树姨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了摩桶。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡娃弓,死狀恐怖典格,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情台丛,我是刑警寧澤耍缴,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站挽霉,受9級(jí)特大地震影響防嗡,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜侠坎,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一蚁趁、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧实胸,春花似錦他嫡、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至门躯,卻和暖如春淆党,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背讶凉。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工染乌, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人懂讯。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓荷憋,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親褐望。 傳聞我的和親對(duì)象是個(gè)殘疾皇子勒庄,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容