Skip to content
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

Split Repository trait into local and remote components #119

Open
heartsucker opened this issue Jul 26, 2017 · 3 comments
Open

Split Repository trait into local and remote components #119

heartsucker opened this issue Jul 26, 2017 · 3 comments

Comments

@heartsucker
Copy link
Contributor

Because we trust data once its in the local repo, and we don't need to reverify it on every fetch.

@erickt
Copy link
Collaborator

erickt commented Aug 3, 2018

For repositories like FileSystemRepository, I assume we don't need to check for trickle attacks, but do you think we ought to verify the hash on every read?

@erickt
Copy link
Collaborator

erickt commented Nov 21, 2019

Circling back, yes we should verify the hash on every read in FileSystemRepository. On fuchsia, we store our trusted root in a read only location, so we can cryptographically verify that all the metadata and target files are based off of our initial trusted root. Since we want to protect against an attacker being able to manipulate our mutable storage, we need to check the file is as expected when we open it up.

EphemeralRepository however does not need to verify the hash, since if an attacker can modify our TUF process's memory, then they can probably skip verification altogether.

@heartsucker
Copy link
Contributor Author

If we want to always verify from a local repo, we can close this. Since the ephemeral repo is only used for testing, it's ok if it's not particularly efficient (not that hashing is slow, but it's an unnecessary optimization)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants