HTTPS
HTTPS是身披SSL外殼的HTTP碉渡。HTTPS是一種通過計算機網(wǎng)絡(luò)進(jìn)行安全通信的傳輸協(xié)議岗屏,經(jīng)由HTTP進(jìn)行通信默蚌,利用SSL/TLS建立全信道冻晤,加密數(shù)據(jù)包。HTTPS使用的主要目的是提供對網(wǎng)站服務(wù)器的身份認(rèn)證绸吸,同時保護(hù)交換數(shù)據(jù)的隱私與完整性鼻弧。
PS:TLS是傳輸層加密協(xié)議设江,前身是SSL協(xié)議,由網(wǎng)景公司1995年發(fā)布攘轩,有時候兩者不區(qū)分叉存。
(1)內(nèi)容加密
采用混合加密技術(shù),中間者無法直接查看明文內(nèi)容
混合加密:結(jié)合非對稱加密和對稱加密技術(shù)度帮。
客戶端使用對稱加密生成密鑰對傳輸數(shù)據(jù)進(jìn)行加密歼捏,然后使用非對稱加密的公鑰再對秘鑰進(jìn)行加密,所以網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)是被秘鑰加密的密文和用公鑰加密后的秘密秘鑰笨篷,因此即使被黑客截取瞳秽,由于沒有私鑰,無法獲取到加密明文的秘鑰率翅,便無法獲取到明文數(shù)據(jù)练俐。
(2)身份認(rèn)證
通過證書認(rèn)證客戶端訪問的是自己的服務(wù)器
-
申請受信任數(shù)字證書流程
-
防偽標(biāo)簽——數(shù)字簽名
-
數(shù)字摘要:通過單向hash函數(shù)對原文進(jìn)行哈希,將需加密的明文“摘要”成一串固定長度(如128bit)的密文冕臭,不同的明文摘要成的密文其結(jié)果總是不相同腺晾,同樣的明文其摘要必定一致,并且即使知道了摘要也不能反推出明文浴韭。
數(shù)字簽名技術(shù):數(shù)字簽名建立在公鑰加密體制基礎(chǔ)上丘喻,是公鑰加密技術(shù)的另一類應(yīng)用。它把公鑰加密技術(shù)和數(shù)字摘要結(jié)合起來念颈,形成了實用的數(shù)字簽名技術(shù)泉粉。
- 收方能夠證實發(fā)送方的真實身份;
- 發(fā)送方事后不能否認(rèn)所發(fā)送過的報文榴芳;
- 收方或非法者不能偽造嗡靡、篡改報文
(3)數(shù)據(jù)完整性
防止傳輸?shù)膬?nèi)容被中間人冒充或者篡改
非對稱加密過程需要用到公鑰進(jìn)行加密,那么公鑰從何而來窟感?其實公鑰就被包含在數(shù)字證書中讨彼,數(shù)字證書通常來說是由受信任的數(shù)字證書頒發(fā)機構(gòu)CA,在驗證服務(wù)器身份后頒發(fā)柿祈,證書中包含了一個密鑰對(公鑰和私鑰)和所有者識別信息哈误。數(shù)字證書被放到服務(wù)端,具有服務(wù)器身份驗證和數(shù)據(jù)傳輸加密功能躏嚎。
非對稱加密:
保險箱有一個特別的鎖蜜自,這個鎖又兩種鑰匙:A和B,用鑰匙A鎖上后只能用B打開卢佣,反之亦然重荠。
服務(wù)器有一把鑰匙A(私鑰),一把鑰匙B(公鑰)虚茶。此時有個客戶需要建立非對稱加密通訊戈鲁,于是服務(wù)器配了一把鑰匙B后仇参,把保險箱和配的鑰匙B一起給了客戶,客戶把明文鎖進(jìn)保險箱以后用鑰匙B鎖上然后發(fā)給服務(wù)器婆殿,服務(wù)器就可以用鑰匙A打開保險箱拿出明文诈乒。這樣一來任何人都能自由的發(fā)送密文給服務(wù)器(鑰匙B要多少配多少),但只有服務(wù)器能解密密文(鑰匙A只有服務(wù)器留的一把鸣皂,不會配一把給其他人)
詳情:https://blog.csdn.net/xiaoming100001/article/details/81109617
https://www.bilibili.com/video/BV1j7411H7vV?from=search&seid=15514404902914799643