All modules
CMVP Validated Module · FIPS 140-3 Security Policy

Masimo Cryptographic Module

Certificate#4788StandardFIPS 140-3Level1TypeSoftwareEmbodimentMulti-Chip Stand AloneStatusActiveVendorMasimo Corporation
Medium review priority  ·  exposes kernel crypto consumer  ·  last validated 22 months ago. How this is derived →

Certificate

StandardFIPS 140-3
Overall level1
Module typeSoftware
EmbodimentMulti-Chip Stand Alone
StatusActive
Sunset date9/3/2026
CaveatInterim validation. When operating in the approved mode. No assurance of the minimum strength of generated SSPs
VendorMasimo Corporation

Approved Algorithms (63)

AlgorithmACVP Cert
AES-CBCA3595
AES-CCMA3595
AES-CFB1A3595
AES-CFB128A3595
AES-CFB8A3595
AES-CMACA3595
AES-CTRA3595
AES-ECBA3595
AES-GCMA3595
AES-GMACA3595
AES-KWA3595
AES-KWPA3595
AES-OFBA3595
AES-XTS Testing Revision 2.0A3595
Counter DRBGA3595
DSA KeyGen (FIPS186-4)A3595
DSA PQGGen (FIPS186-4)A3595
DSA PQGVer (FIPS186-4)A3595
DSA SigGen (FIPS186-4)A3595
DSA SigVer (FIPS186-4)A3595
ECDSA KeyGen (FIPS186-4)A3595
ECDSA KeyVer (FIPS186-4)A3595
ECDSA SigGen (FIPS186-4)A3595
ECDSA SigVer (FIPS186-4)A3595
HMAC-SHA-1A3595
HMAC-SHA2-224A3595
HMAC-SHA2-256A3595
HMAC-SHA2-384A3595
HMAC-SHA2-512A3595
HMAC-SHA3-224A3595
HMAC-SHA3-256A3595
HMAC-SHA3-384A3595
HMAC-SHA3-512A3595
KAS-ECC-SSC Sp800-56Ar3A3595
KAS-FFC-SSC Sp800-56Ar3A3595
PBKDFA3595
RSA KeyGen (FIPS186-4)A3595
RSA SigGen (FIPS186-4)A3595
RSA SigGen (FIPS186-4)A3595
RSA SigGen (FIPS186-4)A3595
RSA SigVer (FIPS186-4)A3595
RSA SigVer (FIPS186-4)A3595
RSA SigVer (FIPS186-4)A3595
SHA-1A3595
SHA2-224A3595
SHA2-256A3595
SHA2-384A3595
SHA2-512A3595
SHA3-224A3595
SHA3-256A3595
SHA3-384A3595
SHA3-512A3595
SHAKE-128A3595
SHAKE-256A3595
TDES-CBCA3595
TDES-CFB1A3595
TDES-CFB64A3595
TDES-CFB8A3595
TDES-CMACA3595
TDES-ECBA3595
TDES-OFBA3595
TLS v1.2 KDF RFC7627A3595
TLS v1.3 KDFA3595

Derived Review-Risk Graph (review prompts, not findings)

flowchart LR
  %% Deterministic review-risk graph for Masimo Cryptographic Module
  %% Review prompts and evidence gaps, NOT vulnerability findings.
  subgraph CMVP["CMVP-disclosed clues"]
    C3["[low] Self-test / status surface<br/>(referenced in text)<br/><i>Self-Test<br/>Status Output</i>"]
    C5["[low] Protocol / secure-channel<br/>references (may be KDF<br/>names, not a live channel)<br/><i>TLS<br/>HTTPS<br/>library named: openssl</i>"]
    C6["[low] Operating system / runtime<br/>referenced (boundary<br/>membership not asserted)<br/><i>operating system<br/>linux<br/>kernel</i>"]
  end
  subgraph Inference["Derived inference"]
    I3["Possible only, some<br/>services may process input<br/>before, or without,<br/>operator authentication."]
    I5["Possible only, a protocol<br/>is referenced, but whether<br/>it is a live channel or<br/>only a KDF/algorithm name<br/>is unconfirmed."]
    I6["Possible only, a<br/>runtime/OS is referenced,<br/>but its membership in the<br/>cryptographic boundary is<br/>not established."]
  end
  subgraph Risk["Reviewer question"]
    R3["Can unauthenticated<br/>services leak state,<br/>consume resources, or<br/>transition security state?"]
    R5["If a live TLS/SSH/IKE<br/>channel exists, could<br/>library CVEs apply, or is<br/>this only a<br/>KDF/documentation name?"]
    R6["If the OS/runtime is<br/>in-boundary, could its<br/>CVEs be hidden by<br/>firmware-only versioning?"]
  end
  subgraph Evidence["Evidence needed to close"]
    E3["confirm the disclosure<br/>itself (keyword hit,<br/>context unverified) ·<br/>pre-auth reachability<br/>matrix · rate limits and<br/>output redaction ·<br/>abuse-case tests"]
    E5["confirm the disclosure<br/>itself (keyword hit,<br/>context unverified) ·<br/>library identity and<br/>version ·<br/>certificate-validation<br/>behaviour · protocol-CVE<br/>disposition"]
    E6["confirm the disclosure<br/>itself (keyword hit,<br/>context unverified) ·<br/>runtime identity and<br/>config · kernel/runtime<br/>hardening profile ·<br/>patch/backport manifest"]
  end
  C3 --> I3 --> R3 --> E3
  C5 --> I5 --> R5 --> E5
  C6 --> I6 --> R6 --> E6
  classDef clue fill:#eef3f9,stroke:#6f7f91,color:#1f3a5f;
  classDef infer fill:#fff7e6,stroke:#b98500,color:#6b4e00;
  classDef risk fill:#fbe9e9,stroke:#b02a2a,color:#7a1f1f;
  classDef evidence fill:#e6f4ea,stroke:#1e7d34,color:#14532d;
  class C3,C5,C6 clue;
  class I3,I5,I6 infer;
  class R3,R5,R6 risk;
  class E3,E5,E6 evidence;
Underlying clues
flowchart LR
  %% Deterministic clue tier for Masimo Cryptographic Module
  %% confidence: high = structured record field; medium = structured but soft; low (dashed) = bare keyword hit, context unverified
  subgraph CMVP["CMVP-disclosed clues (deterministic)"]
    C3["[low] Self-test / status surface (referenced in text)<br/><i>Self-Test<br/>Status Output</i><br/>src: text:keyword"]
    C5["[low] Protocol / secure-channel references (may be KDF names, not a live channel)<br/><i>TLS<br/>HTTPS<br/>library named: openssl</i><br/>src: text:keyword"]
    C6["[low] Operating system / runtime referenced (boundary membership not asserted)<br/><i>operating system<br/>linux<br/>kernel</i><br/>src: text:keyword"]
  end
  classDef clueHigh fill:#eef3f9,stroke:#2f6fb0,stroke-width:2px,color:#1f3a5f;
  classDef clueMedium fill:#eef3f9,stroke:#6f7f91,color:#1f3a5f;
  classDef clueLow fill:#f7f7f7,stroke:#999,stroke-dasharray:4 4,color:#444;
  class C3,C5,C6 clueLow;

Security Policy, page by page

Page 1

Masimo Corporation Masimo Cryptographic Module Software Version: 1.0 FIPS Security Level: 1 Document Version: 0.2 Prepared for: Prepared by: Masimo Corporation Corsec Security, Inc.

52 Discovery 12600 Fair Lakes Circle, Suite 210

Irvine, CA 92618 Fairfax, VA 22033 United States of America United States of America Phone: +1 800 326 4890 Phone: +1 703 267 6050 www.masimo.com www.corsec.com

Page 2

