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

Tablo Medical Informatics System

Certificate#4812StandardFIPS 140-3Level1TypeHardwareEmbodimentMulti-Chip EmbeddedStatusActiveVendorOutset Medical, Inc.
Medium review priority  ·  no TCB surface named  ·  last validated 22 months ago. How this is derived →

Certificate

StandardFIPS 140-3
Overall level1
Module typeHardware
EmbodimentMulti-Chip Embedded
StatusActive
Sunset date9/23/2026
CaveatInterim validation
VendorOutset Medical, Inc.

Approved Algorithms (48)

AlgorithmACVP Cert
AES-CBCA2699
AES-CBCA2701
AES-CCMA2699
AES-CCMA2701
AES-CTRA2699
AES-CTRA2701
AES-GCMA2699
AES-GCMA2701
Counter DRBGA2699
Counter DRBGA2701
DSA KeyGen (FIPS186-4)A2699
DSA SigVer (FIPS186-4)A2699
DSA SigVer (FIPS186-4)A2701
ECDSA KeyGen (FIPS186-4)A2699
ECDSA KeyVer (FIPS186-4)A2699
ECDSA SigVer (FIPS186-4)A2699
ECDSA SigVer (FIPS186-4)A2701
HMAC-SHA-1A2699
HMAC-SHA-1A2701
HMAC-SHA2-256A2699
HMAC-SHA2-256A2701
HMAC-SHA2-384A2699
HMAC-SHA2-384A2701
HMAC-SHA2-512A2699
HMAC-SHA2-512A2701
KAS-ECC-SSC Sp800-56Ar3A2699
KAS-ECC-SSC Sp800-56Ar3A2701
KAS-FFC-SSC Sp800-56Ar3A2699
KDF SSHA2703
KDF TLSA2699
KDF TLSA2702
RSA SigVer (FIPS186-4)A2699
RSA SigVer (FIPS186-4)A2699
RSA SigVer (FIPS186-4)A2699
RSA SigVer (FIPS186-4)A2701
RSA SigVer (FIPS186-4)A2701
RSA SigVer (FIPS186-4)A2701
SHA-1A2699
SHA-1A2701
SHA2-224A2699
SHA2-224A2701
SHA2-256A2699
SHA2-256A2701
SHA2-384A2699
SHA2-384A2701
SHA2-512A2699
SHA2-512A2701
SHA3-256A2700

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

flowchart LR
  %% Deterministic review-risk graph for Tablo Medical Informatics System
  %% Review prompts and evidence gaps, NOT vulnerability findings.
  subgraph CMVP["CMVP-disclosed clues"]
    C2["[low] Firmware update / recovery<br/>/ rollback (referenced in<br/>text)<br/><i>upgrade</i>"]
    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/>SSH<br/>HTTPS</i>"]
    C6["[low] Operating system / runtime<br/>referenced (boundary<br/>membership not asserted)<br/><i>operating system<br/>linux<br/>application</i>"]
  end
  subgraph Inference["Derived inference"]
    I2["Possible only, trusted<br/>code is reachable through<br/>update and recovery paths."]
    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"]
    R2["Are update images<br/>authenticated before<br/>parsing, and are<br/>downgrade/rollback paths<br/>constrained?"]
    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"]
    E2["confirm the disclosure<br/>itself (keyword hit,<br/>context unverified) ·<br/>update image format ·<br/>signature-before-parse<br/>proof · anti-rollback /<br/>downgrade policy"]
    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
  C2 --> I2 --> R2 --> E2
  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 C2,C3,C5,C6 clue;
  class I2,I3,I5,I6 infer;
  class R2,R3,R5,R6 risk;
  class E2,E3,E5,E6 evidence;
