溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP中DES、ECB和CBC三種加密方式有什么區(qū)別

發(fā)布時間:2021-07-13 15:20:49 來源:億速云 閱讀:193 作者:chen 欄目:編程語言

本篇內容主要講解“PHP中DES、ECB和CBC三種加密方式有什么區(qū)別”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“PHP中DES、ECB和CBC三種加密方式有什么區(qū)別”吧!

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

ECB模式:

優(yōu)點:

1. 簡單;

2. 有利于并行計算;

3. 誤差不會被傳遞;

缺點:

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

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

DES ECB(電子密本方式)其實非常簡單,就是將數(shù)據(jù)按照8個字節(jié)一段進行DES加密或解密得到一段段的8個字節(jié)的密文或者明文,最后一段不足8個字節(jié)(一般補0或者F),按照需求補足8個字節(jié)進行計算(并行計算),之后按照順序將計算所得的數(shù)據(jù)連在一起即可,各段數(shù)據(jù)之間互不影響。

CBC模式:

優(yōu)點:

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

缺點:

1. 不利于并行計算;

2. 誤差傳遞;

3. 需要初始化向量IV;

DES CBC模式

(密文分組鏈接方式)有點麻煩,它的實現(xiàn)機制使加密的各段數(shù)據(jù)之間有了聯(lián)系。其實現(xiàn)的機理如下:

加密步驟如下:

1. 首先將數(shù)據(jù)按照8個字節(jié)一組進行分組得到D1D2......Dn(若數(shù)據(jù)不是8的整數(shù)倍,用指定的PADDING數(shù)據(jù)補位)

2. 第一組數(shù)據(jù)D1與初始化向量I異或后的結果進行DES加密得到第一組密文C1(初始化向量I為全零)

3. 第二組數(shù)據(jù)D2與第一組的加密結果C1異或以后的結果進行DES加密,得到第二組密文C2

4. 之后的數(shù)據(jù)以此類推,得到Cn

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

這是分組密碼的工作模式  CBC是密碼分組鏈接模式ECB是電碼本模式

到此,相信大家對“PHP中DES、ECB和CBC三種加密方式有什么區(qū)別”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

php
AI