Abstract This is a non-proprietary Cryptographic Module Security Policy for the Masimo Cryptographic Module (software version: 1.0) from Masimo Corporation (Masimo). This Security Policy describes how the Masimo Cryptographic Module meets the security requirements of Federal Information Processing Standards (FIPS) Publication 140-3, which details the U.S. and Canadian government requirements for cryptographic modules. More information about the FIPS 140-3 standard and validation program is available on the Cryptographic Module Validation Program (CMVP) website, which is maintained by the National Institute of Standards and Technology (NIST) and the Canadian Centre for Cyber Security (CCCS). This document also describes how to run the module in an Approved mode of operation. This policy was prepared as part of the Level 1 FIPS 140-3 validation of the module. The Masimo Cryptographic Module is referred to in this document as Masimo Crypto Module or the module. References This document deals only with operations and capabilities of the module in the technical terms of a FIPS 140-3 cryptographic module security policy. More information is available on the module from the following sources:

Page 3
Table of Contents
#SectionPage
Page 4
List of Tables
ItemPage
Table 1 – Security Levels5
Table 2 – Tested Operational Environments6
Table 3 – Vendor-Affirmed Operational Environments6
Table 4 – Approved Algorithms7
Table 5 – Non-Approved Algorithms Allowed in the Approved Mode of Operation11
Table 6 – Non-Approved Algorithms Not Allowed in the Approved Mode of Operation12
Table 7 – Ports and Interfaces16
Table 8 – Roles, Service Commands, Input and Output17
Table 9 – Approved Services19
Table 10 – Non-Approved Services20
Table 11 – SSPs26
Table 12 – Acronyms and Abbreviations39
Figure 1 – Hardware Block Diagram (Root)13
Figure 2 – Hardware Block Diagram (Radical-7)14
Figure 3 – Module Block Diagram (with Cryptographic Boundary)15
Page 5
ISO/IEC 24579 Section 6. [Number Below]FIPS 140-3 Section TitleSecurity Level
1General1
2Cryptographic Module Specification1
3Cryptographic Module Interfaces1
4Roles, Services, and Authentication1
5Software/Firmware Security1
6Operational Environment1
7Physical SecurityN/A
8Non-Invasive SecurityN/A
9Sensitive Security Parameter Management1
10Self-tests1
11Life-Cycle Assurance1
12Mitigation of Other AttacksN/A

Masimo Corporation is a global medical technology company that develops and produces a wide array of industryleading monitoring technologies, including innovative measurements, sensors, patient monitors, and automation and connectivity solutions. Our mission is to improve patient outcomes and reduce the cost of care. Masimo’s Root® Patient Monitoring and Connectivity Platform was built from the ground up to be as flexible and expandable as possible to facilitate the addition of other Masimo and third-party monitoring technologies. When connected to Masimo’s Radical-7 Pulse CO-Oximeter®, Root provides continuous monitoring using industryleading Masimo SET® Measure-through Motion and Low Perfusion™ pulse oximetry. In addition, the platform can be upgraded to provide Masimo rainbow SET® technology, allowing clinicians to non-invasively monitor multiple additional physiologic parameters. The Masimo Cryptographic Module v1.0 is a software library providing a C language API 1 for use by Masimo products requiring cryptographic functionality. The Masimo Cryptographic Module v1.0 includes symmetric encryption/decryption, digital signature generation/verification, hashing, cryptographic key generation, random number generation, message authentication, and SSP establishment functions to secure data-at-rest/data-inflight and offers cryptographic support for secure communications protocols (including TLS2 1.2/1.3). The Masimo Cryptographic Module is validated at the FIPS 140-3 section levels shown in Table

  1. Table 1 – Security Levels The module has an overall security level of
  2. API – Application Programming Interface

2 TLS – Transport Layer Security

Page 6
#Operating SystemHardware PlatformProcessorPAA/Acceleration
1Custom Linux OS with Linux kernel 2.6.38Masimo Radical-7ARM Cortex-A8 (ARMv7-A)Without PAA
2Custom Linux OS with Linux kernel 4.9.43Masimo RootARM Cortex-A8 (ARMv7-A)Without PAA
#Operating SystemHardware Platform
1Red Hat Enterprise Linux 8Masimo Patient SafetyNet
2Red Hat Enterprise Linux 8Masimo Iris Gateway
3Windows 10 Pro on VMware Workstation 15.xMasimo Patient SafetyNet View Station
4Custom Linux OS with Linux 4.14.78Masimo Rad-97
5Custom Linux OS with Linux 4.14.78Masimo Rad-67
6Custom Linux OS with Linux 4.14.78Masimo Radius VSM
7Custom Linux OS with Linux 4.16.7Masimo Radius-7
8Custom Linux OS using Yocto standardMasimo iSirona Connectivity Hub
9Android 6.0.1Masimo Uniview Media Hub
10Android 7.0Masimo Uniview 60 Tablet
11Android 12.0Masimo Zebra TC51-HC Phone
12Custom Linux OS with Linux kernel 4.14.78Masimo Radical-7 w/ ARM Cortex-A9 (ARMv7-A)
13Custom Linux OS with Linux kernel 4.14.78Masimo Root w/ ARM Cortex-A9 (ARMv7-A)

2. Cryptographic Module Specification The Masimo Cryptographic Module v1.0 is a software module with a multi-chip standalone embodiment. The module is designed to operate within a modifiable operational environment.

2.1 Operational Environments

The module was tested and found to be compliant with FIPS 140-3 requirements on the environments listed in Table

  1. Table 2 – Tested Operational Environments The vendor affirms the module’s continued validation compliance when operating on the environments listed in Table
  2. Table 3 – Vendor-Affirmed Operational Environments The cryptographic module maintains compliance when operating on a general-purpose computer (GPC) with any of the following supported bare metal and virtual environments: Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation
Page 7
CAVP CertificateAlgorithm and StandardMode / MethodDescription / Key Size(s) / Key StrengthsUse / Function
A3595AES FIPS PUB3 197 NIST SP 800-38ACBC4, CFB15, CFB8, CFB128, CTR6, ECB7, OFB8128, 192, 256Encryption/decryption
A3595AES NIST SP 800-38BCMAC9128, 192, 256MAC generation/verification
A3595AES NIST SP 800-38CCCM10128, 192, 256Encryption/decryption
A3595AES NIST SP 80- 38DGCM11 (internal IV)128, 192, 256Encryption/decryption
A3595AES NIST SP 80- 38DGMAC12128, 192, 256Encryption/decryption
A3595AES NIST SP 800-38EXTS13,14,15128, 256Encryption/decryption
2.2 Algorithm Implementations

Validation certificates for each Approved security function are listed in Table 4. Note that there are algorithms, modes, and key/moduli sizes that have been CAVP-tested but are not used by any Approved service of the module. Only the algorithms, modes/methods, and key lengths/curves/moduli shown in Table 4 are used by an Approved service of the module. Table 4 – Approved Algorithms

3 PUB – Publication

4 CBC – Cipher Block Chaining

6 CTR – Counter

7 ECB – Electronic Code Book

8 OFB – Output Feedback

CMAC – Cipher-Based Message Authentication Code

10 CCM – Counter with Cipher Block Chaining - Message Authentication Code

11 GCM – Galois Counter Mode

12 GMAC – Galois Message Authentication Code

13 XOR – Exclusive OR

XEX – XOR Encrypt XOR

15 XTS – XEX-Based Tweaked-Codebook Mode with Ciphertext Stealing

Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 8
CAVP CertificateAlgorithm and StandardMode / MethodDescription / Key Size(s) / Key StrengthsUse / Function
A3595AES NIST SP 800-38FKW16, KWP17128, 192, 256Encryption/decryption
A3595CVL18 RFC19 7627TLS v1.2 KDF RCF7627-Key derivation No part of the TLS v1.2 protocol, other than the KDF, has been tested by the CAVP and CMVP.
A3596CVL RFC 8446TLS v1.3 KDF-Key derivation No part of the TLS v1.3 protocol, other than the KDF, has been tested by the CAVP and CMVP.
A3595DRBG20 NIST SP 800-90Arev1Counter-basedAES-128, AES-192, AES-256Deterministic random bit generation
A3595DSA21 FIPS PUB 186-4-2048/224, 2048/256, 3072/256 (SHA2-224, SHA2-256, SHA2-384, SHA2-512)Domain parameter generation
-1024/160, 2048/224, 2048/256, 3072/256 (SHA- 1, SHA2-224, SHA2-256, SHA2-384, SHA2-512)Domain parameter verification
-2048/224, 2048/256, 3072/256Key pair generation
-2048/224, 2048/256, 3072/256 (SHA2-224, SHA2-256, SHA2-384, SHA2-512)Digital signature generation
-1024/160, 2048/224, 2048/256, 3072/256 (SHA- 1, SHA2-224, SHA2-256, SHA2-384, SHA2-512)Digital signature verification
A3595ECDSA22 FIPS PUB 186-4Secrets generation mode: Testing candidatesB-233, B-283, B-409, B-571, K-233, K-283, K-409, K-571, P-224, P-256, P-384, P-521Key pair generation
-B-163, B-233, B-283, B-409, B-571, K-163, K-233, K-283, K-409, K-571, P-192, P-224, P-256, P-384, P-521Public key validation

