1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
pub use self::{keypair::*, public_key::*, secret_key::*, utils::*};
pub(crate) mod keypair;
pub(crate) mod public_key;
pub(crate) mod secret_key;
pub(crate) mod utils {
use ring::{rand::SystemRandom, signature::Ed25519KeyPair};
pub fn random_keypair() -> Ed25519KeyPair {
Ed25519KeyPair::from_pkcs8(generate_random_pkcs8().as_ref()).unwrap()
}
pub fn generate_random_pkcs8() -> ring::pkcs8::Document {
Ed25519KeyPair::generate_pkcs8(&SystemRandom::new()).unwrap()
}
}