最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

【Http & SSL/TLS】誰還沒有傳過紙條呢

2023-01-24 20:27 作者:柚子柚子l  | 我要投稿

前言

現(xiàn)在市面上的許多網(wǎng)站,都強(qiáng)制使用了 Https。 說白了,Https 就是 Http 的加強(qiáng)版,能夠保證數(shù)據(jù)傳輸時(shí)的安全性。其使用了 SSL/TLS 作為 TCP 或 QUIC 上層,Http 下層之間的一個(gè)協(xié)議,以此保證報(bào)文的可靠傳輸。 本期就講講 Https 的工作原理。 非對稱加密

上學(xué)的時(shí)候,應(yīng)該都有人傳過紙條。 不過紙條和 Http 一樣,都有明文傳輸?shù)娘L(fēng)險(xiǎn),任何中間人都能夠看到。 假如我不想讓別人看到,就可以在課間時(shí)告訴他,每個(gè)字母往前移一位,就是我想要和你說的話。而這樣的做法,就是一種對稱加密算法,雙方使用同樣的算法、同樣的密鑰進(jìn)行加解密。 (以上故事來源于他人) 不過這樣有一個(gè)問題:Https 中如何交換一個(gè)密鑰?如果仍然使用對稱加密,是否存在安全風(fēng)險(xiǎn)?此時(shí)就需要用到非對稱加密算法。 現(xiàn)在,我們有一個(gè)數(shù)據(jù) 5,而 5^2 mod 6 為幾?很顯然為 1。 不過如果我們將未知數(shù)換一下,5^n mod 6 = 1,n 為多少?這樣就復(fù)雜多了。但是依然能通過枚舉法找出結(jié)果。 但如果除數(shù)是一個(gè)奇大無比的數(shù)呢?假設(shè) 5^n mod 1145141919810 = 1,那么 n 是多少?世界上最牛批的計(jì)算機(jī)都需要幾年才能算出來,所以我們可以認(rèn)為它算不出。 接下來,將 n 分解為兩數(shù)乘積。 原等式就能化為 a^(pq) mod N = a (a,p,q,N 均為正整數(shù))。其中,a 為明文,p,q 為公私鑰。 如果 p,q,N 取值合理,那么下列兩個(gè)等式均能成立: a^p mod N = b b^q mod N = a 因此,a 經(jīng)過取模操作能夠變成 b,b 經(jīng)過取模操作也能變回 a。 p 與 q 互為一對公私鑰,而且用私鑰加密后能用公鑰解密,公鑰加密后也能用私鑰解密。 TLS 握手

TLS 握手過程在 TCP 三次握手之后進(jìn)行,總共四次。第一次、第三次由客戶端發(fā)送,第二次、第四次由服務(wù)端發(fā)送。以 TLS 1.2 為例, 1. Client Hello:客戶端隨機(jī)數(shù),客戶端 TLS 版本號,客戶端支持的密碼套件列表 2. Server Hello:服務(wù)端隨機(jī)數(shù),服務(wù)端 TLS 版本號,服務(wù)端選擇的密碼套件列表 2. 服務(wù)器證書 2. 服務(wù)器握手完成 3. 隨機(jī)數(shù) Pre-Master 3. 改用加密通信 3. 握手?jǐn)?shù)據(jù)摘要 4. 改用加密通信 4. 握手?jǐn)?shù)據(jù)摘要 現(xiàn)在依次解釋一下以上步驟。 第一次握手

第一次握手名為 Client Hello,包括客戶端生成的隨機(jī)數(shù) CR,客戶端的 TLS 版本號,客戶端支持的密碼套件列表。 其中說明一點(diǎn),密碼套件約定了密鑰交換算法、摘要算法、加密通信算法等,且通常僅使用安全的算法。 第二次握手