17 KWP – Key Wrap with Padding

18 CVL – Component Validation List

19 RFC – Request for Comments

20 DRBG – Deterministic Random Bit Generator

22 ECDSA – Elliptic Curve Digital Signature Algorithm

Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 9
CAVP CertificateAlgorithm and StandardMode / Method - -Description / Key Size(s) / Key Strengths B-233, B-283, B-409, B-571, K-233, K-283, K-409, K-571, P-224, P-256, P-384, P-521 (SHA2-224, SHA2-256, SHA2-384, SHA2-512) B-163, B-233, B-283, B-409, B-571, K-163, K-233, K-283, K-409, K-571, P-192, P-224, P-256, P-384, P-521 (SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-512)Use / Function Digital signature generation Digital signature verification
A3595HMAC FIPS PUB 198-1SHA-1, SHA2-224, SHA2- 256, SHA2-384, SHA2-512, SHA3-224, SHA3-256, SHA3-384, SHA3-512-Message authentication
A3595 A3596KAS23 NIST SP 800-56Arev3KAS-ECC-SSC with KDFs (TLS 1.2 RFC7627, TLS 1.3)B-233, B-283, B-409, B-571, K-233, K-283, K-409, K-571, P-224, P-256, P-384, P-521Key agreement SSP establishment methodology provides between 112 and 256 bits of encryption strength.
KAS-FFC-SSC with KDFs (TLS 1.2 RFC7627, TLS 1.3)FB, FCKey agreement SSP establishment methodology provides 112 bits of encryption strength.
A3595KAS-ECC-SSC24 NIST SP 800-56Arev3ephemeralUnifiedB-233, B-283, B-409, B-571, K-233, K-283, K-409, K-571, P-224, P-256, P-384, P-521Shared secret computation25
A3595KAS-FFC-SSC26 NIST SP 800-56Arev3dhEphemFB, FCShared secret computation27
A3595KTS NIST SP 800-38CAES-CCM128, 192, 256Key wrap/unwrap (authenticated encryption)28 SSP establishment methodology provides between 128 and 256 bits of encryption strength
A3595KTS NIST SP 800-38DAES-GCM128, 192, 256Key wrap/unwrap (authenticated encryption)29 SSP establishment methodology provides between 128 and 256 bits of encryption strength

24 KAS-ECC-SSC – Key Agreement Scheme - Elliptic Curve Cryptography - Shared Secret Computation

25 Key agreement method complies with FIPS 140-3 Implementation Guidance D.F, scenario 2(1).

26 KAS-FFC-SSC – Key Agreement Scheme - Finite Field Cryptography - Shared Secret Computation

27 Key agreement method complies with FIPS 140-3 Implementation Guidance D.F, scenario 2(1).

Per FIPS 140-3 Implementation Guidance D.G, AES-CCM is an Approved key transport technique.

29 Per FIPS 140-3 Implementation Guidance D.G, AES-GCM is an Approved key transport technique.

Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 10
CAVP CertificateAlgorithm and StandardMode / MethodDescription / Key Size(s) / Key StrengthsUse / Function
A3595KTS30 NIST SP 800-38FAES key wrap128, 192, 256Key wrap/unwrap SSP establishment methodology provides between 128 and 256 bits of encryption strength
A3595KTS FIPS PUB 197 NIST SP 800-38BAES with CMAC128, 192, 256Key wrap/unwrap (encryption with message authentication)31 SSP establishment methodology provides between 128 and 256 bits of encryption strength
A3595KTS FIPS PUB 197 NIST SP 800-38DAES with GMAC128, 192, 256Key wrap/unwrap (encryption with message authentication)32 SSP establishment methodology provides between 128 and 256 bits of encryption strength
A3595KTS FIPS PUB 197 FIPS PUB 198-1AES-CBC with HMAC128, 192, 256Key wrap/unwrap (encryption with message authentication)33 SSP establishment methodology provides between 128 and 256 bits of encryption strength
A3595KTS NIST SP 800-67rev2 NIST SP 800-38BTriple-DES with CMAC112 (KO2), 168 (KO1)Key unwrap (encryption with message authentication)34
A3595KTS NIST SP 800-67rev2 FIPS PUB 198-1Triple-DES with HMAC112 (KO2), 168 (KO1)Key unwrap (encryption with message authentication)35 SSP establishment methodology provides 112 or 168 bits of encryption strength
A3595PBKDF236 NIST SP 800-132Section 5.4, option 1aSHA-1, SHA2-224, SHA2- 256, SHA2-384, SHA2-512, SHA3-224, SHA3-256, SHA3-384, SHA3-512Password-based key derivation
A3595RSA FIPS PUB 186-4Key generation mode: B.3.32048, 3072, 4096Key pair generation
ANSI37 X9.312048, 3072, 4096 (SHA2- 256, SHA2-384, SHA2-512)Digital signature generation
1024, 2048, 3072, 4096 (SHA-1, SHA2-256, SHA2- 384, SHA2-512)Digital signature verification

30 KTS – Key Transport Scheme

Per FIPS 140-3 Implementation Guidance D.G, AES with CMAC is an Approved key transport technique.

32 Per FIPS 140-3 Implementation Guidance D.G, AES with GMAC is an Approved key transport technique.

33 Per FIPS 140-3 Implementation Guidance D.G, AES with HMAC is an Approved key transport technique.

34 Per FIPS 140-3 Implementation Guidance D.G, Triple-DES with CMAC is an Approved key transport technique.

35 Per FIPS 140-3 Implementation Guidance D.G, Triple-DES with HMAC is an Approved key transport technique.

37 ANSI – American National Standards Institute

Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 11
CAVP CertificateAlgorithm and StandardMode / Method PKCS#1 v1.5 PSS38Description / Key Size(s) / Key Strengths 2048, 3072, 4096 (SHA2- 224, SHA2-256, SHA2-384, SHA2-512) 1024, 2048, 3072, 4096 (SHA-1, SHA2-224, SHA2- 256, SHA2-384, SHA2-512) 2048, 3072, 4096 (SHA2- 224, SHA2-256, SHA2-384, SHA2-512) 1024, 2048, 3072, 4096 (SHA-1, SHA2-224, SHA2- 256, SHA2-384, SHA2-512)Use / Function Digital signature generation Digital signature verification Digital signature generation Digital signature verification
A3595SHA-3 FIPS PUB 202SHA3-224, SHA3-256, SHA3-384, SHA3-512-Message digest
A3595SHAKE39 FIPS PUB 202SHAKE-128, SHAKE-256-Message digest
A3595SHS40 FIPS PUB 180-4SHA-1, SHA2-224, SHA2- 256, SHA2-384, SHA2-512-Message digest
A3595Triple-DES NIST SP 800-67rev2 NIST SP 800-38ACBC, CFB1, CFB8, CFB64, ECB, OFB168 (KO1)Decryption
A3595Triple-DES NIST SP 800-67rev2 NIST SP 800-38BCMAC112 (KO2), 168 (KO1)MAC verification
AlgorithmCaveatUse / Function
AES (Cert. A3595)-Key unwrapping (using any approved mode)
Triple-DES (Cert. A3595)-Key unwrapping (using any approved mode with two-key or three-key)

