自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

面試官讓我白話一下HTTPS,用一句話就說清楚了

開發(fā) 前端
通過數(shù)字證書和非對稱加密建立SSL連接,生成并傳遞對稱加密所使用的的密鑰。后續(xù)的HTTP通信就使用對稱加密來保護(hù)內(nèi)容。保證安全的同時也提高了效率。

[[328666]]

1.從加密算法說起

非對稱加密:

簡單說一句話:公鑰加密的密文只能用私鑰解密,私鑰加密的密文只能用公鑰解密。

私鑰可以生成公鑰,但是公鑰幾乎無法反推出公鑰。

面試官讓我白話一下HTTPS,我用一句話就說清楚了

舉個例子:

任意想一個3位數(shù),并把這個數(shù)和91相乘,然后告訴我積的最后三位數(shù),我就可以猜出對方想的是什么數(shù)字!

比如123,計算出123 * 91等于11193,并把結(jié)果的末三位193告訴我。

這時候我只需要把對應(yīng)的結(jié)果再乘以11,乘積的末三位就是剛開始想的數(shù)了??梢则炞C一下,193 * 11 = 2123 =》 123

原理非常簡單,91乘以11等于1001,而任何一個三位數(shù)乘以1001后,末三位都不變。(當(dāng)然隨便你用2001、3001 只要你可以因式分解開)

根據(jù)這個原理,我們可以構(gòu)造一個加密數(shù)值更大的加密解密系統(tǒng)。比方說,任意一個數(shù)乘以10000000001后,后10位都不會變,然后用計算機(jī)對10000000001進(jìn)行因式分解,一個十位不對稱加密系統(tǒng)就構(gòu)造好了。

對稱加密

加密、解密使用的相同的密鑰,常見對稱加密DES、AES等

小結(jié)

對稱加密相比非對稱加密算法來說,加解密的效率要高得多、加密速度快。但是缺陷在于對于密鑰的管理和分發(fā)上比較困難,不是非常安全,密鑰容易被丟失或者竊取。相對來說非對稱加密只公開公鑰,自己保管私鑰會更加安全。

2.HTTPS原理

HTTP協(xié)議的缺點

  • 明文通信-內(nèi)容會被監(jiān)聽
  • 不驗證通信方身份-可能會遭遇偽裝
  • 不驗證內(nèi)容的完整性-內(nèi)容被篡改

HTTPS 簡介

HTTPS 協(xié)議(HyperText Transfer Protocol over Seure Socket Layer)可以理解為 HTTPS = HTTP + SSL/TLS,通過SSL/TLS來增加HTTP的安全性。

面試官讓我白話一下HTTPS,我用一句話就說清楚了

SSL(TLS)

SSL(Secure Socket Layer,安全套接字層):1994年為 Netscape 所研發(fā),SSL 協(xié)議位于 TCP/IP 協(xié)議與各種應(yīng)用層協(xié)議之間,為數(shù)據(jù)通訊提供安全支持。

TLS(Transport Layer Security,傳輸層安全):其前身是 SSL,它最初的幾個版本(SSL 1.0、SSL 2.0、SSL 3.0)由網(wǎng)景公司開發(fā),1999年從 3.1 開始被 IETF 標(biāo)準(zhǔn)化并改名,發(fā)展至今已經(jīng)有 TLS 1.0、TLS 1.1、TLS 1.2 三個版本。SSL3.0和TLS1.0由于存在安全漏洞,已經(jīng)很少被使用到。TLS 1.3 改動會比較大,目前還在草案階段,目前使用最廣泛的是TLS 1.1、TLS 1.2。

證書

為什么需要第三方頒發(fā)證書?

服務(wù)端向客戶端發(fā)送的公鑰依舊會被劫持,傳輸內(nèi)容依舊會被解密。劫持者可以用自己的私鑰生成一把新的公鑰,修改內(nèi)容后用自己的私鑰進(jìn)行加密,再把修改后的內(nèi)容以及自己生成的公鑰發(fā)送給客戶端。所以需要引入第三方機(jī)構(gòu)頒發(fā)證書。

