Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added usedforsecurity=False flag to hashlib.md5 uses for FIPS-enabled systems. #3237

Merged
merged 2 commits into from
May 20, 2024

Conversation

robfalck
Copy link
Contributor

@robfalck robfalck commented May 15, 2024

Summary

Users of Linux systems with FIPS (Federal Information Processing Standard) enabled were unable to use OpenMDAO features which called hashlib.md5. The argument usedforsecurity=False allows this code to operate, but is only available in Python >= 3.9.

This change adds the usedforsecurity=False to hashlib.md5 calls.
WIth Python 3.8 this will fall back to the previous method without the argument, so FIPS systems will need to use Python 3.9 or later.

Related Issues

Backwards incompatibilities

None

New Dependencies

None

@andrewellis55
Copy link
Contributor

@robfalck if it's only one try except I would very much appreciate keeping the support for python 3.8 at least until the end of life. My team has an action to move towards a higher version by the end of the year but for the moment we havn't quite moved yet.

@coveralls
Copy link

coveralls commented May 15, 2024

Coverage Status

coverage: 86.986%. first build
when pulling 4383989 on robfalck:i3236
into 63982ba on OpenMDAO:master.

@robfalck
Copy link
Contributor Author

@andrewellis55 it's fairly easy to accommodate 3.8 here so I'll make the change. Out of curiosity, what's blocking you from upgrading to 3.9 or later?

@andrewellis55
Copy link
Contributor

andrewellis55 commented May 16, 2024

@robfalck Just scheduling. It's very firmly on the todo list and should be complete by the official 3.8 End of Life. There are a few (minor) extra steps we need to take when performing upgrades because of corporate IT policies.

@robfalck robfalck changed the title Bumped min python to 3.9 and added usedforsecurity=False flag to hashlib.md5 uses. Added usedforsecurity=False flag to hashlib.md5 uses for FIPS-enabled systems. May 16, 2024
@swryan swryan merged commit b6f606a into OpenMDAO:master May 20, 2024
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Exception thrown using recording manager on Linux computer with FIPS
5 participants