As discussed on this thread on DevTalk, the external compositing application Nuke internally renames the various layers of an OpenEXR image on import, removing characters like spaces and dots. Nuke does this because it interprets anything after dots as channels.
This patch adds an option to the Preferences, which - if set to 'Nuke Compatible' - replaces such characters in the metadata channel names only. I tried doing the same for layer names, but soon figured that Blenders image editor doesn't appreciate that. In fact, it either does not recognize what was a View Layer and what was a Pass before, or even crashes when loading / displaying such an image. Since this is technically not even necessary (the metadata names only need to match layer names in case of Cryptomattes as far as I am aware), I stuck with only adapting the metadata and nothing else.
Access the Metadata generation mode from the Preferences:
You can verify the output in the Image Editor after rendering:
The default is of course Blender.