2019-06-10 對稱加密 和非對稱加密

一、對稱加密

AES加密

AES加密是一種高級加密標(biāo)準(zhǔn),是一種區(qū)塊加密標(biāo)準(zhǔn)。它是一個對稱密碼,就是說加密和解密用相同的密鑰。WPA/WPA2經(jīng)常用的加密方式就是AES加密算法。



二、非對稱加密

RSA加密算法是一種非對稱加密算法,非對稱加密算法需要兩個密鑰:公共密鑰和私有密鑰。公鑰和私鑰是配對的,用公鑰加密的數(shù)據(jù)只有配對的私鑰才能解密。

RSA對加密數(shù)據(jù)的長度有限制,一般為密鑰的長度值-11,要加密較長的數(shù)據(jù),可以采用數(shù)據(jù)截取的方法,分段加密。

使用場景:

文件或數(shù)據(jù)在本地使用公鑰或私鑰加密,加密后的數(shù)據(jù)傳送到服務(wù)器,服務(wù)器使用同一套密鑰中的私鑰或者公鑰進(jìn)行解密。



一、Https是什么?

1.HTTPS概念

HTTPS并不是一個單獨的協(xié)議,而是對工作在一加密連接(SSL/TLS)上的常規(guī)HTTP協(xié)議。通過在TCP和HTTP之間加入TLS來加密。

2.SSL/TLS協(xié)議

SSL協(xié)議,是一種安全傳輸?shù)膮f(xié)議,TLS是SSL v3.0的升級版。

4.HTTPS傳輸速度

1)通信慢

2)SSL必須進(jìn)行加密處理,比HTTP消耗更多資源

二、TLS/SSL握手

1.密碼學(xué)原理

1)對稱加密

加密數(shù)據(jù)用的秘鑰和解密數(shù)據(jù)用的密鑰是一樣的。

2)不對稱加密

私有密鑰:一方保管

共有密鑰:雙方公有

RSA算法。

2.數(shù)字證書

1)就是互聯(lián)網(wǎng)通訊中標(biāo)志通訊各方身份信息的一串?dāng)?shù)字,也是一個文件。

2)為什么有數(shù)字證書?

3)數(shù)字證書的頒發(fā)過程?

3.SSL與TLS握手的過程?

使用非對稱加密,隨機(jī)數(shù)不能被隨便破解


Https雙向認(rèn)證的流程:

a.?客戶端向服務(wù)端發(fā)送SSL版本等信息

b.?服務(wù)端給客戶端返回SSL版本,同時也返回服務(wù)器端的證書

c.??客戶端使用服務(wù)的返回的信息驗證服務(wù)器的合法性,

a)?包括:證書是否過期,發(fā)型服務(wù)器證書的CA是否可靠,返回的公鑰能正確解開返回證書中的數(shù)字簽名,服務(wù)器證書上帝域名是否和服務(wù)器的實際域名想匹配

b)?驗證通過后,將進(jìn)行通信,否則終止通信

d.?客戶端將自己的證書和公鑰發(fā)送給服務(wù)端

e.?驗證客戶端的證書,通過驗證后,會獲得客戶端的公鑰

f.?客戶端向服務(wù)端發(fā)送自己可以支持的對稱加密方案給服務(wù)端,讓服務(wù)端進(jìn)行選擇

g.?服務(wù)端在客戶端提供的加密方案中選擇加密程度高的加密方式

h.?將加密方案通過使用之前獲取到的公鑰進(jìn)行加密,返回給客戶端

i.?客戶端收到服務(wù)端返回的加密方案后,使用自己的私鑰進(jìn)行解密,獲取具體的加密方式,最后,產(chǎn)生加密方式的隨機(jī)碼,用作過程中的密鑰,使用之前從客戶端證書中獲取到的公鑰進(jìn)行加密后,發(fā)送嘿服務(wù)端

j.?服務(wù)端收到客戶端發(fā)來的消息后,使用私鑰對加密信息進(jìn)行加密,獲得對稱加密的密鑰

k.?對稱加密,確保通信安全



總結(jié):https實際上就是在TCP層與http層之間加入了SSL/TLS來為上層的安全保駕護(hù)航,主要用到了對稱加密,非對稱加密,證書等技術(shù)進(jìn)行客戶端與服務(wù)器的數(shù)據(jù)加密傳輸,最終達(dá)到保證整個通信的安全性。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容