-
Notifications
You must be signed in to change notification settings - Fork 58
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
persist AK, NK and mTLS certificate to disk #391
Conversation
5e37699
to
b262fa5
Compare
A new file in /var/lib/keylime is created called "agent_data.json which holds all those keys and certificates. This allows the agent to be restarted mid attestation without failing due to wrong keys. Signed-off-by: Thore Sommer <[email protected]>
The agent does not require to take ownership of the TPM and the NK key is saved always in "agent_data.json". Signed-off-by: Thore Sommer <[email protected]>
Thanks for the PR! I'm trying to understand the security implications of this. I went back to read your comment on #293 about loading the AK from disk, I assume that's applicable here as well?
I assume that encryption operation was happening with the |
Yes the
The old implementation first dumped and then serialized the context with the AK, the new one directly serializes the What has changed is that we also dump the NK to disk, which is fine because it is used for transport security and the payload mechanism, not the actual attestation. The worst case that happens if someone gets this key (by having read access to /var/lib/keylime) is that they can decrypt payloads which the agent anyway does and stores under the secure tmp mount with the same permissions. |
@THS-on Thanks for the explanation. |
A new file in /var/lib/keylime is created called "agent_data.json which
holds all those keys and certificates. This allows the agent to be
restarted mid attestation without failing due to wrong keys.
Fixes: #382