Modification Detection Code (MDC) Errors

Modification Detection Code (MDC) is an integrity check for OpenPGP messages which helps detect if messages have been tampered with. MDC was introduced in 2001 and is enabled by default for new keys in GnuPG since 2003. However, old keys that use old algorithms don't automatically benefit from MDC.

Part of the mitigations against the Efail vulnerability (https://efail.de), are that messages with no integrity check are no longer decrypted. Those mitigations were published with GPG Suite 2018.2 for macOS 10.13 High Sierra and 2018.3 for macOS 10.12 Sierra.

Since more users than we anticipated rely on messages or files using no MDC, we added options in GPGServices and GPGMail to still decrypt such messages or files. We do not recommend this, since without integrity protection (missing modification detection code) it is not possible to determine whether or not the encrypted data has been modified. So only use the workarounds, if you are absolutely certain that the message or file has not been modified.

Decrypting legacy messages or files with no MDC

GPG Suite 2018.3 added the ability to decrypt messages and files, which have no integrity protection, in GPGServices and GPGMail.

Use the workarounds with great care. They are not at all meant to be longterm solutions but merely a workaround to access old messages on which you rely. We strongly suggest to not use the workarounds with newly received messages.

GPGServices displays a warning for messages or files that do not have an integrity check. Only continue if you know what you are doing and are certain the message or file has not been modified.

To decrypt files in GPGServices right-click the file and select Services > OpenPGP: Decrypt File.

To decrypt messages in GPGServices mark the OpenPGP message, right-click and select Services > OpenPGP: Decrypt Selection.

Since Efail is foremost a method to exfiltrate decrypted content from a specially crafted email, we would like to know more if you encounter a missing or modified MDC error with in one of your emails. Please get in touch with us via System Preferences > GPG Suite Preferences. We will also provide you with a workaround for GPGMail if necessary.

Moving forward

The causes for messages with no MDC can be various. Using a wrong key configuration, outdated software or old legacy keys with weak security can all result in messages lacking an integrity check.

In case you are using a very old key with weak security, we recommend transitioning to a new key.

When you think your key is not at fault, please ask the message author of the problematic message about the software and version they are using and send us a report via System Preferences > GPG Suite Preferences.