无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

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

09 加解密技術(shù)原理

2022-08-01 07:45 作者:譽天達達老師  | 我要投稿

思維導(dǎo)圖:

加解密技術(shù)發(fā)展

加解密定義

數(shù)據(jù)加密的基本過程就是對原來為明文的文件或數(shù)據(jù)按某種算法進行處理,使其成為不可讀的一段代碼,通常稱為“密文”,通過這樣的途徑來達到保護數(shù)據(jù)不被非法人員竊取、閱讀的目的。

數(shù)據(jù)解密的過程就是對密文使用相應(yīng)的算法和密鑰進行解密處理,將密文解密成明文的過程。

加密的安全性取決于:

  • 密鑰的生成,管理,存儲;

  • 加密算法的安全性;

  • 加解密的環(huán)境。

加密產(chǎn)生背景

加密的目的

通過加密可保證信息的:

  • 機密性

  • 完整性

  • 鑒別性

  • 不可否認性

加解密技術(shù)原理

加密技術(shù)分類

加密技術(shù)包含:

  • 對稱加密

  • 非對稱加密

對稱加密算法

對稱加密算法的加密和解密都是用同一個密鑰。

如圖所示,客戶端與服務(wù)器進行數(shù)據(jù)交互,采用對稱加密算法??蛻舳伺c服務(wù)器事先協(xié)商好對稱密鑰A,具體加解密過程如下:

非對稱加密算法

非對稱加密算法需要一組密鑰對,分別是公鑰和私鑰,這兩個密鑰是成對出現(xiàn)的。

非對稱加密解決了對稱密鑰的發(fā)布和管理問題,一個用于加密信息,另一個則用于解密信息,通信雙方無需事先交換密鑰就可進行保密通信。通常以公鑰作為加密密鑰,以私鑰作為解密密鑰。

如圖所示,客戶端與服務(wù)器進行數(shù)據(jù)交互,采用非對稱加密算法,具體加解密過程如下:

對稱和非對稱加密比較


非對稱加密與對稱加密結(jié)合

采用非對稱加密與對稱加密結(jié)合的方式,可以減少非對稱加密的次數(shù),HTTPS就是采用了這種方案。首先通過非對稱加密交換對稱加密密鑰,然后使用對稱加密算法加密業(yè)務(wù)數(shù)據(jù),具體交互流程如下:

加解密常見算法

常見的對稱加解密算法


IDEA(International Data Encryption Algorithm)是對稱分組密碼算法,輸入明文為64位,密鑰為128位,生成的密文為64位。應(yīng)用方面有很多,其中SSL就將IDEA包含在其加密算法庫中。

常見的非對稱加密算法


非對稱加密算法此處有兩個作用:

  • ?根據(jù)算法自動生成一對公私鑰;

  • ?按照非對稱加密算法的交互數(shù)據(jù)。

散列算法

散列算法簡介

僅對數(shù)據(jù)加密是不夠的,數(shù)據(jù)仍能夠被非法破解并修改。使用散列算法可檢查出數(shù)據(jù)在通信過程中是否被篡改,從而實現(xiàn)數(shù)據(jù)完整性校驗。

散列算法就是把任意長度的數(shù)據(jù)作為輸入,然后通過Hash得到一個固定長度的輸出值,該輸出值就是散列值,它是一種數(shù)據(jù)壓縮映射關(guān)系。簡單來說就是將任意長度的消息轉(zhuǎn)換到某一固定長度的消息摘要的函數(shù)。散列算法具有正向快速、不可逆、輸入敏感、抗碰撞的特點。

  • 正向快速:給定明文和Hash算法,在有限時間和有限資源內(nèi)計算Hash值;

  • 不可逆性:給定任意的Hash值,在有限時間內(nèi)很難逆推出明文;

  • 輸入敏感:如果輸入的數(shù)據(jù)信息被輕微修改,輸出的Hash值也會有很明顯的變化;

  • 抗碰撞性:任意輸入不同的數(shù)據(jù),其輸出的Hash值不可能相同。對于一個給定的數(shù)據(jù)塊,找到和它hash值相同的數(shù)據(jù)塊極為困難。

散列算法應(yīng)用

在數(shù)據(jù)通信過程中發(fā)送方對報文進行Hash,并將報文和Hash值發(fā)送給接收方。接收方采用相同的算法對報文進行Hash,然后通過對比兩個Hash值,來判斷通信過程中報文是否受到篡改,從而實現(xiàn)完整性校驗。

常見散列算法


以上幾種算法各有特點,MD5算法的計算速度比SHA-1算法快,而SHA-1算法的安全強度比MD5算法高,SHA-2、SM3算法相對于SHA-1來說,加密數(shù)據(jù)位數(shù)的上升增加了破解的難度,使得安全性能要遠遠高于SHA-1。


09 加解密技術(shù)原理的評論 (共 條)

分享到微博請遵守國家法律
井研县| 伊宁市| 前郭尔| 水富县| 花莲市| 和硕县| 托克逊县| 襄汾县| 永吉县| 岢岚县| 从江县| 广安市| 新宁县| 蕉岭县| 远安县| 扶余县| 台湾省| 仁寿县| 津南区| 仁布县| 枝江市| 禄丰县| 襄樊市| 札达县| 邓州市| 察哈| 沛县| 吴堡县| 信丰县| 肃南| 郑州市| 延边| 新巴尔虎右旗| 密云县| 荔浦县| 徐汇区| 三穗县| 开原市| 沅江市| 昭通市| 略阳县|