Http和Https的區(qū)別

RedRain的簡(jiǎn)書(shū):http://www.reibang.com/users/29e03e6ff407/latest_articles

Http和Https的區(qū)別

1.什么是Http

Http中文叫做超文本傳輸協(xié)議, 它完成客戶端到服務(wù)端等一系列運(yùn)作流程

1.1 與http關(guān)系密切的協(xié)議: IP, TCP和DNS

負(fù)責(zé)傳輸?shù)腎P協(xié)議

IP協(xié)議數(shù)據(jù)網(wǎng)絡(luò)層, IP協(xié)議的作用是把各類(lèi)數(shù)據(jù)包傳送給對(duì)方. 而要確保確實(shí)傳送到對(duì)方那里, 則需要滿足各類(lèi)條件. 其中兩個(gè)重要的條件是IP地址和MAC地址.

IP地址指明了節(jié)點(diǎn)被分配到的地址, MAC地址是指網(wǎng)卡所指的固定地址. IP地址和MAC地址進(jìn)行配對(duì), IP地址可以變換, 但是MAC地址基本不會(huì)更改.

確碧ǖ可靠性的TCP協(xié)議

TCP位于傳輸層, 提供可靠的字節(jié)流服務(wù)

字節(jié)流服務(wù): 為了方便傳輸, 將大塊數(shù)據(jù)分割成以報(bào)文段為單位的數(shù)據(jù)包進(jìn)行管理.

為了確保無(wú)誤將數(shù)據(jù)送達(dá)目標(biāo)處, TCP協(xié)議采用了三次握手策略.當(dāng)然除了三次握手策略, 還有很多其他的手段保證通訊的可靠性

負(fù)責(zé)域名解析的DNS服務(wù)

DNS服務(wù)是和HTTP協(xié)議一樣位于應(yīng)用層的協(xié)議. 他提供域名與IP地址之間的解析服務(wù).

因?yàn)橛涀∫唤M純數(shù)字太難了, 而字母加數(shù)字才是人類(lèi)習(xí)慣的方式,為了解決這個(gè)問(wèn)題, DNS服務(wù)營(yíng)運(yùn)而生.

2. HTTP的缺點(diǎn)

  • 通信使用明文(不加密), 內(nèi)容可能會(huì)被竊聽(tīng)
  • 不驗(yàn)證通信方的身份, 因此有可能遭遇偽裝
  • 無(wú)法證明報(bào)文的完整性, 所有有可能已遭篡改

3.HTTP+加密+認(rèn)證+完整性保護(hù) = HTTPS

HTTPS并非是應(yīng)用層的一種新協(xié)議. 只是HTTP通信接口部分用SSL(Secure Socket Layer)和TLS (Transport Layer Security) 協(xié)議替代而已.

通常, HTTP直接和TCP通信, 當(dāng)使用SSL時(shí), 演變成了先和SSL通信, 再由SSL和TCP通信了, 簡(jiǎn)而言之, 所謂HTTPS, 其實(shí)就是身披SSL協(xié)議的這層外殼的HTTP.

在采用SSL后, HTTP就擁有了HTTPS的加密, 證書(shū)和完整性的保護(hù)這些功能.

SSL是獨(dú)立于HTTP的協(xié)議, 所有不光是HTTP協(xié)議, 其他運(yùn)行在應(yīng)用層的SMTP(郵件協(xié)議)和Telnet等協(xié)議均可配合SSL協(xié)議使用. 可以說(shuō)SSL是當(dāng)今世界上應(yīng)用最廣泛的網(wǎng)絡(luò)安全技術(shù).

4.SSL是如何加密的

SSL采用一種叫做公開(kāi)密鑰加密(Public-key cryptography)的加密方式.

近代的加密方法中, 加密算法是公開(kāi)的, 而秘鑰是保密的, 通過(guò)這種方式得以保持加密方法的安全性.

共享密鑰加密的困境

加密和解密同用一個(gè)密鑰的方式稱(chēng)為共享密鑰加密, 也被叫做對(duì)稱(chēng)密鑰加密.

共享加密方式加密時(shí)必須將密鑰也發(fā)給對(duì)方. 在互聯(lián)網(wǎng)上轉(zhuǎn)發(fā)密鑰時(shí), 如果通信被監(jiān)聽(tīng)那么密鑰就會(huì)落入攻擊者之手, 同事也就失去了加密的意義,

怎么才能安全的轉(zhuǎn)交?

使用兩把密鑰的公開(kāi)密鑰加密

公開(kāi)密鑰加密方式很好地解決了共享密鑰加密的困難