Underlying clues
flowchart LR
  %% Deterministic clue tier for Tablo Medical Informatics System
  %% confidence: high = structured record field; medium = structured but soft; low (dashed) = bare keyword hit, context unverified
  subgraph CMVP["CMVP-disclosed clues (deterministic)"]
    C2["[low] Firmware update / recovery / rollback (referenced in text)<br/><i>upgrade</i><br/>src: text:keyword"]
    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/>SSH<br/>HTTPS</i><br/>src: text:keyword"]
    C6["[low] Operating system / runtime referenced (boundary membership not asserted)<br/><i>operating system<br/>linux<br/>application</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 C2,C3,C5,C6 clueLow;

Security Policy, page by page

Page 1

Outset Medical, Inc. Tablo Medical Informatics System Hardware Version: 1.0 Hardware Part Number: PN-0002824 Firmware Version: MIES 4.9.12.6269 FIPS Security Level: 1 Document Version: 1.2 Prepared for: Prepared by: Outset Medical, Inc. Corsec Security, Inc.

3052 Orchard Drive 12600 Fair Lakes Circle, Suite 210

San Jose, CA 95134 Fairfax, VA 22033 United States of America United States of America Phone: +1 669 231-8200 Phone: +1 703 267 6050 www.outsetmedical.com www.corsec.com

Page 2

Abstract This is a non-proprietary Cryptographic Module Security Policy for Tablo Medical Informatics System (firmware version: MIES 4.9.12.6269) from Outset Medical, Inc. (Outset). This Security Policy describes how Tablo Medical Informatics System 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 a secure Approved mode of operation. This policy was prepared as part of the Level 1 FIPS 140-3 validation of the module. Tablo Medical Informatics System is referred to in this document as Medical Informatics System 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 Levels6
Table 2 – Cryptographic Module Tested Configuration7
Table 3 – Cryptographic Algorithm Sources7
Table 4 – Approved Algorithms Validation Certificates8
Table 5 – Non-Approved Algorithms Allowed in the Approved Mode of Operation10
Table 6 – Non-Approved Algorithms Allowed in the Approved Mode of Operation with No Security Claimed10
Table 7 – Ports and Interfaces12
Table 8 – LED Indicator13
Table 9 – Roles, Service Commands, Input and Output14
Table 10 – Approved Services15
Table 12 – SSPs22
Table 13 – Non-Deterministic Random Number Generation Specification25
Table 14 – Acronyms30
Figure 1 – Tablo Hemodialysis System Functions5
Figure 2 – Tablo Medical Informatics System PN-000282410
Figure 3 – Module Block Diagram (with Cryptographic Boundary)11
Figure 4 – Status/Show Version Screen17
Page 5

1. General The Outset Tablo is a dialysis machine designed from the inside out to offer a better and easier experience for patients and providers. The Outset Tablo machine creates an all-in-one solution that reduces care and infrastructure costs, expands the variety of eligible users, and enables new care delivery models. The Tablo Hemodialysis System is an automated machine designed to filtrate blood and offers multiple automated maintenance functions. It consists of a water purification system, Tablo cartridge, Non-invasive blood pressure cuff, and a two-way data communication. The Tablo Hemodialysis System is a mobile indoor unit that establishes a two-way data communication that automatically sends treatment data as well as machine performance to the Outset Tablo Cloud. The Tablo machine includes touchscreen guidance that contains animations and conversational instructions. Figure 1

Page 6
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 Security1
8Non-Invasive SecurityN/A1
9Sensitive Security Parameter Management1
10Self-tests1
11Life-Cycle Assurance1
12Mitigation of Other AttacksN/A

The Tablo machine feature set includes inexpensive operations, direct connection to the Tablo Cloud, automated functions, and effective hemodialysis features:

1 N/A – Not Applicable

Tablo Medical Informatics System ©2024 Outset Medical, Inc.

Page 7
ModelHardware (Part number and version)Firmware VersionDistinguishing Features
Tablo Medical Informatics SystemPN-0002824 1.0MIES 4.9.12.6269High performance ARM processor (NXP i.MX 6Dual), onboard DDR3 and Flash memory, USB, Ethernet, and UART interfaces.
Certificate NumberImplementation NameVersionUse
A2699Tablo Medical Informatics System Bouncy Castle Cryptographic Library1.0Provides implementations for general-purpose cryptographic primitives cryptographic primitives
A2700Tablo Medical Informatics System CPU Jitter Library1.0Conditioning function used in entropy mechanism
A2701Tablo Medical Informatics System OpenSSL Cryptographic Library1.0Provides implementations for general-purpose
A2702Tablo Medical Informatics System TLS KDF Library1.0TLS key derivation function implementation
A2703Tablo Medical Informatics System SSH KDF Library1.0SSH key derivation function implementation

2. Cryptographic Module Specification Tablo Medical Informatics System is a hardware module with a multi-chip embedded embodiment. The module is a single board computer (embedded within the Tablo dialysis machine) that securely protects and transmits patient data.

2.1 Operational Environments

Table 2 below lists the module configuration(s) used for validation testing. Table 2 – Cryptographic Module Tested Configuration

2.2 Algorithm Implementations

Table 3 lists the cryptographic algorithm sources employed by the module. Table 3 – Cryptographic Algorithm Sources Validation certificates for each approved security function are listed in Table 4. ©2024 Outset Medical, Inc.

Page 8
CAVP Certificate2 Tablo Medical Informatics System Bouncy Castle Cryptographic LibraryAlgorithm and StandardMode / MethodDescription / Key Size(s) / Key StrengthsUse / function
A2699AES FIPS PUB 197 NIST SP 800-38ACBC, CTR128, 256Encryption/decryption
A2699AES NIST SP 800-38CCCM128, 256Encryption/decryption
A2699AES NIST SP 800-38DGCM128, 256Encryption/decryption
Vendor AffirmedCKG NIST SP 800-133rev2--Cryptographic key generation
A2699CVL NIST SP 800-135rev1TLS 1.2 KDF-Key derivation3
A2699DRBG NIST SP 800-90Arev1Counter-based (derivation function – yes; prediction resistance – no)128, 192, 256-bit AES-CTRDeterministic random bit generation
A2699DSA FIPS PUB 186-4SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-5122048Key generation
SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-5121024, 2048, 3072Digital signature verification
A2699ECDSA FIPS PUB 186-4SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-512B-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-521Key generation, key verification, digital signature verification
A2699HMAC FIPS PUB 198-1SHA-1, SHA2-256, SHA2-384, SHA2-512112 (minimum)Message authentication
A2699KAS-SSC4 NIST SP 800-56Arev3FFC DH2048/224, 2048/256Shared secret computation
ECC CDHB-233, B-283, B-409, B-571, K-233, K-283, K-409, K-571, P-224, P-256, P-384, P-521Shared secret computation
A2699RSA FIPS PUB 186-4X9.311024, 2048, 3072, 4096 (SHA-1, SHA2-256, SHA2- 384, SHA2-512)Digital signature verification
PKCS#1 v1.5 PSS1024, 2048, 3072, 4096 (SHA-1, SHA2-224, SHA2- 256, SHA2-384, SHA2-512)Digital signature verification
A2699 Tablo Medical Informatics System CPU Jitter LibrarySHS FIPS PUB 180-4SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-512-Message digest
A2700 Tablo Medical Informatics System OpenSSL Cryptographic LibrarySHA-3 FIPS PUB 202SHA3-256-Conditioning function

Table 4 – Approved Algorithms Validation Certificates

2 This table includes vendor-affirmed algorithms that are approved but CAVP testing is not yet available.

No part of the TLS protocol, other than the KDF, has been tested by the CAVP and CMVP.

4 The methods of shared secret computation are approved per FIPS 140-3 IG D.F

Page 9
CAVP Certificate2Algorithm and StandardMode / MethodDescription / Key Size(s) / Key StrengthsUse / function
A2701AES FIPS PUB 197 NIST SP 800-38ACBC, CTR128, 256Encryption/decryption
A2701AES NIST SP 800-38CCCM128, 256Encryption/decryption
A2701AES NIST SP 800-38DGCM128, 256Encryption/decryption
Vendor AffirmedCKG NIST SP 800-133rev2--Cryptographic key generation
A2701DRBG NIST SP 800-90Arev1Counter-based (derivation function – yes; prediction resistance – no)256-bit AES-CTRDeterministic random bit generation
A2701DSA FIPS PUB 186-4SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-5121024, 2048, 3072Digital signature verification
A2701ECDSA FIPS PUB 186-4SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-512B-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-52Digital signature verification
A2701HMAC FIPS PUB 198-1SHA-1, SHA2-256, SHA2-384, SHA2-512112 (minimum)Message authentication
A2701KAS-SSC NIST SP 800-56Arev3ECC CDH5B-233, B-283, B-409, B-571, K-233, K-283, K-409, K-571, P-224, P-256, P-384, P-521Shared secret computation
A2701RSA FIPS PUB 186-4X9.311024, 2048, 3072, 4096 (SHA-1, SHA2-256, SHA2- 384, SHA2-512)Digital signature verification
PKCS#1 v1.5 PSS1024, 2048, 3072, 4096 (SHA-1, SHA2-224, SHA2- 256, SHA2-384, SHA2-512)Digital signature verification
A2701 Tablo Medical Informatics System TLS KDF Cryptographic LibrarySHS FIPS PUB 180-4SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-512-Message digest
A2702 Tablo Medical Informatics System SSH KDF Cryptographic LibraryCVL NIST SP 800-135rev1TLS 1.2 KDF-Key derivation6
A2703CVL NIST SP 800-135rev1SSH KDF-Key derivation7

The vendor affirms the following cryptographic security methods:

5 ECC CDH – Elliptic Curve Cryptography Cofactor Diffie-Hellman

No part of the TLS protocol, other than the KDF, has been tested by the CAVP and CMVP.

7 No part of the SSH protocol, other than the KDF, has been tested by the CAVP and CMVP.

Page 10
AlgorithmCaveatUse / Function
AES (Cert. A2701)-Key unwrapping
Algorithm / FunctionUse / Function
BlowfishDecryption

OpenSSL DRBG cert. A2701 and Bouncy Castle DRBG cert. A2699) as both symmetric keys and seeds for generating asymmetric key pairs. The module’s DRBGs are seeded via entropy generated from the module’s internal entropy mechanism. The module implements the non-Approved but allowed algorithms shown in Table 5 below, in both the Tablo Medical Informatics System OpenSSL Cryptographic Library and Tablo Medical Informatics System Bouncy Castle Cryptographic Library. Table 5

