1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
extern crate sodiumoxide; pub mod encrypt { pub use sodiumoxide::crypto::box_::{gen_keypair, PublicKey, SecretKey}; pub(crate) use sodiumoxide::crypto::sealedbox::seal; pub(crate) fn open(c: &[u8], key: &SecretKey) -> Result<Vec<u8>, ()> { sodiumoxide::crypto::sealedbox::open(c, &key.public_key(), key) } } pub mod sign { pub use sodiumoxide::crypto::sign::{gen_keypair, PublicKey, SecretKey}; pub(crate) use sodiumoxide::crypto::sign::{sign, verify}; }