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

Support for streaming AEAD using Rogaway's STREAM construction #434

Closed
tarcieri opened this issue Oct 16, 2016 · 2 comments
Closed

Support for streaming AEAD using Rogaway's STREAM construction #434

tarcieri opened this issue Oct 16, 2016 · 2 comments

Comments

@tarcieri
Copy link
Contributor

This Rogaway et al paper described a provably secure construction for streaming AEAD called STREAM which does not rely on the use of NRMR and could be implemented for e.g. ChaCha20Poly1305 AEAD:

https://eprint.iacr.org/2015/189.pdf

The description of STREAM begins in Section 7 (bottom of page 16). Here's a diagram from the paper:

screen shot 2016-10-16 at 2 25 56 pm

I think there's a real world need for a provably secure, interoperable construction for streaming AEAD (see the "A real-world need" section from the paper at the bottom of page 3). In the absence of a standard, reusable primitive for solving this problem, people are homebrewing their own solutions, poorly:

https://www.imperialviolet.org/2014/06/27/streamingencryption.html

That requires more thought before using it for real but, if you are ever building encryption-at-rest, please don't mess it up like we did 20 years ago.

However, I'd also understand if you feel this belongs in a separate library from libsodium.

@FSMaxB
Copy link

FSMaxB commented Oct 17, 2016

This looks like it fits in the scope of the blobcrypt library.

@jedisct1
Copy link
Owner

jedisct1 commented Oct 17, 2016

This is something badly needed. But I also think that this belongs to a separate library, especially in the absence of a standard.

Blobcrypt has its own construction and was more designed for encrypted filesystems, so a different project specifically for streaming would be a better fit. Blobcrypt's API can be reused, though.

Repository owner locked and limited conversation to collaborators Aug 28, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants