Releases: Deskasoft/HashifyNET
Releases · Deskasoft/HashifyNET
7.1.1
7.0.1
Immutable
release. Only release title and notes can be modified.
This release is a hotfix right after the latest major release, fixing the unusable Base58 generation. No other changes were made with this release.
Full Changelog: 7.0.0...7.0.1
7.0.0
6.1.0
6.0.0
Immutable
release. Only release title and notes can be modified.
What's Changed
- Config profiles support by @LordOfXen in #1
Please check V6.0.0 for a brief list of the changes we've made.
Full Changelog: 5.0.1...6.0.0
5.0.1
5.0.0
4.0.1
Immutable
release. Only release title and notes can be modified.
This is the same as 4.0.0-beta, just a bumped version to move out of beta since there are no critical issues detected.
Feel free to open new issues and PRs if you have anything in mind.
Full Changelog: 4.x.x...4.0.1
HashifyNET 4.0.0
The entire library has been revamped and renamed to HashifyNET, replacing the previous name of Data.HashFunction.
Changes include but are not limited to:
- Standardized
HashFactoryclass for all hash functions. - Support for 11 more hash algorithms as listed on the main page.
- Bug fixes in CRC with pre-defined configs not being cloned before returning. This was causing a potential leak of the original config class that can be accessed by casting the interface to the underlying class. If the values were then changed by any chance, the default config values would be changed as well, leading to hard-to-predict behaviour for developers. This has been prevented with a
Clonecall. - Simplified Farm Hash and Metro Hash to use configs instead of different implementations for each bit size.
- Enforced config implementation for every hash function; configs are now globalized across the entire library.
- Added
HashComparerstatic class for fixed time comparisons of two cryptographic hashes. It is primarily required for cryptographic hashes. - Added cryptographic interfaces and base classes to the core. However, the current support only includes cryptographic config disposal and nothing more yet.
- Added
Endiannessstatic class, but it is currently not mature yet. It is for internal use only, shared across the entire library for each hash algorithm to use. - Added support for .NET 8, which was primarily aimed at for future intrinsics support.
- Blake3 implementation is rewritten entirely in C#, no dependency or unmanaged library required anymore.
- The custom
UInt128struct has been restricted to .NET Standard 2.0 use, and the built-inUInt128will be used in .NET 8. We have also moved the customUInt128implementation in each algorithm into a single place underCore.Utilities, no more redundant definitions for such utilities.
Full Changelog: https://github.com/Deskasoft/HashifyNET/commits/4.x.x