The module implements the non-Approved but allowed algorithms shown in Table 5 below. Table 5 – Non-Approved Algorithms Allowed in the Approved Mode of Operation The module does not implement any non-Approved algorithms allowed in the Approved mode of operation for which no security is claimed. The module employs the non-Approved algorithms shown in Table 6 below. These algorithms shall not be used in the module’s Approved mode of operation.

38 PSS – Probabilistic Signature Scheme

SHAKE – Secure Hash Algorithm KECCAK

40 SHS – Secure Hash Standard

Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 12
Algorithm / FunctionUse / Function
AES-GCM (non-compliant when used with external IV)Authenticated encryption/decryption
AES-OCB41Authenticated encryption/decryption
ANSI X9.31 RNG (with 128-bit AES core)Random number generation
ARIAEncryption/decryption
Blake2Encryption/decryption
BlowfishEncryption/decryption
CamelliaEncryption/decryption
CAST, CAST5Encryption/decryption
ChaCha20Encryption/decryption
DESEncryption/decryption
DH (non-compliant with untested key sizes or keys providing less than 112 bits of encryption strength )Key agreement
DRBG (non-compliant when using Hash_DRBG and HMAC_DRBG)Random bit generation
DSA (non-compliant with untested key sizes or keys providing less than 112 bits of encryption strength)Key pair generation; digital signature generation; digital signature verification
DSA, ECDSA, and RSA (non-compliant when used with SHA-1 outside the TLS protocol)Digital signature generation
ECDH (non-compliant with curves P-192, K-163, B- 163, and non-NIST curves)Key agreement
ECDSA (non-compliant with curves P-192, K-163, B- 163, and non-NIST curves)Key pair generation; digital signature generation; digital signature verification
EdDSA42Key pair generation; digital signature generation; digital signature verification
IDEAEncryption/decryption
KDFKey derivation functions for TLS 1.0/1.1; HKDF; KBKDF
MD2, MD4, MD5Message digest
Poly1305Message authentication code
RC243, RC4, RC5Encryption/decryption
RIPEMDMessage digest
RMD160Message digest
RSA (non-compliant with untested key sizes or keys providing less than 112 bits of encryption strength)Key pair generation; digital signature generation; digital signature verification
RSA (non-compliant with untested functions)key transport
SEEDEncryption/decryption

Table 6 – Non-Approved Algorithms Not Allowed in the Approved Mode of Operation

41 OCB – Offset Codebook

EdDSA – Edwards-curve Digital Signature Algorithm

43 RC – Rivest Cipher

Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 13
Algorithm / FunctionUse / Function
SHA-1 (non-compliant)Signature generation for TLS 1.0/1.1
SM2, SM3, SM3Message digest
SM4Encryption/decryption
Triple-DES (non-compliant)Encryption; MAC generation; key wrapping
WhirlpoolMessage digest
2.3 Cryptographic Boundary
Table, extracted as text (did not parse into structured rows)
As a software cryptographic module, the module has no physical components. The physical perimeter of the cryptographic module is defined by each host platform on which the module is installed. Figure 1 and Figure 2 below provide hardware block diagrams of the host devices used for testing and illustrate the module’s physical perimeter. Radio RAM                       Board                Ethernet Serial Instrument                            Audio SoC w/ ARM Board I/O Processing Core USB SD Card Touch Controller Board Module Interface Touch                      LCD                         (Radical-7                 Power Screen                     Panel                         Board)                 Interface External Power Supply BIOS – Basic Input/Output System               PCIe – PCI express Plaintext Data              CPU – Central Processing Unit                  HDD – Hard Disk Drive Encrypted Data              SATA – Serial Advanced Technology Attachment   DVD – Digital Video Disc Control Input               SCSI – Small Computer System Interface         USB – Universal Serial Bus Status Output               PCI – Peripheral Component Interconnect        RAM – Random Access Memory Physical Perimeter          LED – Light Emitting Diode                     LCD – Liquid Crystal Display Figure 1 – Hardware Block Diagram (Root) Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation
Page 14

RAM Radio Board Serial SoC w/ ARM Processing Core Instrument Board I/O Audio Touch Controller SD Card Board Touch LCD Power Screen Panel Interface External Power Supply KEY: BIOS

Page 15

libssl libssl.hmac Calling Application libcrypto libcrypto.hmac KEY: Cryptographic Boundary Physical Perimeter Operating System Data Input Data Output Control Input Control Output CPU Memory Storage Ports Status Output System Calls Host Device Figure 3 – Module Block Diagram (with Cryptographic Boundary)

2.4 Modes of Operation

The module supports two modes of operation: Approved and non-Approved. The module will be in its Approved mode when all pre-operational self-tests have completed successfully, and only Approved services are invoked. Table 4 and Table 5 list the Approved and allowed algorithms; Table 9 provides descriptions of the Approved services. The module alternates on a service-by-service basis between Approved and non-Approved modes of operation. The module will switch to the non-Approved mode upon execution of a non-Approved service. The module will switch back to the Approved mode upon execution of an Approved service. Table 6 lists the non-Approved algorithms implemented by the module; Table 10 below lists the services that constitute the non-Approved mode. When following the guidance in this document, CSPs are not shared between Approved and non-Approved services and modes of operation. Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 16
Physical PortLogical InterfaceData That Passes Over Port/Interface
Physical data input port(s) of the tested platformsData Input • API input arguments that provide input data for processing• Data to be encrypted, decrypted, signed, verified, or hashed • Keys to be used in cryptographic services • Random seed material for the module’s DRBG • Keying material to be used as input to SSP establishment services
Physical data output port(s) of the tested platformsData Output • API output arguments that return generated or processed data back to the caller• Data that has been encrypted, decrypted, or verified • Digital signatures • Hashes • Random values generated by the module’s DRBG • Keys established using module’s SSP establishment methods
Physical control input port(s) of the tested platformsControl Input • API input arguments that are used to initialize and control the operation of the module• API commands invoking cryptographic services • Modes, key sizes, etc. used with cryptographic services
Physical status output port(s) of the tested platformsStatus Output • API call return values• Status information regarding the module • Status information regarding the invoked service/operation

FIPS 140-3 defines the following logical interfaces for cryptographic modules: As a software library, the cryptographic module has no direct access to any of the host platform’s physical ports, as it communicates only to the calling application via its well-defined API. A mapping of the FIPS-defined interfaces and the module’s ports and interfaces can be found in Table 7. Note that the module does not output control Table 7 – Ports and Interfaces ©2024 Masimo Corporation

Page 17
RoleServiceInputOutput
COShow StatusAPI call parametersCurrent operational status
COPerform self-tests on-demandRe-instantiate module; API call parametersStatus
COZeroizeRestart calling application; reboot or power-cycle host deviceNone
COShow versioning informationAPI call parametersModule name, version
UserPerform symmetric encryptionAPI call parameters, key, plaintextStatus, ciphertext
UserPerform symmetric decryptionAPI call parameters, key, ciphertextStatus, plaintext
UserGenerate symmetric digestAPI call parameters, key, plaintextStatus, digest
UserVerify symmetric digestAPI call parameters, digestStatus
UserPerform authenticated symmetric encryptionAPI call parameters, key, plaintextStatus, ciphertext
UserPerform authenticated symmetric decryptionAPI call parameters, key, ciphertextStatus, plaintext
UserGenerate random numberAPI call parametersStatus, random bits
UserPerform keyed hash operationsAPI call parameters, key, messageStatus, MAC44
UserPerform hash operationAPI call parameters, messageStatus, hash
UserGenerate DSA domain parametersAPI call parametersStatus, domain parameters
UserVerify DSA domain parametersAPI call parametersStatus, domain parameters
UserGenerate asymmetric key pairAPI call parametersStatus, key pair
UserVerify ECDSA public keyAPI call parameters, keyStatus
UserGenerate digital signatureAPI call parameters, key, messageStatus, signature

4. Roles, Services, and Authentication The sections below describe the module’s authorized roles, services, and operator authentication methods.

4.1 Authorized Roles

The module supports two roles that authorized operators can assume:

