Tortuga Logic Security Verification of Rambus CMRT
Tortuga Logic Security Verification of Rambus CMRT
Tortuga Logic Security Verification of Rambus CMRT
Summary
The confidentiality and integrity of cryptographic key material is critical to maintaining system
security. Hardware roots of trust, such as the CryptoManager Root of Trust (CMRT) from
Rambus are designed to securely generate, store, and use cryptographic keys. Tortuga Logic
has independently verified the policies surrounding access to keys stored within registers in
the CMRT using its pre-silicon security verification platform, Radix™.
Confidentiality and integrity properties require tracking how information contained in design
signal flows between design logic blocks. Tortuga Logic’s Radix provides 1) a mechanism for
specifying security requirements as information flow rules in a concise and comprehensive
manner and 2) the ability to verify these rules during simulation and emulation to leverage
existing high-quality test stimulus developed for functional verification.
Three (3) security rules related to the management of the most critical cryptographic key assets
in the CRMT were developed collaboratively by Tortuga Logic and the security and verification
teams at Rambus. The 3 security rules easily integrate into the existing verification
environment and were successfully analyzed using an existing set of regression tests provided
by Rambus.
Security Requirements
The CMRT assets analyzed are all cryptographic keys stored in registers within the Key
Derivation Core (KDC) and AES Core. The relevant blocks are outlined in red in Figure 1.
Keys inside the CMRT are governed by hardware-enforced policies dictating how keys can be
accessed and used. For example, a subset of keys can be manipulated by software running
on the CMRT Secure CPU, while others should always remain software-hidden.
The 3 keys analyzed are used to protect sensitive customer data. The CMRT employs key
derivation algorithms (implemented in hardware by the Key Derivation Function Core) to
generate unique key material which is never externally visible, even to the software requesting
that cryptographic operations are performed. These internal keys, which are only permitted to
reside in the KDC and other cryptographic cores such as the AES Engine, are critical to protect
and are the focus of Tortuga Logic’s security verification effort.
2
TORTUGA LOGIC | SECURITY VERIFICATION OF THE CRYPTOMANAGER ROOT OF TRUST
FIGURE 1: CMRT BLOCK DIAGRAM WITH CORES RELEVANT TO THE SECURITY RULES
VERIFIED OUTLINED USING RED BOXES
*In the context of the CMRT hardware architecture, software includes the inputs to the Secure
CPU and the SRAM block storing Security Processor code and data.
Tortuga Logic has verified the confidentiality of these keys is maintained by the CMRT
hardware architecture.
3
TORTUGA LOGIC | SECURITY VERIFICATION OF THE CRYPTOMANAGER ROOT OF TRUST
Verification Results
The security requirements outlined in the previous section were captured as security rules
using Tortuga Logic’s Sentinel™ security specification language. The rules were verified using
Tortuga Logic’s Radix in combination with an existing functional regression test suite from
Rambus which exercises the KDC, AES, and OTP blocks. No new tests were required to
perform security verification using Radix. A high-level description of the security rules along
with the verification results is given in the chart below.
Tortuga Logic tools provide a simple syntax for expressing security rules. A Sentinel rule
always consists of a source, the “no-flow” operator, =/=>, and a destination. The source and
destination can be a single signal, or a set consisting of multiple signals. The rule will fail if
information from any signal in the source signal set flows to any signal in the destination signal
set. All 3 security rules passed, meaning no illegal information flows were observed during the
regression tests, which heavily exercised functionality surrounding the usage of these keys.
Radix generates a security model design (SMD) based on the original RTL (CMRT design files)
and the security objectives captured by the security rules. This custom security model contains
patented technology to detect violations of these rules during RTL simulation and emulation
meaning the existing functional verification infrastructure can be leveraged for security
verification.
4
TORTUGA LOGIC | SECURITY VERIFICATION OF THE CRYPTOMANAGER ROOT OF TRUST