php には、DES、ECB、CBC などのいくつかの暗号化方式があります。今日は、これら 3 つの暗号化方式の違いについて説明します。必要に応じて参照してください。
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 の XOR の結果は、最初のデータを取得するために DES 暗号化されます。暗号文のセット C1 (初期化ベクトル I は完全なゼロ)
3. 2 番目のデータ セット D2 は最初の暗号化結果セット C1 と XOR 演算され、結果は DES 暗号化されて 2 番目のデータ セットが取得されます。暗号文 C2
4. 類推すると、Cn
5 が得られます。C1C2C3...Cn が暗号化結果であるように順番に接続します。
これはブロック暗号の動作モードです CBC はパスワード ブロック チェーン モードです ECB はコード ブック モードです
推奨される学習: php ビデオ チュートリアル
以上がDES、ECB、CBC 暗号化方式の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。