Closed szelenka closed 2 years ago
You could add something similar to this: https://github.com/dask/dask/blob/49d11a4e6cd9f2296f73c250fb636b679becd871/dask/base.py#L911-L916
Where it's explicit in setting usedforsecurity=False
, since this is just used as an ephemeral column to join the two dataframes
Thanks for the report. Makes sense to add the usedforsecurity=False
like dask did.
There's another md5 usage here too: https://github.com/pandas-dev/pandas/blob/6db95e79297a4dcefff53ca151324949b0c956c3/pandas/tests/io/pytables/test_store.py#L65
Pull requests welcome!
Pandas version checks
[X] I have checked that this issue has not already been reported.
[X] I have confirmed this bug exists on the latest version of pandas.
[X] I have confirmed this bug exists on the main branch of pandas.
Reproducible Example
Issue Description
When performing a cross merge on a system with FIPS Mode enabled, it will raise a ValueError when attempting to use a non-secure hashing algorithm (i.e. md5):
https://github.com/pandas-dev/pandas/blob/main/pandas/core/reshape/merge.py#L1295-L1314
The only workaround is to disable FIPS mode, which is insecure.
Expected Behavior
Pandas should be able to perform a cross merge on systems operating in FIPS mode. md5 is a forbidden algorithm in FIPS environments, so the easiest method is to change the md5 hash to a sha256 (or greater)
Installed Versions