RustCrypto / AEADs

Authenticated Encryption with Associated Data Algorithms: high-level encryption ciphers
724 stars 153 forks source link

crypto_box: move into a separate repository? #338

Closed newpavlov closed 3 years ago

newpavlov commented 3 years ago

The crypto_box crate feels a bit out of place in this repository since it includes bits of public key cryptography.

It could be worth to move it into a separate repository. We could dedicate this repository to emulation of NaCl/libsodium APIs using our crates as a pure-Rust backend. In a certain sense it will be like ring-compat, but in reverse.

newpavlov commented 3 years ago

@tarcieri Regarding potential name for the repository, how about libsodium-compat?

tarcieri commented 3 years ago

For crypto_box in particular I'd suggest something more like nacl-compat, as the construction can be found in the original NaCl and all NaCl forks, including libsodium and TweetNaCl.

If we had that, it might make sense to move xsalsa20poly1305 there too, as it isn't technically an AEAD mode.

newpavlov commented 3 years ago

nacl-compat sounds good to me as well!

If we had that, it might make sense to move xsalsa20poly1305 there too, as it isn't technically an AEAD mode.

Well, we could say this repo is for AE(AD) algorithms. :) Considering that AE traits may be added to the aead crate, I think it's fine to keep it here. Although I plan to introduce one day a separate folder for "combination" crates, which would be convenience thin wrappers around other crates.