Increase test coverage for AesCipher #1232
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The tests were generated by a script which is also added for posterity. The script works by running
openssl enc [...]
(via WSL) to generate the expected encrypted values, and also verifies those values against the .NET BCL implementation as an extra validation before generating the tests.The new tests uncovered a bug in
OfbCipherMode
, or rather, that it was an exact duplicate ofCfbCipherMode
. The second commit fixes the new failing tests (by following the nice pictures in https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation#Output_feedback_(OFB)).I would like to help with #865, this should add confidence there.