HTTPS

HTTPS

HTTPS 是最流行的 HTTP 安全形式,由網(wǎng)景公司首創(chuàng)搭盾,所有主要的瀏覽器和服務(wù)器都支持此協(xié)議五辽。 使用 HTTPS 時(shí),所有的 HTTP 請(qǐng)求和響應(yīng)數(shù)據(jù)在發(fā)送之前蹋岩,都要進(jìn)行加密赖草。加密可以使用 SSL 或 TLS。


HTTPS

SSL/TLS 協(xié)議作用在 HTTP 協(xié)議之下剪个,對(duì)于上層應(yīng)用來說秧骑,原來的發(fā)送/接收數(shù)據(jù)流程不變,這就很好地兼容了老的 HTTP 協(xié)議扣囊。由于 SSL/TLS 差別不大乎折,下面統(tǒng)一使用 SSL。

要想了解 HTTPS 為何安全侵歇,還得繼續(xù)了解一下這些概念:加密算法骂澄、摘要算法數(shù)字簽名數(shù)字證書惕虑。

加密算法

對(duì)稱密鑰密碼體制

對(duì)稱密鑰密碼體制坟冲,即加密密鑰和解密密鑰是使用相同的密碼體制。對(duì)稱密鑰加密技術(shù)的缺點(diǎn)之一就是發(fā)送者和接收者在對(duì)話之前溃蔫,一定要有一個(gè)共享的密鑰健提,所以不太安全。

公鑰密碼體制

公鑰密碼體制使用不同的加密密鑰與解密密鑰伟叛。公鑰密碼體制產(chǎn)生的主要原因有兩個(gè):一是對(duì)稱密鑰密碼體制的密鑰分配問題私痹,二是對(duì)數(shù)字簽名的需求。
在公鑰密碼體制中统刮,加密密鑰是公開的紊遵,解密密鑰是需要保密的,加密算法和解密算法也是公開的侥蒙。
公鑰密碼體制的加密和解密有如下特點(diǎn):

  1. 密鑰對(duì)產(chǎn)生器產(chǎn)生出接收者 B 的一對(duì)密鑰暗膜,即加密密鑰 PK 和解密密鑰 SK。
  2. 發(fā)送者 A 用 B 的公鑰 PK 作為加密密鑰來加密信息辉哥,B 接收后用解密密鑰 SK 解密桦山。


    公鑰密碼體制

    使用對(duì)稱密鑰時(shí)攒射,由于雙方使用同樣的密鑰,因此在通信信道上可以進(jìn)行一對(duì)一的雙向保密通信恒水,雙方都可以用同一個(gè)密鑰加密解密会放。
    使用公開密鑰時(shí),在通信信道上可以是多對(duì)一的單向保密信道钉凌。即可以有多人持有 B 的公鑰咧最,但只有 B 才能解密。

摘要算法

摘要算法的主要特征是加密過程不需要密鑰御雕,并且經(jīng)過加密的數(shù)據(jù)無法被解密矢沿,目前可以被解密逆向的只有CRC32算法,只有輸入相同的明文數(shù)據(jù)經(jīng)過相同的消息摘要算法才能得到相同的密文酸纲。

數(shù)字簽名

用加密系統(tǒng)對(duì)報(bào)文進(jìn)行簽名捣鲸,以說明是誰編寫的報(bào)文,同時(shí)證明報(bào)文未被篡改過闽坡,這種技術(shù)稱為數(shù)字簽名栽惶。
數(shù)字簽名是附加在報(bào)文上的特殊加密校驗(yàn)碼。使用數(shù)字簽名的好處有:

  1. 簽名可以證明是作者編寫了這條報(bào)文疾嗅。只有作者才會(huì)有最機(jī)密的私有密鑰外厂,因此,只有作者才能計(jì)算出這些校驗(yàn)和代承。
  2. 簽名可以防止報(bào)文被篡改汁蝶,如果有人在報(bào)文傳輸過程中對(duì)其進(jìn)行了修改,校驗(yàn)和就不再匹配了论悴。
    數(shù)字簽名通常是用非對(duì)稱公開密鑰技術(shù)產(chǎn)生的掖棉。


    數(shù)字簽名

    看上圖,任何人都能用 A 的公鑰 PK 對(duì)密文進(jìn)行 E 運(yùn)算后得到 A 發(fā)送的明文意荤“∑可見這種通信并非為了保密,而是為了進(jìn)行簽名和核實(shí)簽名玖像,即確認(rèn)此信息是 A 發(fā)送的。 但上述過程僅對(duì)報(bào)文進(jìn)行了簽名齐饮,對(duì)報(bào)文 X 本身卻未保密捐寥,所以要采用下圖的方法,同時(shí)實(shí)現(xiàn)秘密通信和數(shù)字簽名祖驱。


    加密的數(shù)字簽名

數(shù)字證書

