でテキストをカット。 IVの長さは16バイトです。AES暗号化はノーパディング</p> <p>「<strong>AES/CFB/NoPadding</strong>」でCFBモードでAESを使用して、データをファイルから読み込み、暗号化しようとしていますCFBモード
デフォルトでAESが16バイトブロックで動作するとすれば、CBCや他のどのモードを使用していてもCFBを使用していた場合、パディングスキームを使用すると思います。 CFBは本質的に平文のためのパディングを必要としません。
したがって、ファイルに16バイト未満のデータが含まれていると、何も暗号化されないという問題があります。 16バイトより大きい場合、最初の16バイトだけが暗号化されます。
これは、ブロックサイズがキックインされていることと、バイトw.r.tのアンダーフローまたはオーバーフローがあることを明確に示しています。ブロックサイズの場合、そのデータ/バイトは破棄されます。
私が理解できないことは、CFBを使用している間にデータを埋め込む必要がないということです。それでは、AESの16byteのデフォルトブロックサイズが動作し、データが切り捨てられるのはなぜですか?
暗号化に使用しているコードを投稿してください。 – Robert