44 MAC – Message Authentication Code

Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 18
RoleServiceInputOutput
UserVerify digital signatureAPI call parameters, key, signature, messageStatus
UserPerform key wrapAPI call parameters, encryption key, keyStatus, encrypted key
UserPerform key un-encapsulationAPI call parameters, decryption key, keyStatus, decrypted key
UserCompute shared secretAPI call parametersStatus, shared secret
UserDerive keys via TLS KDFAPI call parameters, TLS pre- master secretStatus, TLS keys
UserPerform key agreement functionsAPI call parametersStatus, symmetric key
UserDerive key via PBKDF2API call parameters, passphraseStatus, symmetric key
4.2 Authentication Methods

The module does not support authentication methods; operators implicitly assume an authorized role based on the service selected.

4.3 Services

Descriptions of the approved services available to the authorized roles are provided in Table 9 below. This module is a software library that provides cryptographic functionality to calling applications. As such, the security functions provided by the module are considered the module’s security services. Indicators for Approved services (in the case of this module, those security functions with algorithm validation certificates and all required self-tests) are provided via API return value. When invoking a security function, the calling application provides inputs via an internal structure, or “context”. Upon each service invocation, the module will determine if the invoked security function is an Approved service. To access the resulting value, the calling application must pass the finalized context to the indicator API associated with that security function (note the indicator check must be performed prior to any context cleanup is performed). The indicator API will return “1” to indicate the usage of an Approved service. Indicators for services providing non-Approved security functions (as well as for services not requiring an indicator) will have a value other than “1”, ensuring that the indicators for Approved services are unambiguous. Additional details on the APIs used for the Approved service indicators are provided in Appendix A below. The keys and Sensitive Security Parameters (SSPs) listed in the table indicate the type of access required using the following notation:

Page 19
ServiceDescriptionApproved Security Function(s)Keys and/or SSPsRolesAccess Rights to Keys and/or SSPsIndicator
Show StatusReturn module mode statusNoneNoneCON/AN/A
Perform self- tests on- demandPerform pre- operational self- testsHMAC (Cert. A3595) SHA2-256 (Cert. A3595)HMAC keyCON/AAPI return value
ZeroizeZeroize and de- allocate memory containing sensitive dataNoneAll SSPsCOAll SSPs – ZN/A
Show versioning informationReturn module versioning informationNoneNoneCON/AN/A
Perform symmetric encryptionEncrypt plaintext dataAES (Cert. A3595) AES XTS (Cert. A3595)AES key AES XTS keyUserAES key – WE AES XTS key – WEAPI return value
Perform symmetric decryptionDecrypt ciphertext dataAES (Cert. A3595) AES XTS (Cert. A3595) Triple-DES (Cert. A3595)AES key AES XTS key Triple-DES keyUserAES key – WE AES XTS key – WE Triple-DES key – WEAPI return value
Generate symmetric digestGenerate symmetric digestAES CMAC (Cert. A3595) AES GMAC (Cert. A3595)AES CMAC key AES GMAC keyUserAES CMAC key – WE AES GMAC key – WEAPI return value
Verify symmetric digestVerify symmetric digestAES CMAC (Cert. A3595) AES GMAC (Cert. A3595) Triple-DES CMAC (Cert. A3595)AES CMAC key AES GMAC key Triple-DES CMAC keyUserAES CMAC key – WE AES GMAC key – WE Triple-DES CMAC key – WEAPI return value
Perform authenticated symmetric encryptionEncrypt plaintext using supplied AES GCM key and IVAES GCM (Cert. A3595)AES GCM key AES GCM IVUserAES GCM key – WE AES GCM IV – WEAPI return value
Perform authenticated symmetric decryptionDecrypt ciphertext using supplied AES GCM key and IVAES GCM (Cert. A3595)AES GCM key AES GCM IVUserAES GCM key – WE AES GCM IV – WEAPI return value
Generate random numberGenerate random bits using DRBGCTR_DRBG (Cert. A3595)DRBG entropy input DRBG seed DRBG ‘V’ value DRBG ‘Key’ valueUserDRBG entropy input – WE DRBG seed – GE DRBG ‘V’ value – GE DRBG ‘Key’ value – GEAPI return value
Perform keyed hash operationCompute a message authentication codeHMAC (Cert. A3595) SHA-3 (Cert. A3595) SHS (Cert. A3595)HMAC keyUserHMAC key – WEAPI return value
Perform hash operationCompute a message digestSHA-3 (Cert. A3595) SHAKE (Cert. A3595) SHS (Cert. A3595)NoneUserN/AAPI return value
Generate DSA domain parametersGenerate DSA domain parametersCTR_DRBG (Cert. A3595) DSA (Cert. A3595)NoneUserN/AAPI return value
Verify DSA domain parametersVerify DSA domain parametersDSA (Cert. A3595)NoneUserN/AAPI return value
Generate asymmetric key pairGenerate a public/private key pairCTR_DRBG (Cert. A3595) DSA (Cert. A3595) ECDSA (Cert. A3595) RSA (Cert. A3595)DSA public key DSA private key ECDSA public key ECDSA private key RSA public key RSA private keyUserDSA public key – GR DSA private key – GR ECDSA public key – GR ECDSA private key – GR RSA public key – GR RSA private key – GRAPI return value
Verify ECDSA public keyVerify an ECDSA public keyECDSA (Cert. A3595)ECDSA public keyUserECDSA public key – WAPI return value
Generate digital signatureGenerate a digital signatureDSA (Cert. A3595) ECDSA (Cert. A3595) RSA (Cert. A3595) SHS (Cert. A3595)DSA private key ECDSA private key RSA private keyUserDSA private key – WE ECDSA private key – WE RSA private key – WEAPI return value
Verify digital signatureVerify a digital signatureDSA (Cert. A3595) ECDSA (Cert. A3595) RSA (Cert. A3595) SHS (Cert. A3595)DSA public key ECDSA public key RSA public keyUserDSA public key – WE ECDSA public key – WE RSA public key – WEAPI return value

Table 9 – Approved Services Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 20
ServiceDescriptionApproved Security Function(s)Keys and/or SSPsRolesAccess Rights to Keys and/or SSPsIndicator
Perform key wrapPerform key wrapAES (Cert. A3595) AES-KW (Cert. A3595) AES-KWP (Cert. A3595) AES-GCM (Cert. A3595) CCM (Cert. A3595) CMAC (Cert. A3595) GMAC (Cert. A3595) HMAC (Cert. A3595)AES key AES CMAC key AES GMAC key AES GCM key AES GCM IV HMAC keyUserAES key – WE AES CMAC key – WE AES GMAC key – WE AES GCM key – WE AES GCM IV – WE HMAC key – WEAPI return value
Perform key unwrapPerform key unwrapAES (Cert. A3595) AES-KW (Cert. A3595) AES-KWP (Cert. A3595) AES-GCM (Cert. A3595) CCM (Cert. A3595) CMAC (Cert. A3595) GMAC (Cert. A3595) HMAC (Cert. A3595) Triple-DES (Cert. A3595)AES key AES CMAC key AES GMAC key AES GCM key AES GCM IV HMAC key Triple-DES keyUserAES key – WE AES CMAC key – WE AES GMAC key – WE AES GCM key – WE AES GCM IV – WE HMAC key – WE Triple-DES key – WEAPI return value
Compute shared secretCompute DH/ECDH shared secret suitable for use as input to a TLS 1.2/1.3 KDFKAS-ECC-SSC (Cert. A3595) KAS-FFC-SSC (Cert. A3595)DH public key DH private key ECDH public key ECDH private key TLS 1.2 pre-master secret TLS 1.3 handshake secretUserDH public key – WE DH private key – WE ECDH public key – WE ECDH private key – WE TLS 1.2 pre-master secret – G TLS 1.3 handshake secret – GAPI return value
Derive keys via TLS KDFDerive TLS 1.2/1.3 session and integrity keysKDF (TLS 1.2 RFC7627) (Cert. A3595) KDF (TLS 1.3) (Cert. A3596)TLS 1.2 pre-master secret TLS 1.2 master secret TLS 1.3 handshake secret TLS 1.3 handshake traffic secrets TLS 1.3 master secret TLS 1.3 application traffic secrets AES key AES GCM key AES GCM IV HMAC keyUserTLS 1.2 pre-master secret – WE TLS 1.2 master secret – GE TLS 1.3 handshake secret – GE TLS 1.3 master secret – GE TLS 1.3 handshake traffic secrets – GE TLS 1.3 master secret – GE TLS 1.3 application traffic secrets – GE AES key – G AES GCM key – G AES GCM IV – G HMAC key – GAPI return value
Perform key agreement functionsEstablish symmetric key using DH/ECDH key agreementKAS-ECC-SSC (Cert. A3595) KAS-FFC-SSC (Cert. A3595) KDF (TLS 1.2) (Cert. A3595) KDF (TLS 1.3) (Cert. A3596)DH public key DH private key ECDH public key ECDH private key TLS 1.2 pre-master secret TLS 1.2 master secret TLS 1.3 handshake secret TLS 1.3 handshake traffic secrets TLS 1.3 master secret TLS 1.3 application traffic secrets AES key AES GCM key AES GCM IV HMAC keyUserDH public key – WE DH private key – WE ECDH public key – WE ECDH private key – WE TLS 1.2 pre-master secret – GE TLS 1.2 master secret – GE TLS 1.3 handshake secret – GE TLS 1.3 master secret – GE TLS 1.3 handshake traffic secrets – GE TLS 1.3 master secret – GE TLS 1.3 application traffic secrets – GE AES key – G AES GCM key – G AES GCM IV – G HMAC key – GAPI return value
Derive key via PBKDF2Derive key from PBKDF2PBKDF (Cert. A3595)PassphraseUserPassphrase– WEAPI return value