面試官讓我白話一下HTTPS,我用一句話就說清楚了

3.一次完整的HTTPS通信

一句話概括

通過數(shù)字證書和非對稱加密建立SSL連接,生成并傳遞對稱加密所使用的的密鑰。后續(xù)的HTTP通信就使用對稱加密來保護(hù)內(nèi)容。保證安全的同時也提高了效率。

  1. 客戶端第一次向服務(wù)端進(jìn)行請求建立SSL連接。
  2. 服務(wù)端返回CA頒發(fā)的數(shù)字證書,其中也包含了非對稱加密的密鑰。
  3. 與服務(wù)端建立連接以后,客戶端會發(fā)送一個隨機(jī)密碼串稱為Pre-master secret(用公鑰加密) - 此時該密碼串只有服務(wù)端可以解密
  4. 服務(wù)端通過私鑰解密出Pre-master secret,并通過一定算法計算出對稱加密(一般是AES算法)的密鑰master (客戶端也會用同樣的算法計算這個master)
  5. SSL連接建立成功,進(jìn)行HTTP通信,并使用AES 對稱算法對內(nèi)容進(jìn)行加解密。
面試官讓我白話一下HTTPS,我用一句話就說清楚了

4.HTTPS一定安全嗎

HTTPS 的數(shù)據(jù)是加密的,常規(guī)下抓包工具代理請求后抓到的包內(nèi)容是加密狀態(tài),無法直接查看。

但是,只要客戶端授權(quán)的情況下,便可以組建中間人網(wǎng)絡(luò),而抓包工具便是作為中間人的代理。

通常 HTTPS 抓包工具(Charles)的使用方法是會生成一個證書,用戶需要手動把證書安裝到客戶端中,然后終端發(fā)起的所有請求通過該證書完成與抓包工具的交互,然后抓包工具再轉(zhuǎn)發(fā)請求到服務(wù)器,最后把服務(wù)器返回的結(jié)果在控制臺輸出后再返回給終端,從而完成整個請求的閉環(huán)。

HTTPS 可以防止用戶在不知情的情況下通信鏈路被監(jiān)聽,對于主動授信的抓包操作是不提供防護(hù)的,因為這個場景用戶是已經(jīng)對風(fēng)險知情。要防止被抓包,需要采用應(yīng)用級的安全防護(hù),例如采用私有的對稱加密,同時做好移動端的防反編譯加固,防止本地算法被破解。

 

責(zé)任編輯:龐桂玉 來源: 今日頭條
相關(guān)推薦

2015-08-03 10:21:04

設(shè)計模式表達(dá)

2023-09-05 23:34:52

Kubernetes云原生

2018-01-15 10:45:43

社交網(wǎng)絡(luò)互聯(lián)網(wǎng)巨頭百度

2020-11-27 09:57:11

Python代碼PyPy

2023-12-13 21:50:59

騰訊AI模型

2019-08-15 11:42:56

程序員電腦軟件

2010-03-29 11:55:12

無線上網(wǎng)報錯

2023-05-08 15:44:23

3D數(shù)字人

2022-12-12 13:45:46

模型修圖

2019-03-27 09:31:36

互聯(lián)網(wǎng)面試技術(shù)

2014-05-07 10:47:51

移動金融互聯(lián)網(wǎng)金融GMIC

2020-12-16 10:43:44

PythonPyPy代碼

2014-12-16 08:58:17

甲骨文Oracle數(shù)據(jù)庫選件

2011-06-03 16:42:47

SEO

2023-08-25 17:10:14

LLM人工智能

2023-09-06 15:23:30

Docker容器K8S

2013-05-10 10:56:09

2022-09-30 15:35:43

AI視頻

2013-05-23 11:43:47

Siri微軟Windows 8

2023-03-18 19:59:36

AIApp
點贊
收藏

51CTO技術(shù)棧公眾號