Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Understanding the Operational Environment for Junos OS in FIPS Mode


A Juniper Networks router running the Juniper Networks Junos operating system (Junos OS) in FIPS mode forms a special type of hardware and software operational environment that is different from the environment of a router in non-FIPS mode:

Hardware Environment for Junos OS in FIPS Mode

Junos OS in FIPS mode establishes a cryptographic boundary in the router that no critical security parameters (CSPs) can cross using plain text. Each hardware component of the router that requires a cryptographic boundary for FIPS 140-2 compliance is a separate cryptographic module.

Cryptographic methods are not a substitute for physical security. The hardware must be located in a secure physical environment. Users of all types must not reveal keys or passwords, or allow written records or notes to be seen by unauthorized personnel.

Software Environment for Junos OS in FIPS Mode

A Juniper Networks router running Junos OS in FIPS mode forms a special type of nonmodifiable operational environment. To achieve this environment on the router, the system prevents the execution of any binary file that was not part of the certified Junos OS in FIPS mode distribution. When a router is in FIPS mode, it can run only Junos OS.

FIPS mode on MX Series routers is available in Junos OS Release 17.4R1-S1. The Junos OS in FIPS mode software environment is established after the Crypto Officer successfully enables FIPS mode on a router. The Junos OS Release 17.4R1-S1 image that includes FIPS mode is available on the Juniper Networks website and can be installed on a functioning router.

For FIPS 140-2 compliance, we recommend that you delete all user-created files and data from (that is, zeroize) the system immediately after enabling FIPS mode.

Enabling FIPS mode disables many of the usual Junos OS protocols and services. In particular, you cannot configure the following services in Junos OS in FIPS mode:

  • finger

  • ftp

  • rlogin

  • rsh

  • telnet

  • tftp

  • xnm-clear-text

Attempts to configure these services, or load configurations with these services configured, result in a configuration syntax error.

You can use only SSHv2 as a remote access service.

All passwords established for users after upgrading to Junos OS in FIPS mode must conform to Junos OS in FIPS mode specifications. Passwords must be between 10 and 20 characters in length and require the use of at least three of the five defined character sets (uppercase and lowercase letters, digits, punctuation marks, and keyboard characters, such as % and &, not included in the other four categories). The default password format is SHA512. Attempts to configure passwords that do not conform to these rules result in an error. All passwords and keys used to authenticate peers must be at least 10 characters in length, and in some cases the length must match the digest size.


Do not attach the router to a network until the Crypto Officer completes configuration from the local console connection.

Critical Security Parameters

Critical security parameters (CSPs) are security-related information such as cryptographic keys and passwords that can compromise the security of the cryptographic module or the security of the information protected by the module if they are disclosed or modified.

Zeroization of the system erases all traces of CSPs in preparation for operating the router or Routing Engine as a cryptographic module.

Table 1 lists CSPs on routers running Junos OS.

Table 1: Critical Security Parameters





SSHv2 private host key

ECDSA key used to identify the host, generated the first time SSH is configured.

Zeroize command.

Used to identify the host.

SSHv2 session key

Session key used with SSHv2 and as a Diffie-Hellman private key.

Encryption: 3DES, AES-128, AES-192, AES-256.

MACs: HMAC-SHA-1, HMAC SHA-2-256, HMAC SHA2-512.

Key exchange: dh-group14-sha1, ECDH-sha2-nistp256, ECDH-sha2-nistp384, and ECDH-sha2-nistp521.

Power cycle and terminate session.

Symmetric key used to encrypt data between host and client.

User authentication key

Hash of the user’s password: SHA-256, SHA-512.

Zeroize command.

Used to authenticate a user to the cryptographic module.

Crypto Officer authentication key

Hash of the Crypto Officer’s password: SHA-256, SHA-512.

Zeroize command.

Used to authenticate the Crypto Officer to the cryptographic module.


Seed for deterministic randon bit generator (DRBG).

Seed is not stored by the cryptographic module.

Used for seeding DRBG.


The value (V) of output block length (outlen) in bits, which is updated each time another outlen bits of output are produced.

Power cycle.

A critical value of the internal state of DRBG.

HMAC DRBG key value

The current value of the outlen-bit key, which is updated at least once each time that the DRBG mechanism generates pseudorandom bits.

Power cycle.

A critical value of the internal state of DRBG.

NDRNG entropy

Used as entropy input string to the HMAC DRBG.

Power cycle.

A critical value of the internal state of DRBG.

In Junos OS in FIPS mode, all CSPs must enter and leave the cryptographic module in encrypted form. Any CSP encrypted with a non-approved algorithm is considered plain text by FIPS. However, as the Crypto Officer, you can enter user authentication data in plain text.

Best Practice

For FIPS compliance, configure the router over SSH connections because they are encrypted connections.

Passwords are hashed with SHA-512 or SHA-256 algorithms. Password recovery is not possible in Junos OS in FIPS mode. Junos OS in FIPS mode cannot boot into single-user mode without the correct root password.