* Per FIPS 140-3 Implementation Guidance 2.4.C, the Show Status, Zeroize, and Show Versioning Information services do not require an Approved security Table 10 below lists the non-approved services available to module operators. Table 10 – Non-Approved Services Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 21
ServiceDescriptionAlgorithm(s) AccessedRoleIndicator
Perform data encryption (non-compliant)Perform symmetric data encryptionARIA, Blake2, Blowfish, Camellia, CAST, CAST5, ChaCha20, DES, IDEA, RC2, RC4, RC5, SEED, SM4, Triple- DES (non-compliant)UserAPI return value
Perform data decryption (non-compliant)Perform symmetric data decryptionARIA, Blake2, Blowfish, Camellia, CAST, CAST5, ChaCha20, DES, IDEA, RC2, RC4, RC5, SEED, SM4UserAPI return value
Perform MAC operations (non-compliant)Perform message authentication operationsPoly1305, Triple-DES/CMAC (non-compliant for MAC generation)UserAPI return value
Perform hash operation (non- compliant)Perform hash operationMD2, MD4, MD5, RIPEMD, RMD160, SM2, SM3, SM4, WhirlpoolUserAPI return value
Perform digital signature functions (non-compliant)Perform digital signature functionsDSA (non-compliant), ECDSA (non-compliant), RSA (non- compliant)UserAPI return value
Perform key agreement functions (non-compliant)Perform key agreement functionsDH (non-compliant), ECDH (non-compliant)UserAPI return value
Perform key wrap (non- compliant)Perform key wrap functionsTriple-DES/CMAC (non- compliant)UserAPI return value
Perform key encapsulation (non-compliant)Perform key encapsulation functionsRSA (non-compliant)UserAPI return value
Perform key un-encapsulation (non-compliant)Perform key un-encapsulation functionsRSA (non-compliant)UserAPI return value
Perform key derivation functions (non-compliant)Perform key derivation functionsHKDF (non-compliant), KBKDF (non-compliant), TLS v1.0/1.1 KDF (non-compliant)UserAPI return value
Perform authenticated encryption/decryption (non- compliant)Perform authenticated encryption/decryptionAES-OCBUserAPI return value
Perform random number generation (non-compliant)Perform random number generationANSI X9.31 RNG (with 128-bit AES core), Hash_DRBG (non- compliant), HMAC_DRBG (non-compliant)UserAPI return value
Perform key pair generation (non-compliant)Perform key pair generationDSA (non-compliant), ECDSA (non-compliant), EdDSA, RSA (non-compliant)UserAPI return value

Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 22

5. Software/Firmware Security All software components within the cryptographic boundary are verified using an Approved integrity technique implemented within the cryptographic module itself. The module implements independent HMAC SHA2-256 digest checks to test the integrity of each library file; failure of the integrity test for either library file will cause the module to enter a critical error state. The module’s integrity check is performed automatically at module instantiation (i.e., when the module is loaded into memory for execution) without action from the module operator. The CO can initiate the pre-operational tests on demand by re-instantiating the module or issuing the FIPS_selftest() API command. The Masimo Cryptographic Module is not delivered to end-users as a standalone offering. Rather, it is a pre-built component integrated into Masimo’s application software. Masimo does not provide end-users with any mechanisms to directly access the module, its source code, its APIs, or any information sent to/from the module. Thus, end-users have no ability to independently load the module onto target platforms. No configuration steps are required to be performed by end-users, and no end-user action is required to initialize the module for operation. Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 23

6. Operational Environment The Masimo Cryptographic Module comprises a software cryptographic library that executes in a modifiable operational environment. The cryptographic module has control over its own SSPs. The process and memory management functionality of the host device’s OS prevents unauthorized access to plaintext private and secret keys, intermediate key generation values and other SSPs by external processes during module execution. The module only allows access to SSPs through its well-defined API. The operational environment provides the capability to separate individual application processes from each other by preventing uncontrolled access to CSPs and uncontrolled modifications of SSPs regardless of whether this data is in the process memory or stored on persistent storage within the operational environment. Processes that are spawned by the module are owned by the module and are not owned by external processes/operators. Please refer to section 2.1 of this document for a list/description of the applicable operational environments. Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 24

7. Physical Security This section is not applicable. Per section 7.7.1 of ISO/IEC 19790:2021, the requirements of this section are “applicable to hardware and firmware modules, and hardware and firmware components of hybrid modules”. Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 25

8. Non-Invasive Security This section is not applicable. There are currently no approved non-invasive mitigation techniques referenced in ISO/IEC 19790:2021 Annex F. Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 26
Key/SSP Name/Type KeysStrengthSecurity Function and Cert. NumberGenerationImport / ExportEstablishmentStorageZeroizationUse & Related Keys
AES key (CSP)Between 128 and 256 bitsAES (CBC, CCM, CFB, CTR, ECB, OFB, KW, KWP modes) (Cert. A3595) KTS (Cert. A3595)-Imported in plaintext via API parameter Never exportedDerived via TLS KDFsNot persistently stored by the moduleReboot or power- cycle the host deviceSymmetric encryption, decryption; key transport
AES GCM key (CSP)Between 128 and 256 bitsAES (GCM mode) (Cert. A3595) KTS (Cert. A3595)-Imported in plaintext via API parameter Never exportedDerived via TLS KDFsNot persistently stored by the moduleReboot or power- cycle the host deviceAuthenticated symmetric encryption, decryption; key transport
AES XTS key (CSP)256 bitsAES (XTS mode) (Cert. A3595)-Imported in plaintext via API parameter Never exported-Not persistently stored by the moduleReboot or power- cycle the host deviceSymmetric encryption, decryption
AES CMAC key (CSP)Between 128 and 256 bitsAES (CMAC mode) (Cert. A3595) KTS (Cert. A3595)-Imported in plaintext via API parameter Never exported-Not persistently stored by the moduleReboot or power- cycle the host deviceMAC generation, verification
AES GMAC key (CSP)Between 128 and 256 bitsAES (GMAC mode) (Cert. A3595) KTS (Cert. A3595)-Imported in plaintext via API parameter Never exported-Not persistently stored by the moduleReboot or power- cycle the host deviceMAC generation, verification
Triple-DES key (CSP)-Triple-DES (Cert. A3595) KTS (Cert. A3595)-Imported in plaintext via API parameter Never exported-Not persistently stored by the moduleReboot or power- cycle the host deviceSymmetric decryption; key unwrapping
Triple-DES CMAC key (CSP)-Triple-Des (CMAC mode) (Cert. A3595)-Imported in plaintext via API parameter Never exported-Not persistently stored by the moduleReboot or power- cycle the host deviceMAC verification
HMAC key (CSP)112 bits (minimum)HMAC (Cert. A3595) KTS (Cert. A3595)-Imported in plaintext via API parameter Never exportedDerived via TLS KDFsNot persistently stored by the moduleReboot or power- cycle the host deviceKeyed hash

Management The module supports the keys and other SSPs listed Table 11. Note that all SSP import and export is electronic and is performed within the Tested OE’s Physical Perimeter (TOEPP). Table 11 – SSPs Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 27
Key/SSP Name/TypeStrengthSecurity Function and Cert. NumberGenerationImport / ExportEstablishmentStorageZeroizationUse & Related Keys
DSA private key (CSP)112 or 128 bitsDSA (Cert. A3595)Generated internally via approved DRBGImported in plaintext via API parameter Exported in plaintext via API parameter-Not persistently stored by the moduleReboot or power- cycle the host deviceDigital signature generation
DSA public key (PSP)112 or 128 bitsDSA (Cert. A3595)Generated internally via approved DRBGImported in plaintext via API parameter Exported in plaintext via API parameter-Not persistently stored by the moduleReboot or power- cycle the host deviceDigital signature verification
ECDSA private key (CSP)Between 112 and 256 bitsECDSA (Cert. A3595)Generated internally via approved DRBGImported in plaintext via API parameter Exported in plaintext via API parameter-Not persistently stored by the moduleReboot or power- cycle the host deviceDigital signature generation
ECDSA public key (PSP)Between 112 and 256 bitsECDSA (Cert. A3595)Generated internally via approved DRBGImported in plaintext via API parameter Exported in plaintext via API parameter-Not persistently stored by the moduleReboot or power- cycle the host deviceDigital signature verification
RSA private key (CSP)Between 112 and 150 bitsRSA (Cert. A3595) KTS (Cert. A3595)Generated internally via approved DRBGImported in plaintext via API parameter Exported in plaintext via API parameter-Not persistently stored by the moduleReboot or power- cycle the host deviceDigital signature generation
RSA public key (PSP)Between 80 and 150 bitsRSA (Cert. A3595) KTS (Cert. A3595)Generated internally via approved DRBGImported in plaintext via API parameter Exported in plaintext via API parameter-Not persistently stored by the moduleReboot or power- cycle the host deviceDigital signature verification
DH private key (CSP)112 bitsKAS-SSC-FFC (Cert. A3595)Generated internally via approved DRBGImported in plaintext via API parameter Exported in plaintext via API parameter-Not persistently stored by the moduleReboot or power- cycle the host deviceDH shared secret computation
DH public key (PSP)112 bitsKAS-SSC-FFC (Cert. _A3595)Generated internally via approved DRBGImported in plaintext via API parameter Exported in plaintext via API parameter-Not persistently stored by the moduleReboot or power- cycle the host deviceDH shared secret computation
ECDH private key (CSP)Between 112 and 256 bitsKAS-SSC-ECC (Cert. A3595)Generated internally via approved DRBGImported in plaintext via API parameter Exported in plaintext via API parameter-Not persistently stored by the moduleReboot or power- cycle the host deviceECDH shared secret computation
ECDH public key (PSP) Other SSPsBetween 112 and 256 bitsKAS-SSC-ECC (Cert. A3595)Generated internally via approved DRBGImported in plaintext via API parameter Exported in plaintext via API parameter-Not persistently stored by the moduleReboot or power- cycle the host deviceECDH shared secret computation

Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 28
Key/SSP Name/TypeStrengthSecurity Function and Cert. NumberGenerationImport / ExportEstablishmentStorageZeroizationUse & Related Keys
Passphrase (PSP)-PBKDF (Cert. A3595)-Imported in plaintext via API parameter Never exported-Not persistently stored by the moduleReboot or power- cycle the host deviceInput to PBKDF for key derivation
AES GCM IV (CSP)-AES (GCM mode) (Cert. A3595)Generated internally in compliance with the provisions of a peer-to-peer industry standard protocols--Not persistently stored by the moduleReboot or power- cycle the host deviceInitialization vector for AES GCM
TLS 1.2 pre- master secret (CSP)-KDF (TLS 1.2 RFC7627) (Cert. A3595)-Imported in plaintext via API parameter Never exported-Not persistently stored by the moduleReboot or power- cycle the host deviceInput to TLS 1.2 KDF for derivation of secrets and keys
TLS 1.2 master secret (CSP)-KDF (TLS 1.2 RFC7627) (Cert. A3595)--Derived internally via TLS 1.2 KDF with EMS45 extensionNot persistently stored by the moduleReboot or power- cycle the host deviceDerivation of keys used for securing TLS 1.2 session traffic
TLS 1.3 handshake secret (CSP)-KDF (TLS 1.3) (Cert. A3596)-Imported in plaintext via API parameter Never exported-Not persistently stored by the moduleReboot or power- cycle the host deviceInput to TLS 1.3 KDF for derivation of secrets and keys
TLS 1.3 handshake traffic secrets (CSP)-KDF (TLS 1.3) (Cert. A3596)--Derived internally via TLS 1.3 KDFNot persistently stored by the moduleReboot or power- cycle the host deviceDerivation of keys used for securing TLS 1.3 handshake traffic
TLS 1.3 master secret (CSP)-KDF (TLS 1.3) (Cert. A3596)--Derived internally via TLS 1.3 KDFNot persistently stored by the moduleReboot or power- cycle the host deviceDerivation of TLS 1.3 application traffic secrets
TLS 1.3 application traffic secrets (CSP)-KDF (TLS 1.3) (Cert. A3596)--Derived internally via TLS 1.3 KDFNot persistently stored by the moduleReboot or power- cycle the host deviceDerivation of keys used for securing TLS 1.3 session traffic
DRBG entropy input (CSP)-DRBG (Cert. A3595)-Imported in plaintext via API parameter46 Never exported-Not persistently stored by the moduleReboot or power- cycle the host deviceEntropy material for DRBG
DRBG seed (CSP)-DRBG (Cert. A3595)Generated internally using nonce along with DRBG entropy input--Not persistently stored by the moduleReboot or power- cycle the host deviceSeeding material for DRBG
DRBG ‘V’ value (CSP)-DRBG (Cert. A3595)Generated internally--Not persistently stored by the moduleReboot or power- cycle the host deviceState values for DRBG
DRBG ‘Key’ value (CSP)-DRBG (Cert. A3595)Generated internally--Not persistently stored by the moduleReboot or power- cycle the host deviceState values for DRBG

45 EMS – Extended Master Secret

The module obtains entropy input from the calling application (which is outside of the cryptographic boundary) but exercises no control over the amount or the quality of the obtained entropy. As such, there is no assurance of the minimum strength of generated keys. Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 29
9.2 DRBGs

The module implements the following Approved DRBG:

9.3 SSP Storage Techniques

There is no mechanism within the module’s cryptographic boundary for the persistent storage of SSPs. The module stores DRBG state values for the lifetime of the DRBG instance. The module uses SSPs passed in on the stack by the calling application and does not store these SSPs beyond the lifetime of the API call.

9.4 SSP Zeroization Methods

Maintenance, including protection and zeroization, of any keys and CSPs that exist outside the module’s cryptographic boundary are the responsibility of the end-user. For the zeroization of keys in volatile memory, module operators can reboot/power-cycle the host device.

9.5 RBG Entropy Sources

The cryptographic module’s entropy scheme follows the scenario given in FIPS 140-3 Implementation Guidance 9.3.A, section 2(b). The module invokes a GET command to obtain entropy for random number generation (the module requests 256 bits of entropy from the calling application per request), and then passively receives entropy from the calling application while having no knowledge of the entropy source and exercising no control over the amount or the quality of the obtained entropy. The calling application and its entropy sources are located within the physical perimeter of the module’s operational environment but outside its cryptographic boundary. Thus, there is no assurance of the minimum strength of the generated SSPs. Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 30

