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

Document the importance of avoiding (timing) side channels #53

Open
briansmith opened this issue Apr 27, 2021 · 1 comment
Open

Document the importance of avoiding (timing) side channels #53

briansmith opened this issue Apr 27, 2021 · 1 comment

Comments

@briansmith
Copy link
Owner

When reviewing PR #47 by @stepancheg I realized that there's no documentation here about why or how we avoid leaking information about the contents of the slice held in an Input or Reader unless/until specifically requested.

ring internally uses untrusted to process secret buffers so untrusted.rs can only inspect/report/leak the value of any byte of the input if/when the caller specifically requests it. So, for example, peek() can inspect the value of the next byte but a Debug implementation cannot.

@briansmith
Copy link
Owner Author

Perhaps we should remove PartialEq and similar from Input? Or maybe we need a way to distinguish secret inputs from non-secret inputs that can enable such variable-time functions.

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

No branches or pull requests

1 participant