2.3 Cryptographic Boundary

The cryptographic boundary of the module is defined by the physical perimeter of the Tablo Medical Informatics System (shown in Figure 2). A logical block diagram of the module’s hardware components is provided in Figure 3 below. Figure 2 – Tablo Medical Informatics System PN-0002824 Tablo Medical Informatics System ©2024 Outset Medical, Inc.

Page 11

Figure 3 – Module Block Diagram (with Cryptographic Boundary)

2.4 Excluded Components

There are no excluded hardware or firmware components.

2.5 Modes of Operation

The module supports an Approved mode of operation only. When installed, configured, and operated according to this Security Policy, the module does not support a non-Approved mode of operation. Tablo Medical Informatics System ©2024 Outset Medical, Inc.

Page 12
Physical PortLogical InterfaceData That Passes Over Port/Interface
RS8-232/UART• Control Input • Status Output• System state information • Network configuration information • MIES firmware version • MIES operational status
Ethernet• Data Input • Data Output • Control Input • Status Output• Black box log data • Treatment data • Patient Data • License information
USB9• Data Input • Data Output• Wi-Fi configuration and status data • Patient data files • Provisioning
Wi-Fi• Data Input • Data Output • Control Input • Status Output• Black box log data • Treatment data • Patient Data • License information
12V DC10-Input• Power• N/A
LED• Status Output• N/A
GPIO11• Status Output• N/A
USB OTG12(Not in Use)
SD/MMC13(Not in Use)
SIM14 Card slot(Not in Use)
  1. Cryptographic Module Interfaces The module supports the following logical interfaces: A mapping of the physical ports to the module’s logical interfaces can be found in Table
  2. Note that the module does not output control information, and thus has no specified control output interface. Table 7 – Ports and Interfaces RS – Recommended Standard

9 USB – Universal Serial Bus

10 DC – Direct Current

11 GPIO – General Purpose Input/Output

12 USB OTG – Universal Serial Bus On-The-Go

SD/MMC – Secure Digital Multi-Media Card

14 SIM – Subscriber Identity Module

Tablo Medical Informatics System ©2024 Outset Medical, Inc.

Page 13

Physical Port SATA15 I2C16 I2S17 SPI18 CAN19 HDMI20 VGA21 Audio

Logical Interface (Not in Use) (Not in Use) (Not in Use) (Not in Use) (Not in Use) (Not in Use) (Not in Use) (Not in Use)

Data That Passes Over Port/Interface

LEDMeaning
1 blinkModule is loaded
2 blinksModule is performing self-tests
3 blinksModule has entered normal operation
4 blinksModule has entered critical error state
8 blinksModule performing “Import Legacy Data” operation

Table 8

16 I2C – Inter-Integrated Circuit

17 I2S – Inter-IC Sound

18 SPI – Serial Peripheral Interface

19 CAN – Controller Area Network

HDMI – High-Definition Multimedia Interface

21 VGA – Video Graphics Array

Tablo Medical Informatics System ©2024 Outset Medical, Inc.

Page 14
RoleServiceInputOutput
COShow StatusCommandModule operational status
COPerform Self-tests On-demandPower-cycleStatus
COShow Module VersionCommandModule name and version
COPerform ZeroizationCommandStatus
UserImport Provision FileCommand, Provision FileStatus
UserImport Patient DataCommand, Patient DataStatus
UserExport Patient DataCommand, Patient DataData, Status
UserImport License Info and Configuration FileCommand, License Info, Configuration FileStatus
UserEstablish SSH SessionCommand, EndpointStatus
UserEstablish TLS SessionCommand, EndpointStatus
UserTransmit Data to CloudCommand, DataStatus, data

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 a Crypto Officer (CO) role and a User role. The CO role performs cryptographic initialization or management functions and general security services. The User role performs general security services, including cryptographic operations and other approved security functions. The operator assumed a Crypto Officer role implicitly by invoking a service allocated to the Crypto Officer and assumes a User role implicitly by invoking a service allocated to the User. The module does not support multiple concurrent operators. Table 9 – Roles, Service Commands, Input and Output Tablo Medical Informatics System ©2024 Outset Medical, Inc.

Page 15
ServiceDescriptionApproved Security Function(s)Keys/SSPsRolesAccess rights to Keys/SSPsIndicator
Show StatusReturns mode statusNone-CO-N/A22
Perform Self-tests On-demandPerforms pre-operational self-testsNone-CO-N/A
Show Module versionReturns module versioning informationNone-CO-N/A
Perform ZeroizationZeroizes memory and storage locations containing keys and SSPsNoneMaster KeyCOMaster Key – Z“PHI related files are removed successfully SUCCESS”
Import Provision FileImports provision file via USBAES (CBC) CTR DRBG SHA-3Master Key Provisioning File Decryption Key Treatment In-Progress Data Key CTR DRBG Entropy CTR DRBG Seed CTR DRBG 'V' Value CTR DRBG 'Key' ValueUserMaster Key – E Provisioning File Decryption Key – E Treatment In-Progress Data Key – G CTR DRBG Entropy – W, E CTR DRBG Seed – G, E CTR DRBG 'V' Value – G, E CTR DRBG 'Key' Value – G, E“Decrypting provisioning file”
Import Patient DataImports patient data via USBAES CBCPatient Data Encryption Key Prescription KeyUserPatient Data Encryption Key – E Prescription Key – W, E“Decrypting patient data”
Export Patient DataExports patient data via USBAES CBCPatient Data Encryption Key Prescription KeyUserPatient Data Encryption Key – E Prescription Key – W, E“Encrypting patient data”
Import License Info and Configuration FileImports license info and configuration file from the InternetAES (CBC, GCM)License File Decryption Key Configuration File Decryption KeyUserLicense File Decryption Key – E Configuration File Decryption Key – E“Finished downloading license file successfully” And “Retrieving remote config from {location} Retrieved config: {config text}”
4.2 Operator Services

Descriptions of the services available to the authorized roles are provided in Table 10 below. Please note that the keys and Sensitive Security Parameters (SSPs) listed in the table indicate the type of access required using the following notation:

Page 16
ServiceDescriptionApproved Security Function(s)Keys/SSPsRolesAccess rights to Keys/SSPsIndicator
Establish SSH SessionEstablishes a SSH session between the module and Wi-Fi module within TabloAES (CBC, CTR, GCM) CKG DRBG DSA ECDSA KAS-FFC-SSC KAS-ECC-SSC SSH KDF SHA-3AES GCM IV SSH Password DH Private Key Component DH Public Key Component ECDH Private Key Component ECDH Public Key Component SSH Shared Secret SSH Session Key SSH Authentication Key CTR DRBG Entropy CTR DRBG Seed CTR DRBG 'V' Value CTR DRBG 'Key' ValueUserAES GCM IV – G, E SSH Password – E DH Private Key Component – G, E DH Public Key Component – G, W, R, E ECDH Private Key Component – G, E ECDH Public Key Component – G, W, R, E SSH Shared Secret – G, E, Z SSH Session Key – G, SSH Authentication Key – G, CTR DRBG Entropy – W, E CTR DRBG Seed – G, E CTR DRBG 'V' Value – G, E CTR DRBG 'Key' Value – G, E“SSH command complete”
Establish TLS SessionEstablishes a TLS connectionCKG DRBG DSA ECDSA KAS-FFC-SSC KAS-ECC-SSC RSA SHA-3 TLS KDFDH Private Key Component DH Public Key Component ECDH Private Key Component ECDH Public Key Component TLS Premaster Secret TLS Master Secret TLS Session Key TLS Authentication Key AES GCM IV CTR DRBG Entropy CTR DRBG Seed CTR DRBG 'V' Value CTR DRBG 'Key' ValueUserDH Private Key Component – G, E DH Public Key Component – G, W, R, E ECDH Private Key Component – G, E ECDH Public Key Component – G, W, R, E TLS Premaster Secret – G, E, Z TLS Master Secret – G, E, Z TLS Session Key – G TLS Authentication Key – G AES GCM IV – G CTR DRBG Entropy – W, E CTR DRBG Seed – G, E CTR DRBG 'V' Value – G, E CTR DRBG 'Key' Value – G, E“TLS transaction complete”
Transmit Data to CloudTransmits patient data to the cloudAES (CBC, CCM, GCM) HMAC SHSTLS Session Key TLS Authentication Key AES GCM IV Treatment In-Progress Data KeyUserTLS Session Key – E TLS Authentication Key – E AES GCM IV – E Treatment In-Progress Data Key – E“TLS transaction complete”
Import Legacy DataImport legacy patient data from previous formatAES CBCPatient Data Encryption Key Prescription KeyUserPatient Data Encryption Key – E Prescription Key – W, E“Decrypting patient data”
Page 17

The operator can verify the module firmware version on the Tablo Status Screen: Figure 4 – Status/Show Version Screen

4.3 Authentication

The module does not support authentication mechanisms; roles are implicitly selected based on the service invoked. Refer to Table 10 above for a listing of the services associated with each authorized role. ©2024 Outset Medical, Inc.

Page 18

5. Software/Firmware Security All firmware components within the cryptographic boundary are verified using an integrity technique implemented within the cryptographic module itself. The module implements a CRC-32 integrity test of the module firmware. Failure of the integrity check for the module will cause the module to enter a critical error state. Tablo Medical Informatics System is not delivered to end-users as a standalone offering and is only used in conjunction with the Outset Tablo. The CO can initiate the pre-operational tests on demand by power-cycling the Outset Tablo. The module does not support firmware upgrade. In order to provision the module, the CO must first invoke the “Import Provision File” service and obtain the specified indicator that the service was executed successfully (note this step is not required to operate the module in Approved mode). ©2024 Outset Medical, Inc.

Page 19

6. Operational Environment The operational environment of the module does not provide access to a general-purpose operating system (OS). The module employs a non-modifiable operational environment. The operating system offers no mechanism whereby the operator can modify software/firmware components, nor can the operator load and execute software or firmware that was not included as part of the validation of the module. The module’s operating system is Linux 4.1.15 LTS23. LTS – Long Term Support ©2024 Outset Medical, Inc.

Page 20

7. Physical Security As a multi-chip embedded module, the module is composed of production-grade components necessary to meet FIPS 140-3 level 1 physical security requirements. All components of the hardware are coated with commercial standard passivation. ©2024 Outset Medical, Inc.

Page 21

8. Non-Invasive Security There are currently no approved non-invasive mitigation techniques referenced in ISO/IEC 19790:2021 Annex F. ©2024 Outset Medical, Inc.

Page 22
Key/SSP Name/Type KeysStrengthSecurity Function and Cert. NumberGenerationImport / ExportEstablishmentStorageZeroizationUse & Related Keys
Master Key256 bitsAES (CBC) (Cert. A2701)NoNo / NoPreloadedPlaintext in non-volatile memory“Perform Zeroization” serviceSecure the module’s main keystore
Patient Data Encryption Key256 bitsAES (CBC) (Cert. A2701)NoNo / NoPreloadedEncrypted by the Master Key in non- volatile memoryNoEncrypting and decrypting Patient Data
Provisioning File Decryption Key256 bitsAES (Cert. A2701)NoNo / NoPreloadedEncrypted by the Master Key in non- volatile memoryNoDecryption of Provision File
License File Decryption Key256 bitsAES (Cert. A2701)NoNo / NoPreloadedEncrypted by the Master Key in non- volatile memoryNoDecryption of License File
Configuration File Decryption Key256 bitsAES (Cert. A2701)NoNo / NoPreloadedEncrypted by the Master Key in non- volatile memoryNoDecryption of Configuration File
Prescription Key256 bitsAES (Cert. A2701)NoImport: Electronically via USB Export: NoNoEncrypted in non-volatile memoryNoEncryption and decryption of Patient Prescription Data
Treatment In- Progress Data Key256 bitsAES (Cert. A2701)Internally generated via DRBGNo / NoNoEncrypted in non-volatile memoryNoEncryption of Treatment Data. Used to encrypt data internally on the MIES.
Treatment Data Public Key2048-bitRSA (Cert. A2701)NoNo / NoPreloadedEncrypted in non-volatile memoryNoEncryption of Treatment Data
SSH Session Key128/192/256- bitAES (Cert. A2701)NoNo / NoDerived internally via SSH KDFPlaintext in volatile memoryReboot; remove power; session terminationEncryption and decryption of SSH session packet
SSH Authentication Key160/256/512- bitHMAC (Cert. A2701)NoNo / NoDerived internally via SSH KDFPlaintext in volatile memoryReboot; remove power; session terminationAuthentication of SSH session packets
DH Private Key Component2048/224, 2048/256KAS-SSC-FFC (Cert. A2699)Generated internally via approved DRBGNo / NoNoPlaintext in volatile memoryReboot; remove power; session terminationGeneration of SSH and TLS shared secrets
DH Public Key Component2048/224, 2048/256KAS-SSC-FFC (Cert. A2699)Generated internally via approved DRBGNo / YesNoPlaintext in volatile memoryReboot; remove power; session terminationGeneration of SSH and TLS shared secrets
ECDH Private Key ComponentAll approved P/B/K curvesKAS-SSC-ECC (Certs. A2699 and A2701)Generated internally via approved DRBGNo / NoNoPlaintext in volatile memoryReboot; remove power; session terminationGeneration of SSH and TLS shared secrets

9. Sensitive Security Parameter Management The module supports the keys and other SSPs listed in Table 11

Page 23
Key/SSP Name/TypeStrengthSecurity Function and Cert. NumberGenerationImport / ExportEstablishmentStorageZeroizationUse & Related Keys
ECDH Public Key ComponentAll approved P/B/K curvesKAS-SSC-ECC (Certs. A2699 and A2701)Generated internally via approved DRBGNo / YesNoPlaintext in volatile memoryReboot; remove power; session terminationGeneration of SSH and TLS shared secrets
TLS Session KeyAES AES-GCMAES (Certs. A2699 and A2701) AES-GCM (Cert. A2701)NoNo / NoDerived internally using the TLS Master SecretPlaintext in volatile memoryReboot; remove power; session terminationEncryption and decryption of TLS session packets; AES GCM IV is used with the TLS Session key.
TLS Authentication Key Other SSPsHMAC (Certs. A2699 and A2701)NoNo / NoDerived internally using the TLS Master SecretPlaintext in volatile memoryReboot; remove power; session terminationAuthentication of TLS session packets
SSH Password-SSH KDF (Cert. )NoNo / NoPreloadedEncrypted in non-volatile memoryNoPassword used to authenticate MIES to Wi-Fi module
SSH Shared Secret-NoNo / NoComputed via DH/ECDH shared secret computationPlaintext in volatile memoryReboot; remove power; session terminationDerivation of the SSH Session and authentication Keys; AES GCM IV is used with the SSH Session key.
TLS Premaster Secret-TLS 1.2 KDF (Cert. A2702)NoNo / NoComputed via DH/ECDH shared secret computationPlaintext in volatile memoryReboot; remove power; session terminationDerivation of the TLS master secret
TLS Master Secret--NoNo / NoDerived internally using the TLS Premaster Secret via TLS KDFPlaintext in volatile memoryReboot; remove power; session terminationDerivation of the TLS session (AES) and authentication (HMAC) keys, and the GCM IV.
AES GCM IV-AES GCM (Certs. A2699 and A2701)NoNo / NoDerived internally using the TLS Master Secret24 or generated for SSH in compliance with RFC 564725.Plaintext in volatile memoryReboot; remove power; session terminationInitialization vector for AES GCM
DRBG entropy input-DRBG (Certs. A2699 and A2701)N/ANo / NoProduced internally via Approved entropy sourcePlaintext in RAMUpon module reboot Upon session terminationEstablishment of seed for CTR_DRBG
DRBG seed-DRBG (Certs. A2699 and A2701)N/ANo / NoEstablished internally using entropy input string via DRBGPlaintext in RAMUpon module reboot Upon session terminationGeneration of random number
DRBG ‘V’ value-DRBG (Certs. A2699 and A2701)Generated internally within DRBGNo / NoN/APlaintext in RAMUpon module reboot Upon session terminationState value for CTR_DRBG

24 The IV generation method complies with technique #1 (for TLS 1.2 GCM Cipher Suites) in FIPS 140-3 IG C.H. RFC 5246 defines the TLS 1.2 protocol; RFC

25 The IV generation method complies with technique #1 (for SSHv2 protocol) in FIPS 140-3 IG C.H. Each IV is generated and used only within each

protocol’s implementation. ©2024 Outset Medical, Inc.

Page 24
Key/SSP Name/TypeStrengthSecurity Function and Cert. NumberGenerationImport / ExportEstablishmentStorageZeroizationUse & Related Keys
DRBG ‘Key’ value-DRBG (Certs. A2699 and A2701)Generated internally within DRBGNo / NoN/APlaintext in RAMUpon module reboot Upon session terminationState value for CTR_DRBG
9.1 Algorithm Specific Information
9.1.1 AES-GCM

The AES-GCM IV is used in the following protocols:

9.1.2 KAS

