2016-08-12 4 views
-2

AES秘密鍵を指定すると、その鍵を使用して復号化できるデータを偽造することは可能ですか?復号化されたデータは意味を持つ必要はなく、暗号化されたデータを偽造できるかどうかを知りたいだけです。AESで暗号化されたデータを偽造することは可能ですか?

+1

はい。一般に、AESは完全性チェックを提供せず、与えられた暗号化されたデータが(パディングされた)長さのようなヒント以外のものであるかどうかを判断する多くの方法はありません。 http://security.stackexchange.com/questions/9437/does-symmetric-encryption-provide-data-integrity – antak

+1

あなたは本当に文脈で "偽"を定義する必要があります。 16バイトの倍数は、AESで暗号化されたデータのように見えます。 – bartonjs

+1

これはプログラミングに直接関係していないので、この質問をトピックとしてクローズすることにしました。この質問は、[crypto.se]または[security.se]にはるかに適しています。 –

答えて

1

AESは対称暗号です。つまり、同じキーがデータの暗号化と復号化の両方に使用されます。そのため、鍵はコミュニケーションの両端と他の誰にも知られていなければなりません。認証と鍵交換は、Diffie-Hellman鍵交換などの公開鍵プロトコルを介して行われます。

あなたがAESキーを所有する第三者である場合、認証が失敗するため(ネゴシエーションが行われていないため)、「偽のデータ」を受信者に送信できないと想定します。このような接続を確立していれば、あなたが望むものを送信することができます(あなたは冗談を暗号化して送信できます)。暗号化されたパケットを変更する場合は、暗号化されたパケットを復号化して再暗号化せずに行うことができますが、完全性テスト(ハッシュやCRCがある場合など)は失敗する可能性が最も高いです。

関連する問題