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

Remove non-IETF [x]chacha20poly1305 constructions #462

Closed
zx2c4 opened this issue Dec 24, 2016 · 2 comments
Closed

Remove non-IETF [x]chacha20poly1305 constructions #462

zx2c4 opened this issue Dec 24, 2016 · 2 comments

Comments

@zx2c4
Copy link
Contributor

zx2c4 commented Dec 24, 2016

Merging #461 was a step in the right direction, since it clearly defines the xchapoly functions in terms of the other constructions.

But really we should remove non-IETF [x]chacha20poly1305 constructions.

The padding they add could be an important security feature. More importantly, every place else implements the IETF version, so keeping two around hampers interop. A the very least, you could prevent new code from linking against those functions while still maintaining binary compatibility with old code. Alternatively, promote the IETF versions to not have the _ietf part of the name, and demote the non-IETF versions to have _nonietf part of the name.

Or some other good solution. But let's get thinking about interop.

@tarcieri
Copy link
Contributor

At the very least, I think it would be nice if everyone defining an "XChaCha20Poly1305" based the construction on the IETF version, so we don't have to worry about two variants of that.

@jedisct1
Copy link
Owner

The non-IETF versions are not going to be removed or renamed. It would be a breaking change, breaking existing applications, so this is not going to happen before a major revision.

But yes, other libraries implementing XChaCha20Poly1305 (now based on the IETF version) would be neat.

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