The module performs all applicable key assurances for its DH and ECDH implementations as specified in section 9 of NIST SP 800-56Arev3. These tests are performed as conditional tests. In order to zeroize all keys and CSPs present within the module, the operator shall decommission the module by performing the following steps:

  1. Upload patient log files to the cloud and clear from MI board
  2. Erase volatile storage in MIES unit
  3. Clear log files from black box USB For further detailed information on each step please refer to the “Tablo X Hemodialysis System De-Installation Procedure”, steps 4, 5, and
  4. For the zeroization of keys in volatile memory, module operators can power-cycle the Tablo machine.
9.3 RBG Entropy Sources

Table 12 below specifies the module’s entropy sources. RFC – Request For Comment ©2024 Outset Medical, Inc.

Page 25
Entropy SourceMinimum number of bits of entropyDetails
CPU Time Jitter Based Non- Physical TRNG version 3.3256The module requests 256 bits of entropy per call and receives 256 number of bits of entropy. Seed material is provided to the module’s DRBG by the CPU jitter mechanism residing within the module’s cryptographic boundary.

Table 12 – Non-Deterministic Random Number Generation Specification ©2024 Outset Medical, Inc.

Page 26

10. Self-Tests Both pre-operational and conditional self-tests are performed by the module. Pre-operational tests are performed between the time a cryptographic module is powered on or instantiated (after being powered off, reset, rebooted, cold-start, power interruption, etc.) and before the module transitions to the operational state. Conditional selftests 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): • Firmware integrity test (using CRC-32)

10.2 Conditional Self-Tests

The module performs the following conditional cryptographic algorithm self-tests (CASTs):

Page 27
10.3 On-Demand Self-Tests

The CO can initiate the pre-operational self-test (as well as the conditional CASTS) on demand for periodic testing of the module by power-cycling the Tablo machine. The LED will blink 2 times to indicate that self-tests are running.

10.4 Self-Test Failure Handling

Upon failure of any self-test, the module will set an internal flag and enter a critical error state. In this state, the module will no longer perform cryptographic services or output data over the data output interfaces. For any subsequent request for cryptographic services, the module will return a failure indicator. To recover, the module must be reinitialized by power-cycle of the Tablo machine. 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 Outset Medical, Inc. for assistance. ©2024 Outset Medical, Inc.

Page 28

11. Life-Cycle Assurance The sections below describe how to ensure the module is operating in its validated configuration. Module operators shall follow all guidance provided guidance in this section to ensure the module is operating in a compliant manner. Operating the module without following this guidance (including the use of undocumented services) will result in non-compliant behavior and is outside the scope of this Security Policy.

11.1 Secure Installation

The Medical Informatics System is delivered to the end user contained within the larger Outset Tablo machine, and there are no further installation procedures required by the operator.

11.2 Initialization

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

11.3 Startup

No setup 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. However, if any irregular activity is noticed or the module is consistently reporting errors, then Outset Customer Support should be contacted. Module operators can view the module’s operational status via the Tablo machine GUI.

11.5 Non-Administrator Guidance

The following list provides guidance for the User role: • In case the module’s power is lost and then restored, the key used for the AES GCM encryption or decryption shall be re-established.

11.6 Common Vulnerabilities and Exposures

There are no known CVEs associated with the cryptographic module. ©2024 Outset Medical, Inc.

Page 29

12. Mitigation of Other Attacks This section is not applicable. The module does not claim to mitigate any attacks beyond the FIPS 140-3 Level 1 requirements for this validation. ©2024 Outset Medical, Inc.

Page 30
Definition
Term
AESAdvanced Encryption Standard
ANSIAmerican National Standards Institute
APIApplication Programming Interface
CASTCryptographic Algorithm Self-Test
CBCCipher Block Chaining
CCCSCanadian Centre for Cyber Security
CCMCounter with Cipher Block Chaining - Message Authentication Code
CFBCipher Feedback
CKGCryptographic Key Generation
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

13. Acronyms and Abbreviations Table 13 provides definitions for the acronyms and abbreviations used in this document. Table 13 – Acronyms ©2024 Outset Medical, Inc.

Page 31
TermDefinition
GMACGalois Message Authentication Code
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
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
SHAKESecure Hash Algorithm KECCAK
SHASecure Hash Algorithm
SHSSecure Hash Standard
SPSpecial Publication
TLSTransport Layer Security
XEXXOR Encrypt XOR
XTSXEX-Based Tweaked-Codebook Mode with Ciphertext Stealing
Page 32

Prepared by: Corsec Security, Inc.

2600 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