假如你想訪問一個(gè)網(wǎng)站握恳,怎么確保對(duì)方給你的公鑰是你想訪問的網(wǎng)站的公鑰,而不是被中間人篡改過的捺僻?
數(shù)字證書的出現(xiàn)就是為了解決這個(gè)問題乡洼,它是由數(shù)字證書認(rèn)證機(jī)構(gòu)頒發(fā)的崇裁,用來證明公鑰擁有者的身份。換句話說束昵,數(shù)字證書的作用就相當(dāng)于人的身份證拔稳,身份證證明了張三就是張三,而不是別人锹雏。
數(shù)字證書一般包含以下內(nèi)容

  1. 對(duì)象的名稱(人巴比、服務(wù)器禁漓、組織等)阵翎;
  2. 過期時(shí)間;
  3. 證書發(fā)布者(由誰為證書擔(dān)保)窿春;
  4. 來自證書發(fā)布者的數(shù)字簽名佣耐;
  5. 對(duì)象的公鑰政勃;
  6. 對(duì)象和所用簽名算法的描述性信息。
    任何人都可以創(chuàng)建一個(gè)數(shù)字證書兼砖,但由誰來擔(dān)保才是重點(diǎn)奸远。
    數(shù)字證書的數(shù)字簽名計(jì)算過程
  7. 用摘要算法對(duì)數(shù)字證書的內(nèi)容計(jì)算出摘要;
  8. 用數(shù)字證書的私鑰對(duì)摘要進(jìn)行加密得到數(shù)字簽名掖鱼。


    數(shù)字秘鑰格式

    瀏覽器收到證書時(shí)然走,會(huì)對(duì)簽名頒發(fā)機(jī)構(gòu)進(jìn)行驗(yàn)證,如果頒發(fā)機(jī)構(gòu)是個(gè)很有權(quán)威的公共簽名機(jī)構(gòu)戏挡,瀏覽器可能就知道其公開密鑰了(瀏覽器會(huì)預(yù)裝很多簽名頒發(fā)機(jī)構(gòu)的證書)芍瑞。如果對(duì)簽名頒發(fā)機(jī)構(gòu)一無所知,瀏覽器通常會(huì)向用戶顯示一個(gè)對(duì)話框褐墅,看看他是否相信這個(gè)簽名發(fā)布者拆檬。
    因?yàn)閿?shù)字證書的公鑰是公開的,任何人都可以用公鑰解密出數(shù)字證書的數(shù)字簽名的摘要妥凳,然后再用同樣的摘要算法對(duì)證書內(nèi)容進(jìn)行摘要計(jì)算竟贯,將得出的摘要和解密后的摘要作對(duì)比,如果內(nèi)容一致則說明這個(gè)證書沒有被篡改過逝钥,可以信任屑那。
    這個(gè)過程是建立在被大家所認(rèn)可的證書機(jī)構(gòu)之上得到的公鑰,所以這是一種安全的方式艘款。


    簽名驗(yàn)證

HTTPS 連接建立過程

HTTPS 連接建立過程和 HTTP 差不多持际,區(qū)別在于 HTTP(默認(rèn)端口 80) 請(qǐng)求只要在 TCP 連接建立后就可以發(fā)起,而 HTTPS(默認(rèn)端口 443) 在 TCP 連接建立后哗咆,還需要經(jīng)歷 SSL 協(xié)議握手蜘欲,成功后才能發(fā)起請(qǐng)求。


http與https通訊區(qū)別
ssl握手
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末晌柬,一起剝皮案震驚了整個(gè)濱河市姥份,隨后出現(xiàn)的幾起案子郭脂,更是在濱河造成了極大的恐慌,老刑警劉巖澈歉,帶你破解...
    沈念sama閱讀 222,000評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件展鸡,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡闷祥,警方通過查閱死者的電腦和手機(jī)娱颊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,745評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來凯砍,“玉大人箱硕,你說我怎么就攤上這事∥蝰茫” “怎么了剧罩?”我有些...
    開封第一講書人閱讀 168,561評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長座泳。 經(jīng)常有香客問我惠昔,道長,這世上最難降的妖魔是什么挑势? 我笑而不...
    開封第一講書人閱讀 59,782評(píng)論 1 298
  • 正文 為了忘掉前任镇防,我火速辦了婚禮,結(jié)果婚禮上潮饱,老公的妹妹穿的比我還像新娘来氧。我一直安慰自己,他們只是感情好香拉,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,798評(píng)論 6 397
  • 文/花漫 我一把揭開白布啦扬。 她就那樣靜靜地躺著,像睡著了一般凫碌。 火紅的嫁衣襯著肌膚如雪扑毡。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,394評(píng)論 1 310
  • 那天盛险,我揣著相機(jī)與錄音瞄摊,去河邊找鬼。 笑死苦掘,一個(gè)胖子當(dāng)著我的面吹牛泉褐,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播鸟蜡,決...
    沈念sama閱讀 40,952評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼挺邀!你這毒婦竟也來了揉忘?” 一聲冷哼從身側(cè)響起跳座,我...
    開封第一講書人閱讀 39,852評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎泣矛,沒想到半個(gè)月后疲眷,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,409評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡您朽,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,483評(píng)論 3 341
  • 正文 我和宋清朗相戀三年狂丝,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片哗总。...
    茶點(diǎn)故事閱讀 40,615評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡几颜,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出讯屈,到底是詐尸還是另有隱情蛋哭,我是刑警寧澤,帶...
    沈念sama閱讀 36,303評(píng)論 5 350
  • 正文 年R本政府宣布涮母,位于F島的核電站谆趾,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏叛本。R本人自食惡果不足惜沪蓬,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,979評(píng)論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望来候。 院中可真熱鬧跷叉,春花似錦、人聲如沸吠勘。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,470評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽剧防。三九已至植锉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間峭拘,已是汗流浹背俊庇。 一陣腳步聲響...
    開封第一講書人閱讀 33,571評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留鸡挠,地道東北人辉饱。 一個(gè)月前我還...
    沈念sama閱讀 49,041評(píng)論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像拣展,于是被迫代替她去往敵國和親彭沼。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,630評(píng)論 2 359