加密與解密
加密方式分類
加密方式主要分為兩種
- 一種是對稱加密
- 一種是非對稱加密
對稱加密
對稱和非對稱兩種方式主要說的是加密和解密兩個(gè)過程尘应。
如果對數(shù)據(jù)用一個(gè)鑰匙進(jìn)行了加密,那么犬钢, 你想成功讀取到這個(gè)加密了的數(shù)據(jù)的話,就必須對這個(gè)加密數(shù)據(jù)進(jìn)行解密才行混滔。
在現(xiàn)實(shí)生活中,我們鎖了門坯屿,那就必須用相對應(yīng)的鑰匙才能打開這個(gè)門。在數(shù)據(jù)加密中也是如此领跛,我們對數(shù)據(jù)進(jìn)行了加密,也是必須用相對應(yīng)的鑰匙才能解密數(shù)據(jù)喊括。
因此問題就來了,這種時(shí)候我們就會(huì)思考怎么對數(shù)據(jù)進(jìn)行加密郑什,怎么對數(shù)據(jù)進(jìn)行解密蒲肋。
一開始的方式一般都是比較簡單的,就是兜粘,我們用一把鑰匙對數(shù)據(jù)進(jìn)行加密,如果要解密這個(gè)數(shù)據(jù)孔轴,就再次用這把鑰匙對加密的數(shù)據(jù)進(jìn)行解密即可。
像這種加密和解密都是用同一把鑰匙的方式就叫做對稱加密
采用這種加密方式就誕生了諸多的加密算法,較為常用和知名的就是DES牵寺、AES算法
[圖片上傳失敗...(image-5f24e9-1684201853101)]
非對稱加密
經(jīng)過上面對對稱加密方式的解釋,相信聰明的你一定明白了非對稱加密方式是怎么回事了吧趣斤。簡單的說,就是非對稱加密的加密和解密的兩把鑰匙不是同一把鑰匙浓领。
但是這里可能大家就會(huì)出現(xiàn)一個(gè)疑問势腮,因?yàn)楦鶕?jù)顯示生活中的案例來說联贩,既然鑰匙都不同了捎拯,怎么能解鎖呢。
這種時(shí)候就不能太較真計(jì)算機(jī)世界和現(xiàn)實(shí)世界的這些小區(qū)別了祸泪。
這也正是非對稱加密算法的特點(diǎn)吗浩,就是通過非對稱加密算法生成的加密和解密的兩把鑰匙不同没隘,并且通過加密鑰匙加密的數(shù)據(jù)只能通過解密鑰匙解密(相反的,用解密鑰匙加密的數(shù)據(jù)阀湿,也只能用加密鑰匙進(jìn)行解密)
一般品嚣,我們把通過非對稱算法生成的加密鑰匙稱之為公鑰炕倘,把通過非對稱算法生成的解密鑰匙稱之為私鑰翰撑。
而如今常見的非對稱算法就是我們現(xiàn)在熟知的RSA算法
思考
為何要有這兩種截然不同的加密解密方式?
其實(shí)出現(xiàn)這兩種截然不同解密解密方式最主要的原因還是因?yàn)?strong>對稱加密的致命缺點(diǎn)
對稱加密加密方式的缺點(diǎn)
對稱加密有個(gè)灰常致命的缺點(diǎn)涨醋,那就是逝撬,因?yàn)榧用芎徒饷艿蔫€匙是同一把浴骂,那么發(fā)送者想要接收者能解密數(shù)據(jù)宪潮,就必須把鑰匙傳輸給接收者,這樣一來梯轻,就可能會(huì)存在傳輸鑰匙的過程中被中間人攔截獲取的問題。一旦鑰匙被劫持獲取喳挑,加密數(shù)據(jù)就變得跟沒加密的數(shù)據(jù)一樣滔悉。
因此,為了解決鑰匙傳輸問題就衍生出了非對稱方式
[圖片上傳失敗...(image-aa2a76-1684201853101)]
非對稱加密方式的優(yōu)點(diǎn)
非對稱加密方式的特點(diǎn)
通過非對稱加密算法生成的加密和解密的兩把鑰匙不同回官,并且通過加密鑰匙加密的數(shù)據(jù)只能通過解密鑰匙解密(相反的,用解密鑰匙加密的數(shù)據(jù)孙乖,也只能用解密鑰匙進(jìn)行解密)
正因?yàn)檫@一特點(diǎn)份氧,非對稱加密方式就完美解決了鑰匙傳輸問題弯屈。
在實(shí)際的應(yīng)用中,數(shù)據(jù)的接收者通過RSA算法生成公鑰和私鑰资厉,之后將公鑰發(fā)送給數(shù)據(jù)的發(fā)送者,私鑰自己保留湘捎,用著最終的解密數(shù)據(jù)窄刘。
過程是這樣的窥妇,發(fā)送者用公鑰將數(shù)據(jù)加密娩践,之后再將加密后的數(shù)據(jù)發(fā)送給接收者,接收者用自己手中的密鑰對加密的數(shù)據(jù)進(jìn)行解密即可
因此材泄,即使在公鑰傳輸過程中被劫持了,數(shù)據(jù)也不可能被公鑰解密拉宗。這樣就完美解決了鑰匙傳輸問題辣辫。
因此這也是非對稱加密方式的典型優(yōu)點(diǎn),就是能避免鑰匙的泄露而導(dǎo)致數(shù)據(jù)泄露
[圖片上傳失敗...(image-8824ec-1684201853101)]
混合加密方式
非對稱加密方式的缺點(diǎn)和對稱加密方式的優(yōu)點(diǎn)
世間沒有十全十美的東西和實(shí)物急灭。對于加密解密方式也是一樣的,有優(yōu)點(diǎn)就有缺點(diǎn)
非對稱加密方式的缺點(diǎn)
雖然非對稱加密的優(yōu)點(diǎn)完美解決了鑰匙的傳輸問題,但是非對稱加密算法有個(gè)不小的缺點(diǎn)埋凯,那就是,它對數(shù)據(jù)的加密解密時(shí)間很長
因此白对,如果在實(shí)際應(yīng)用中,完全用非對稱加密方式的話蟀瞧,無疑是效率極低的沉颂。大家都明白悦污,效率低是不能容忍的。
對稱加密方式的優(yōu)點(diǎn)
雖然對稱加密方式的缺點(diǎn)很明顯彻坛,但是它的優(yōu)點(diǎn)亦是很吸引人的,那就是昌屉,它的加密效率很高茵瀑,相對非對稱加密方式的話,它的加密速度快很多很多
混合式加密方式的誕生
既然這兩種方式都有各自的優(yōu)缺點(diǎn)马昨,那么我們要做的就是取其精華去其糟粕,各取兩種方式的優(yōu)點(diǎn)偏陪,混合使用。這樣就能既安全又高效的對數(shù)據(jù)進(jìn)行加密解密
[圖片上傳失敗...(image-bfd619-1684201853101)]
加密過程
簡單說明一下如何混合利用兩種方式的優(yōu)點(diǎn)進(jìn)行加密
- 1抱虐、因?yàn)榉菍ΨQ加密慢饥脑,因此恳邀,我們對數(shù)據(jù)的加密依然用對稱加密方式灶轰,這樣就能快速的加密數(shù)據(jù)
- 2、但是對稱加密存在鑰匙傳輸問題笋颤,但是非對稱方式能解決傳輸問題,因此赋除,就用非對稱方式的公鑰對 對稱加密的鑰匙 進(jìn)行加密
- 3非凌、之后再將加密后的數(shù)據(jù)和加密后的對稱鑰匙一并發(fā)送給接收者
- 4、之后接收者用非對稱方式的密鑰對加密后的 對稱鑰匙 進(jìn)行解密
- 5敞嗡、再用解密后的 對稱鑰匙 對數(shù)據(jù)進(jìn)行解密
- 6航背、這樣就做到了棱貌, 既能快速加密數(shù)據(jù),又能確保鑰匙的安全