0

PHP を使用してデータを暗号化するために Triple DES アルゴリズムを使用しています。次に、C# Windows フォーム アプリケーションを使用して暗号化を解除します。

\0\0\0\0\0\0\0\0一部のデータを復号化すると、 PHP で暗号化された元のテキストの末尾にあることがわかります。何が原因でしょうか?

4

2 に答える 2

5

暗号化アルゴリズムでは、データが特定のバイト数の倍数である必要があります。データの長さが適切でない場合は、データを埋めるために null 文字が追加されます。これは、復号化後に表示されるものです。これは予想されることであり、それらを削除するだけで済みます。

于 2012-06-01T01:03:42.250 に答える
1

mcrypt_encryptデフォルトでは、ゼロパディングという不適切な選択を使用します。mcrypt_encryptページのユーザー コメントで説明されているように、代わりに PKCS7 パディングを使用します。

于 2012-06-01T01:05:24.023 に答える