An Analysis of the CAVES Attestation Protocol using CPSA
This paper describes the CAVES attestation protocol and presents a tool-supported analysis showing that the runs of the protocol achieve stated goals. The goals are stated formally by annotating the protocol with logical formulas using the rely-guarantee method. The protocol analysis tool used is the Cryptographic Protocol Shape Analyzer.
š” Research Summary
The paper presents a formal, toolāsupported analysis of the CAVES attestation protocol, a TPMābased remoteāmeasurement scheme that extends the classic twoāparty attestation model with additional roles: a Server, a Verifier, and an Enterprise Privacy Certificate Authority (EPCA). The authors first describe the protocolās purpose and its design goalsāfreshness, comprehensiveness, constrained disclosure, semantic explicitness, and trustāworthinessāderived from the foundational principles of attestation. They then detail the message flow: a client initiates a request to the server, providing a session key K and a distinguished name A that identifies the TPM identity key to be used. The server forwards a challenge (nonce N_V), a measurement query J, a PCR mask M, and its own nonce N_S to the verifier. The verifier obtains Aās certificate from the EPCA, forwards the challenge and query to the client, which passes them to its local Attester. The Attester generates a TPM quote that binds the measurement output J_O and the selected PCR values P to a hash of protocol parameters, signs it with the TPM identity private key Iā»Ā¹, and packages everything into a āblobā B encrypted under a fresh AttesterāServer session key Kā². The blob traverses the client and server to reach the verifier, which validates the signature and, if successful, returns a āvalidā acknowledgment encrypted under the serverāclient key K_S. Finally, the server releases the protected data D to the client using Kā².
To verify that the protocol meets its security goals, the authors model it in the Cryptographic Protocol Shape Analyzer (CPSA) using Sāexpressions. Each transmission and reception event is annotated with logical formulas in the relyāguarantee style. Guarantees (Ļ) attached to sends express the local conditions a principal must be able to prove before emitting a message (e.g., āthe measurement is fresh, the PCR mask matches the verifierās request, the nonce is freshā). Reliance formulas (A says Ļ) attached to receives capture the facts a principal can add to its local theory after successfully processing an incoming message. The relyāguarantee framework allows the authors to distinguish regular (uncompromised) principals, whose longāterm keys are assumed secret, from an adversary who may inject arbitrary messages but cannot satisfy the guarantees of honest participants.
CPSA explores all executions compatible with the stated assumptions: uncompromised longāterm keys K_S, K_V, and I; freshly generated nonces N_S and N_V; and the proper generation of session keys K and Kā². The tool computes a finite set of āshapes,ā each representing a minimal, essentially different execution trace. The analysis yields roughly ten distinct shapes, all of which satisfy authentication (the verifierās acceptance of a valid signature implies the Attester indeed produced the quoted measurements), freshness (nonces match across messages, preventing replay), and minimal disclosure (the blob is encrypted such that the client and server cannot read its contents, only the verifier can verify the signature). The shapes also demonstrate that any attempt by an attacker to forge a āvalidā message would require breaking the TPM signature or compromising the longāterm keys, both excluded by the modelās assumptions.
The paper further discusses how the protocol accommodates virtualization environments. A dedicated Measurement VM, isolated from the client VM, can perform the measurements and invoke the TPM, while the serverāverifier pair remains agnostic to the internal VM layout. The EPCAās certificate chain is incorporated into the CPSA model, ensuring that the verifierās trust in the Attesterās identity is grounded in a verifiable publicākey infrastructure.
In the āRelyāGuarantee Methodā section, the authors formalize soundness: for every execution that respects the assumptions, each rely formula must be logically entailed by earlier guarantees. They argue that regular principals, by virtue of holding uncompromised keys, can always satisfy their guarantees, whereas the adversary may only send messages that violate guarantees, which are filtered out by the shape analysis.
The paper concludes that CAVES successfully meets its design objectives, and that the combination of CPSAās shape analysis with relyāguarantee annotations provides a rigorous, machineāchecked proof of security. This work illustrates a practical methodology for analyzing complex, multiārole attestation protocols and offers a template for future verification efforts in cloudābased trusted computing environments.
Comments & Academic Discussion
Loading comments...
Leave a Comment