公開(kāi)密鑰加密使用一對(duì)非對(duì)稱(chēng)的密鑰. 一把叫做私有密鑰, 另一把叫做公開(kāi)密鑰

使用公開(kāi)密鑰加密方式, 發(fā)送密文的一方使用對(duì)方的公開(kāi)密鑰進(jìn)行加密處理, 對(duì)方收到被加密的信息后, 在使用自己的私有密鑰進(jìn)行解密. 利用這種方式, 不需要發(fā)送用來(lái)解密的私有密鑰, 也不用擔(dān)心密鑰被攻擊者竊聽(tīng)而盜走.

另外, 要想根據(jù)密文和公開(kāi)密鑰, 恢復(fù)到信息原文是異常困難的, 因?yàn)榻饷苓^(guò)程就是在對(duì)離散對(duì)數(shù)進(jìn)行求值, 這并非輕而易舉就能辦到的. 退一步講, 如果能對(duì)一個(gè)非常大的整數(shù)做到快速地因式分解, 那么密碼還是在存在希望的, 但就目前的技術(shù)來(lái)看是不太現(xiàn)實(shí)的.

HTTPS采用混合加密機(jī)制

HTTPS采用共享秘鑰加密 和 公開(kāi)秘鑰加密兩者并用的混合加密機(jī)制. 若密鑰能夠?qū)崿F(xiàn)安全交換, 那么有可能會(huì)考慮僅適用公開(kāi)密鑰加密來(lái)通信. 但是公開(kāi)密鑰加密和共享密鑰加密相比, 其處理速度要慢.

所以應(yīng)充分利用兩者各自優(yōu)勢(shì), 將多種方法組合起來(lái)用于通信. 在交換密鑰環(huán)節(jié)適用公開(kāi)密鑰加密方式, 之后的建立通信交換報(bào)文階段則使用共享密鑰加密方式.

5.證明公開(kāi)密鑰的正確性的證書(shū)

遺憾的是, 公開(kāi)密鑰加密方式還是存在一些問(wèn)題的, 那就是無(wú)法證明公開(kāi)密鑰本身就是貨真價(jià)實(shí)的公開(kāi)密鑰. 比如, 正準(zhǔn)備和某臺(tái)服務(wù)器建立公開(kāi)密鑰加密方式下的通信時(shí), 如何證明收到的公開(kāi)密鑰就是原本預(yù)想的那臺(tái)服務(wù)器發(fā)行的公開(kāi)密鑰. 或許在公開(kāi)密鑰傳輸途中, 真正的公開(kāi)密鑰已經(jīng)被攻擊者替換了.

為了解決上述問(wèn)題, 可以使用有數(shù)字證書(shū)認(rèn)證機(jī)構(gòu)其他相關(guān)機(jī)關(guān)頒發(fā)的公開(kāi)密鑰證書(shū)

基本流程為:

  • 1.服務(wù)器把自己的公開(kāi)密鑰登錄至數(shù)字證書(shū)認(rèn)證機(jī)構(gòu)
  • 2.數(shù)字證書(shū)認(rèn)證機(jī)構(gòu)用自己的私有密鑰向服務(wù)器的公開(kāi)密鑰署數(shù)字簽名并頒發(fā)公鑰證書(shū)
  • 3.客戶端拿到服務(wù)器的公鑰證書(shū)后, 使用數(shù)字證書(shū)認(rèn)證機(jī)構(gòu)的公開(kāi)密鑰, 向數(shù)字證書(shū)認(rèn)證機(jī)構(gòu)驗(yàn)證公鑰證書(shū)上的數(shù)字簽名, 以確認(rèn)服務(wù)器的公開(kāi)密鑰的真實(shí)性
  • 4.使用服務(wù)器的公開(kāi)密鑰對(duì)報(bào)文加密后發(fā)送
  • 5.服務(wù)器用私有密鑰對(duì)報(bào)文解密

6.SSL速度慢嗎?

由于HTTPS還需要做服務(wù)器,客戶端雙方加密及解密處理, 因此會(huì)消耗CPU和內(nèi)存等硬件資源, 和HTTP通信相比, SSL通信部分消耗網(wǎng)絡(luò)資源. 而SSL通信部分, 有因?yàn)橐獙?duì)通信進(jìn)行處理, 所有時(shí)間上又延長(zhǎng)了.

針對(duì)速度慢這樣一個(gè)問(wèn)題, 并沒(méi)有根本性的解決方案, 我們會(huì)使用SSL加速器這種(專(zhuān)用服務(wù)器)硬件來(lái)改善該問(wèn)題. 相對(duì)軟件來(lái)講, 能夠提高數(shù)倍SSL計(jì)算速度.

7.為什么不一直使用HTTPS

既然HTTPS那么的可靠安全, 那為何不所有的Web網(wǎng)站不一直使用HTTPS?

其中的一個(gè)原因是, 因?yàn)榕c純文本通信相比, 加密通信會(huì)消耗更多的CPU資源以及內(nèi)存資源, 如果每次通信都加密, 會(huì)消耗相當(dāng)多的資源, 平攤到一臺(tái)計(jì)算機(jī)上時(shí), 能夠處理的請(qǐng)求數(shù)量必定會(huì)隨之減少.

因此, 如果是非敏感信息則使用HTTP通信, 只有在包括個(gè)人信息等敏感數(shù)據(jù)時(shí), 才利用HTTPS加密通信, 以節(jié)省資源. 除此之外, 想要節(jié)約購(gòu)買(mǎi)證書(shū)的開(kāi)銷(xiāo)也原因之一.

PS: <圖解HTTP>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末姐霍,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子典唇,更是在濱河造成了極大的恐慌,老刑警劉巖胯府,帶你破解...
    沈念sama閱讀 217,542評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件介衔,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡骂因,警方通過(guò)查閱死者的電腦和手機(jī)炎咖,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)寒波,“玉大人乘盼,你說(shuō)我怎么就攤上這事《硭福” “怎么了绸栅?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,912評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)页屠。 經(jīng)常有香客問(wèn)我粹胯,道長(zhǎng),這世上最難降的妖魔是什么辰企? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,449評(píng)論 1 293
  • 正文 為了忘掉前任风纠,我火速辦了婚禮,結(jié)果婚禮上牢贸,老公的妹妹穿的比我還像新娘竹观。我一直安慰自己,他們只是感情好潜索,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布臭增。 她就那樣靜靜地躺著,像睡著了一般帮辟。 火紅的嫁衣襯著肌膚如雪速址。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,370評(píng)論 1 302
  • 那天由驹,我揣著相機(jī)與錄音芍锚,去河邊找鬼昔园。 笑死,一個(gè)胖子當(dāng)著我的面吹牛并炮,可吹牛的內(nèi)容都是我干的默刚。 我是一名探鬼主播,決...
    沈念sama閱讀 40,193評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼逃魄,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼荤西!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起伍俘,我...
    開(kāi)封第一講書(shū)人閱讀 39,074評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤邪锌,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后癌瘾,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體觅丰,經(jīng)...
    沈念sama閱讀 45,505評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評(píng)論 3 335
  • 正文 我和宋清朗相戀三年妨退,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了妇萄。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,841評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡咬荷,死狀恐怖贞滨,靈堂內(nèi)的尸體忽然破棺而出袜爪,到底是詐尸還是另有隱情剃执,我是刑警寧澤漠秋,帶...
    沈念sama閱讀 35,569評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站逝变,受9級(jí)特大地震影響基茵,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜壳影,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評(píng)論 3 328
  • 文/蒙蒙 一拱层、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧宴咧,春花似錦根灯、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,783評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至氧卧,卻和暖如春桃笙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背沙绝。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,918評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工搏明, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留鼠锈,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,962評(píng)論 2 370
  • 正文 我出身青樓星著,卻偏偏與公主長(zhǎng)得像购笆,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子虚循,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評(píng)論 2 354

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

  • 1.OkHttp源碼解析(一):OKHttp初階2 OkHttp源碼解析(二):OkHttp連接的"前戲"——HT...
    隔壁老李頭閱讀 20,851評(píng)論 24 176
  • 一同欠、作用 不使用SSL/TLS的HTTP通信,就是不加密的通信横缔。所有信息明文傳播铺遂,帶來(lái)了三大風(fēng)險(xiǎn)。 (1)竊聽(tīng)風(fēng)險(xiǎn)...
    XLsn0w閱讀 10,534評(píng)論 2 44
  • 這兩天閑來(lái)無(wú)事茎刚,在網(wǎng)上看了一下娃循,發(fā)現(xiàn) HTTP 和 HTTPS 的區(qū)別很受關(guān)注,多位大牛做了很詳細(xì)的闡述斗蒋,非常深刻...
    江隆君閱讀 1,891評(píng)論 1 10
  • 一 HTTP和HTTPS的基本概念 1、HTTP:是互聯(lián)網(wǎng)上應(yīng)用最為廣泛的一種網(wǎng)絡(luò)協(xié)議笛质,是一個(gè)客戶端和服務(wù)器端請(qǐng)求...
    小明yz閱讀 648評(píng)論 0 5
  • 原文地址 http://blog.csdn.net/u012409247/article/details/4985...
    0fbf551ff6fb閱讀 3,522評(píng)論 0 13