10. Self-Tests Both pre-operational and conditional self-tests are performed by the module. Pre-operational tests are performed between the time the cryptographic module is instantiated and before the module transitions to the operational state. Conditional self-tests are performed by the module during module operation when certain conditions exist. The following sections list the self-tests performed by the module, their expected error status, and the error resolutions.

10.1 Pre-Operational Self-Tests

The module performs the following pre-operational self-test(s):

10.2 Conditional Self-Tests

The module performs the following conditional self-tests:

47 KAT – Known Answer Test

Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 31
10.3 Self-Test Failure Handling

The module reaches the critical error state when any self-test fails. Upon test failure, the module immediately terminates the calling application’s API call with a returned error code and sets an internal flag, signaling the error condition. For any subsequent request made by the calling application for cryptographic services, the module will return a failure indicator, thereby disabling all access to its cryptographic functions, sensitive security parameters (SSPs), and data output services while the error condition persists. To recover, the module must be re-instantiated by the calling application. If the pre-operational self-tests complete successfully, then the module can resume normal operations. If the module continues to experience self-test failures after reinitializing, then the module will not be able to resume normal operations, and the CO should contact Masimo Corporation for assistance. Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 32

11. Life-Cycle Assurance The sections below describe how to ensure the module is operating in its validated configuration, including the following:

11.1 Secure Installation

The module is an integrated component of Masimo’s product application software, module operators have no ability to independently load the module onto the target platform. The module and its calling application are to be installed on a platform specified in section 2.1 or one where portability is maintained. Masimo does not provide any mechanisms to directly access the module, its source code, its APIs, or any information sent between it and other Masimo applications.

11.2 Initialization

This module is designed to support Masimo applications, and these applications are the sole consumers of the cryptographic services provided by the module. No end-user action is required to initialize the module for operation; the calling application performs any actions required for module initialization. The pre-operational integrity test and conditional CASTs are performed automatically via a default entry point (DEP) when the module is loaded for execution, without any specific action from the calling application or the end-user. End-users have no means to short-circuit or bypass these actions. Failure of any of the initialization actions will result in a failure of the module to load for execution.

11.3 Startup

No startup steps are required to be performed by end-users.

11.4 Administrator Guidance

There are no specific management activities required of the CO role to ensure that the module runs securely. If any irregular activity is observed, or if the module is consistently reporting errors, then Masimo Customer Support should be contacted. The following list provides additional guidance for the CO: Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 33
11.5 Non-Administrator Guidance

The following list provides additional policies for non-Administrators:

Page 34

probability requirement, as the mechanism for IV generation is compliant with RFC 8446. The implementations of AES GCM, TLS 1.3 KDF, and all underlying algorithms, have been successfully tested for compliance with their respective specifications (see CAVP Certs. A3595 and A3596).The generated IV is only used in the context of the AES GCM encryption executing the provisions of the TLS 1.3 protocol. The module also supports internal IV generation using the module’s Approved DRBG. The IV is at least 96 bits in length per section 8.2.2 of NIST SP 800-38D. Per NIST SP 800-38D and scenario 2 of FIPS 140-3 IG C.H, the DRBG generates outputs such that the (key/IV) pair collision probability is less than 2-32. In the event that power to the module is lost and subsequently restored, the calling application must ensure that any AES-GCM keys used for encryption or decryption are re-distributed.

Page 35

12. Mitigation of Other Attacks The module does not claim to mitigate any attacks beyond the FIPS 140-3 Level 1 requirements for this validation. Therefore, per ISO/IEC 19790:2021 section 7.12, requirements for this section are not applicable. Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 36

Appendix A. Approved Service Indicators This appendix specifies the APIs that are externally accessible and return the Approved service indicators. Synopsis #include <openssl/service_indicator.h> #include <openssl/ssl.h> int EVP_cipher_get_service_indicator(EVP_CIPHER_CTX *ctx); int DSA_get_service_indicator(DSA * ptr_dsa, DSA_MODES_t mode); int RSA_key_get_service_indicator(RSA * ptr_rsa); int PBKDF_get_service_indicator(); int EVP_Digest_get_service_indicator(EVP_MD_CTX *ctx); int EC_key_get_service_indicator(EC_KEY *ec_key); int CMAC_get_service_indicator(CMAC_CTX *cmac_ctx, CMAC_MODE_t mode); int HMAC_get_service_indicator(HMAC_CTX *ctx); int TLSKDF_get_service_indicator(EVP_PKEY_CTX *tls_ctx); int TLS1_3_kdf_get_service_indicator(EVP_MD *md); int TLS1_3_get_service_indicator(SSL *s); int DRBG_get_service_indicator(RAND_DRBG *drbg); Description These APIs are high-level interfaces that return the Approved service indicator value based on the parameter(s) passed to them.

Page 37
Page 38

//Decrypt ctx = EVP_CIPHER_CTX_new(); EVP_DecryptInit_ex(ctx, cipher, NULL, key, NULL); EVP_CIPHER_CTX_set_key_length(ctx, 24); EVP_DecryptUpdate(ctx, pltmp, &outLen, citmp, 8); // Check the indicator fprintf(stdout,"EVP_des_ede3_ecb (NID %i) decrypt indicator = %i\n", NID, EVP_cipher_get_service_indicator(ctx)); EVP_CIPHER_CTX_cleanup(ctx); EVP_CIPHER_CTX_free(ctx); } Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 39
TermDefinition
AESAdvanced Encryption Standard
ANSIAmerican National Standards Institute
APIApplication Programming Interface
CASTCryptographic Algorithm Self-Test
CBCCipher Block Chaining
CCCSCanadian Centre for Cyber Security
CCMCounter withCipher Block Chaining - Message Authentication Code
CFBCipher Feedback
CMACCipher-Based Message Authentication Code
CMVPCryptographic Module Validation Program
COCryptographic Officer
CPUCentral Processing Unit
CSPCritical Security Parameter
CTRCounter
CVLComponent Validation List
DEPDefault Entry Point
DESData Encryption Standard
DHDiffie-Hellman
DRBGDeterministic Random Bit Generator
DSADigital Signature Algorithm
ECBElectronic Code Book
ECCElliptic Curve Cryptography
ECC CDHElliptic Curve Cryptography Cofactor Diffie-Hellman
ECDHElliptic Curve Diffie-Hellman
ECDSAElliptic Curve Digital Signature Algorithm
EMI/EMCElectromagnetic Interference /Electromagnetic Compatibility
FFCFinite Field Cryptography
FIPSFederal Information Processing Standard
GCMGalois/Counter Mode
GMACGalois Message Authentication Code

Appendix B. Acronyms and Abbreviations Table 12 provides definitions for the acronyms and abbreviations used in this document. Table 12 – Acronyms and Abbreviations ©2024 Masimo Corporation

Page 40
TermDefinition
GPCGeneral-Purpose Computer
HMAC(keyed-) Hash Message Authentication Code
KASKey Agreement Scheme
KATKnown Answer Test
KTSKey Transport Scheme
KWKey Wrap
KWPKey Wrap with Padding
MDMessage Digest
NISTNational Institute of Standards and Technology
OCBOffset Codebook
OEOperational Environment
OFBOutput Feedback
OSOperating System
PBKDFPassword-Based Key Derivation Function
PCTPairwise Consistency Test
PKCSPublic Key Cryptography Standard
PSSProbabilistic Signature Scheme
PUBPublication
RCRivest Cipher
RNGRandom Number Generator
RSARivest Shamir Adleman
SHASecure Hash Algorithm
SHAKESecure Hash Algorithm KECCAK
SHSSecure Hash Standard
SPSpecial Publication
TLSTransport Layer Security
TOEPPTested OE’s Physical Perimeter
XEXXOR Encrypt XOR
XTSXEX-Based Tweaked-Codebook Mode with Ciphertext Stealing

Masimo Cryptographic Module 1.0 ©2024 Masimo Corporation

Page 41

Prepared by: Corsec Security, Inc.

12600 Fair Lakes Circle, Suite 210

Fairfax, VA 22033 United States of America Phone: +1 703 267 6050 Email: info@corsec.com http://www.corsec.com