問題タブ [cbc-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
4808 参照

encryption - CBC (Cipher Block Chaining) の自己修復性の説明

ウィキペディア:

CBC モードには自己修復の特性があります。暗号の 1 つのブロックが変更された場合、エラーは最大で 2 つのブロックに伝播します。

構成例:

ブロックサイズを 64 ビットとします。元の平文は次のとおりです。

正しい暗号文は次のとおりです。

暗号文が壊れていて、バイトが次の'0x4b'ように変更されている場合'0x4c':

次に、次のように復号化されます。

質問:

CBC (Cipher Block Chaining) の自己修復特性を理解するのに苦労しています。作成された例が役立つかもしれないと思っていましたが、今はもっと混乱しています。どんな助けでも素晴らしいでしょう。

0 投票する
1 に答える
3976 参照

java - JAVA: 画像を暗号化して表示する方法

Java を使用して画像を暗号化する必要があります。画像を適切に暗号化しましたが、ファイルを開こうとするとシステムが画像が長すぎるか破損したファイルであると表示するため、視覚化する方法がわかりません。pic ボディをメタデータなしで操作するにはどうすればよいですか?

ありがとう!!

0 投票する
1 に答える
6689 参照

java - Javaでcipher.updateは何をしますか?

DES-CBCを実装しています。私は何をしているのか混乱してcipher.initcipher.updateますcipher.dofinal。init を使用してキーを設定しdofinal、結果を取得するだけです。アップデートは使いません。あれは正しいですか?

また、 UTF-8ASCIIエンコーディングを使用した場合の結果の違いは何ですか?

これが私のコードです:

0 投票する
1 に答える
1084 参照

ios - iOS 3DES 暗号化/復号化 CBC

この 3DES 復号化について助けが必要です。復号化用のコードをいくつか作成しましたが、正常に機能させることができません。暗号化をいじるのは初めてで、ここで何が間違っているのか正確にはわかりません。

サーバーから復号化用のキーを受信して​​います (これはキーの値の例です: 0F7BC98767FF9A01F2B2AD1CD644AD33 - ランダムに生成されたバイトの 16 進数表現です)。

これは、メッセージを復号化するために使用する方法です。

-- 編集 --- これは、メソッドから受け取った出力です。

bufferPtr: × ÕÏÁU

--- EDIT 2 --- キーの長さを 24 バイトに固定しましたが、最終結果は空の文字列になりました

0 投票する
1 に答える
2449 参照

python-3.x - PyCrypto を使用して 32 バイトの初期化ベクトルで MCRYPT_RIJNDAEL_256 を復号化する

次のようにPHPで暗号化されたデータがあります。

このデータを Python 3 アプリケーションで復号化する必要があります。PyCrypto を使用しようとしていますが、他のライブラリも使用できます。以下が機能することを期待しています。

私の初期化ベクトルは 32 バイトで、次の例外がスローされます。

32 バイトの初期化ベクトルと 32 バイトのブロック サイズを使用するように PyCrypto を設定するにはどうすればよいですか? または、データの復号化に使用できる別のライブラリはありますか?

0 投票する
1 に答える
420 参照

encryption - AES での暗号化と復号化に 1 つのモードを使用できますか

サーバー側は AES/ECB/PKCS5Padding モードの暗号化を使用していますが、クライアント側 (モバイル) では AES/CBC/PKCS5Padding で復号化できますか? または、サーバー側とクライアント側の両方で同じモードを使用する必要がありますか?

お知らせ下さい。

0 投票する
1 に答える
889 参照

c# - 暗号化 AES 256 入力平文の長さの問題

セキュリティ チームから、AES256 キー強度と CBC モードを使用するように求められています。私のコードは、256 CBC とブロック サイズを 128 に変更した後、長さ 32 文字の入力平文を入力した場合にのみ機能します。

「これはテストです」(32 文字ではありません) と入力すると、次のメッセージが表示されます。

System.Security.Cryptography.CryptographicException: 入力データが完全なブロックではありません。

「ABCDEFGHIJKLMNOPQRSTUVWXYZ000000」と入力すると、うまくいきます!

「これはテストです」を入力としてこれを機能させるには、どのコードが必要ですか。

以下のコード:

0 投票する
1 に答える
285 参照

c++ - ファイルの復号化により、元のテキストと暗号化されたテキストの両方が表示されますか?

Crypto++ を使用してファイルの暗号化と復号化に取り組んでいます。暗号化ではkey 、ランダムIVが生成さhexencodedれ、ファイルからのテキストが暗号化されます。IVcipherテキストの両方が同じファイルに書き込まれます。

復号化でkeyは、暗号化と同じ基準を使用して生成IVされ、ファイルからランダムに抽出され、hexdecoded. 長さの後のテキストivは文字列に格納され、復号化されます。

何が起こるかというと、元のファイルを見ることができるので、それが機能していることはわかっていますがcipher、元のファイルのテキストの後にテキストも表示されます。それを解決する方法はありますか?

前もって感謝します。☺</p>