SQLServer 2016 – HashBytes MD5 Deprecated?

i found this information in sql server 2016 documentation.

beginning with sql server 2016, all algorithms other than sha2_256, and sha2_512 are deprecated. older algorithms (not recommended) will continue working, but they will raise a deprecation event.

would using this have a performance impact? would you recommend using either of the supported algorithms as a dv standard?

3 Responses to “SQLServer 2016 – HashBytes MD5 Deprecated?”

  1. Dan Linstedt 2017/11/10 at 4:21 am #

    Answer: YES. This particular change to Hashes in SQLServer 2016 WILL impact performance in a negative fashion. Not just for loading but for querying.

    In reality, we truly WANT to leverage Business Keys. Sadly, SQLServer does not “hash bucket” the business keys for partitioning under the covers. Teradata, SAP Hana, Kudu, and Hive are all capable of hashing by Business Key. So, I will look deeper at this function in an attempt to find a better solution.

  2. Archie 2019/06/11 at 9:38 pm #

    Dan, do you have any thoughts now?

  3. Dan Linstedt 2019/10/24 at 4:33 am #

    MD5 and SHA-1 are still around, in fact, SHA-1 has become the new acceptable standard. It is still fast enough, but it helps reduce the possible collisions. Even though vendors have deprecated these functions, they still work.

Comment on this FAQ