第二次握手為 Server Hello,包括服務(wù)端生成的隨機(jī)數(shù) SR,服務(wù)端的 TLS 版本號,服務(wù)端選擇的密碼套件。接下來發(fā)送一個(gè)服務(wù)器的證書,并發(fā)送“Server Hello Done”消息,表示 Server Hello 完成。 現(xiàn)在了解一下服務(wù)器證書: 證書一般包括有效期、摘要算法、服務(wù)器地址、證書路徑與公鑰等信息??蛻舳巳缧栩?yàn)證證書有效性,一般會(huì)根據(jù)證書路徑,找出頒發(fā)證書的 CA 機(jī)構(gòu),然后用 CA 機(jī)構(gòu)的公鑰解密證書(CA 的證書已經(jīng)植入到操作系統(tǒng)或?yàn)g覽器中),并查驗(yàn)其是否為授信任的 CA 機(jī)構(gòu)頒發(fā)的證書。Windows UAC 也通過這種方式判斷軟件是否被信任。 第三次握手

第三次握手,客戶端會(huì)先生成一個(gè)隨機(jī)數(shù) Pre-Master,然后通過服務(wù)器公鑰加密,發(fā)給服務(wù)器。服務(wù)器收到后,通過私鑰解密,即可獲取到 Pre-Master 值。 此時(shí)客戶端與服務(wù)端已經(jīng)互相交換了三個(gè)隨機(jī)數(shù):CR,SR,Pre-Master。通過特定算法,用這三個(gè)值可以算出會(huì)話密鑰。 客戶端繼續(xù)發(fā)送“改用加密通信”,并計(jì)算握手?jǐn)?shù)據(jù)的摘要,用會(huì)話密鑰加密,發(fā)送給服務(wù)器。 第四次握手

第四次握手,服務(wù)端同樣改用會(huì)話密鑰加密通信,然后同樣將握手?jǐn)?shù)據(jù)做一個(gè)摘要,此時(shí)就完成了握手過程。 要注意,TLS 只有握手時(shí)使用非對稱加密,發(fā)送數(shù)據(jù)時(shí)使用對稱加密,因?yàn)榉菍ΨQ加密速度相對較慢。 TLS 解決了什么問題?

Http 存在以下三個(gè)問題:

監(jiān)聽風(fēng)險(xiǎn)

,信息被他人抓到,用戶號容易沒;

冒充風(fēng)險(xiǎn)

,別人偽造某寶,用戶錢容易丟;

篡改風(fēng)險(xiǎn)

,強(qiáng)制植入垃圾廣告,用戶眼容易瞎。 TLS 就解決了這些問題: 密文傳輸,信息無法讀取,但是賬號還是會(huì)因?yàn)椤敖琛苯o別人而沒; 客戶端驗(yàn)證證書,保證服務(wù)器是這個(gè)服務(wù)器,但是錢還是會(huì)因?yàn)椤稗D(zhuǎn)”給別人而丟; 摘要校驗(yàn),數(shù)據(jù)被篡改就無法顯示,但是眼睛還是會(huì)因?yàn)椤案們r(jià)排名”而瞎。 可見,只要用戶不作惡,Https 還是能夠保證安全的。 總結(jié)

本期講了 Https 的底層原理,以及非對稱加密的方式。 沒看懂?每天多看幾遍,漸漸的就能看懂了。 好了,我們下期再見。 字?jǐn)?shù):2041

【Http & SSL/TLS】誰還沒有傳過紙條呢的評論 (共 條)

分享到微博請遵守國家法律
乌拉特中旗| 临江市| 将乐县| 乳山市| 常德市| 南漳县| 同德县| 正安县| 横山县| 城固县| 深泽县| 洛隆县| 宝山区| 五寨县| 延安市| 巨野县| 烟台市| 鹰潭市| 时尚| 天祝| 大埔县| 南城县| 郸城县| 砀山县| 泸定县| 五原县| 翁源县| 襄城县| 施甸县| 闽侯县| 于田县| 永州市| 潜江市| 彭山县| 贵港市| 信阳市| 阿荣旗| 临澧县| 玉门市| 庄浪县| 吴桥县|