Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
C++RAD Studio

Quick And Responsive Test Suite For Analyzing C++ Hash Functions


There is no such thing as a good hash function for universal hashes. Depending on the context different criteria determine the quality of a hash. To test your hash function using data drawn from the same distribution that you expect it works on. When looking at a hash function on 64-bit longs, the default hash function is excellent if the input values are drawn uniformly from all possible long values.

There are different ways to test the distribution, collision, and performance properties of non-cryptographic hash functions. The probability is not a good idea when it comes to hash collisions or distribution. For this, several libraries utilize linear cryptoanalysis or other methods.

The SMHasher is a test suite designed to test the distribution, collision, and performance properties of the non-cryptographic hash function. It aims to be the DieHarder of hash testing and does a pretty good job of finding flaws with several popular hashes.

Be sure to head over and check out the SMHasher test suite on the GetIt portal and download it in the IDE!


What's New for RAD Studio 11

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

About author

Software Developer | B.Tech-CSE at AUT | Delphi/C++ Builder Enthusiast | Microsoft Learn Student Ambassador | Microsoft Azure Certified | Udacity Alumni
Related posts
C++CodeDelphiIDERAD Studio

New Platform Identifiers in RAD Studio, Delphi and C++Builder 11 Alexandria

C++CodeIDERAD Studio

C++Builder Compilers available in Version 11 Alexandria

C++CodeIDERAD Studio

5 Great Modern C++ Posts To Add To Your Toolkit


How To Migrate Legacy C++ Apps To Unicode

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.