ファイルを暗号化および復号化する必要があるアプリを作成しています。私の問題は、復号化が暗号化よりも約 5 倍遅いことです。すべてのファイルの読み取り/書き込み操作を取り除き、暗号化プロセスのみをベンチマークしました。結果は非常に驚くべきものでした:
encryptionCipher.doFinal()
(javax.crypto.Cipher のインスタンス) で1.5 MB バイト配列を暗号化する
~1600 ms
decryptionCipher.doFinal()
(javax.crypto.Cipher のインスタンス) を使用して 1.5 MB バイト配列を復号化する
~5800 ms
私が知っているように、AES 復号化と暗号化は対称的なプロセスであり、暗号化と復号化の速度に違いはないはずなので、私は非常に驚いています。
AES/CBC/PKCS7Padding
256 ビット キーの暗号を使用しています。
何が原因でしょうか?