All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Bit manipulation uses integers for counts.
- Source code adapted for compatibility with .NET 6.
- Set all necessary options and imports in all files.
- Namespace changed to "TUPWLib".
- Corrected entropy threshold constant.
- Fixed structure property names.
- Fixed Fortify findings.
- Fixed missing Dispose in ProtectedByteArray.
- Removed unnecessary private class.
- Removed unnecessary Streams.
- Some small refactorings.
- Clear key in MaskedIndex.
- Simplified some object instantiations.
- Correct version information in AssemblyInfo.
- Use index masking instead of obfuscation array.
- Changed exception for invalid characters in Base32 encodings to FormatException.
- Clearer structure of getting encryption data from string.
- Corrected naming of some methods and improved error handling.
- Fixed some error messages.
- Made usage of SyncLock for disposal consistent.
- Added a maximum file size check for FileAndKeyEncryption.
- Changed some message creation methods.
- Put "IsValid" methods where they belong.
- Corrected tests for changed exception.
- Correct handling of diposed instances of FileAndKeyEncryption and SplitKeyEncryption.
- Throw ObjectDisposedException instead of InvalidOperationException if an instance of ProtectedByteArray or ShuffledByteArray is disposed of.
- Made hashing simpler and 2.5 times faster.
- Added missing test for source bytes being null.
- New format
6
introduced. It uses a custom form of Base32 encoding for the encrypted string. - Documented new format in
README.md
. - Changed
README.md
to use one line per sentence.