Sage Infrastructure Solutions Group IncSage Infrastructure Solutions Group IncLoading…

Sage Infrastructure Solutions Group Inc

FIPS 140-3 mode

BackupMunk has two cryptography modes. Standard, the default, uses modern algorithms that aren't on the FIPS list, such as ChaCha20-Poly1305 and Argon2id. FIPS 140-3 mode uses only FIPS-approved algorithms for everything new, and runs the server and the agents on a validated cryptographic module. It's for organizations that must use FIPS-validated cryptography. The mode is an installation-wide setting and doesn't need a license.

What changes in FIPS 140-3 mode

Used forStandardFIPS 140-3
Encrypting backupsChaCha20-Poly1305AES-256-GCM
Sending destination keys to agentsX25519 sealed boxP-256 key agreement with AES-256-GCM
Recovery passphrasesArgon2idPBKDF2-HMAC-SHA256, 600,000 iterations
Local passwordsArgon2idPBKDF2-HMAC-SHA256, 600,000 iterations
Stored secrets (credentials, keys)AES-256-GCMAES-256-GCM
Backup checksumsSHA-256 and SHA-1SHA-256

In FIPS 140-3 mode the server, the agents and bmrecover --fips run on the Go Cryptographic Module v1.0.0, validated under FIPS 140-3 (CMVP certificate #5247). The module is part of every BackupMunk binary from version 0.6.62 and is switched on only in this mode.

Your existing backups keep working

Switching modes never makes existing data unreadable, in either direction:

  • Backups made in Standard mode restore in FIPS 140-3 mode, and backups made in FIPS 140-3 mode restore in Standard mode.
  • Stored credentials and keys don't change.
  • Existing passwords keep working. In FIPS 140-3 mode, each user's password is re-hashed with PBKDF2 the next time they sign in.
  • Existing recovery passphrases keep working. To move a passphrase to PBKDF2, enter it, or a new one, again on the destination. Only backups written after you save carry the new passphrase block.

Reading older data with its original algorithm is not new encryption. Everything written in FIPS 140-3 mode uses approved algorithms only.

Before you switch

  • Update your agents to 0.6.62 or later. FIPS 140-3 mode sends destination keys only to agents that support P-256. Backups pause on older agents until they're updated. Turn on automatic updates, or see Install agents.
  • Plan a short interruption. The server restarts to switch modes; it takes a few seconds. Agents restart after their running backups and restores finish.

Switch modes

  1. Go to Settings → Security.
  2. On the Cryptography card, select Switch to FIPS 140-3….
  3. Review the confirmation. It lists the clients whose backups will pause, and the destinations whose recovery passphrase still uses Argon2id.
  4. Select Restart in FIPS 140-3 mode.

The page waits for the server to come back. The card then shows FIPS 140-3, and the module shows Running. Agents switch at their next check-in with the server. Switching back to Standard works the same way.

The change is recorded in the audit log. On a hot standby, the standby follows the primary's mode and restarts with it.

After switching

  • Paused clients: the client's page says why its backups are paused. Backups resume once the agent is updated and checks in.

  • Recovery passphrases: a destination whose passphrase predates FIPS mode shows a note in its settings. Enter the passphrase again to move it to PBKDF2.

  • Offline recovery: bmrecover reads both formats. Add --fips to run it on the validated module:

    bmrecover --fips --passphrase 'secret' --out ./restored backup.bmbak
    

Not covered by FIPS 140-3 mode

  • Network connections: HTTPS between your browser, the agents, the server and your storage uses the TLS settings of those endpoints. With FIPS 140-3 mode on, the server and agents restrict their own TLS to approved algorithms. A reverse proxy or your storage provider must be configured separately.
  • Storage-side encryption: encryption your storage provider applies on its side is outside BackupMunk.