首頁 >後端開發 >PHP7 >DES、ECB和CBC三種加密方式的差異在於啥

DES、ECB和CBC三種加密方式的差異在於啥

醉折花枝作酒筹
醉折花枝作酒筹轉載
2021-07-12 09:22:574174瀏覽

在php中,有好幾種加密方式,其中有DES、ECB和CBC這三種加密,今天小編就帶大家了解一下這三種加密方式的差別,有需要的可以參考一下。

DES、ECB和CBC三種加密方式的差異在於啥

ECB模式:

# 優點:

1.簡單;

2.有利於並行計算;

3. 誤差不會被傳遞;

缺點:

1. 不能隱藏明文的模式;

2. 可能對明文進行主動攻擊;

DES ECB(電子密本方式)其實非常簡單,就是將資料依照8個位元組一段進行DES加密或解密得到一段段的8個位元組的密文或者明文,最後一段不足8個位元組(一般補0或F),依照需求補足8個位元組進行計算(並行計算),之後依照順序將計算所得的資料連在一起即可,各段資料之間互不影響。

CBC模式:

優點:

1. 不容易主動攻擊,安全性優於ECB,是SSL、IPSec的標準;

缺點:

1. 不利於平行計算;

2.誤差傳遞;

3. 需要初始化向量IV;

DES CBC模式

(密文分組連結方式)有點麻煩,它的實作機制使加密的各段資料之間有了關聯。其實現的機理如下:

加密步驟如下:

1. 先將資料依照8個位元組一組進行分組得到D1D2......Dn(若資料不是8的整數倍,以指定的PADDING資料補位)

2. 第一組資料D1與初始化向量I異或後的結果進行DES加密得到第一組密文C1(初始化向量I為全零)

3. 第二組數據D2與第一組的加密結果C1異或以後的結果進行DES加密,得到第二組密文C2

4. 之後的數據以此類推,得到Cn

5. 依序連為C1C2C3......Cn即為加密結果。

這是分組密碼的工作模式  CBC是密碼分組連結模式ECB是電碼本模式

推薦學習:php影片教學

#

以上是DES、ECB和CBC三種加密方式的差異在於啥的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除