pub mod encryption;
pub mod provider_bridge;
pub mod said;
pub mod signer;
pub mod ssh;
#[cfg(feature = "crypto-secp256k1")]
pub mod secp256k1;
pub use said::{compute_next_commitment, compute_said, verify_commitment};
pub use signer::SignerKey;
#[cfg(feature = "crypto-secp256k1")]
pub use secp256k1::Secp256k1KeyPair;
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum EncryptionAlgorithm {
AesGcm256,
ChaCha20Poly1305,
}
impl EncryptionAlgorithm {
pub fn tag(&self) -> u8 {
match self {
EncryptionAlgorithm::AesGcm256 => 1,
EncryptionAlgorithm::ChaCha20Poly1305 => 2,
}
}
pub fn from_tag(tag: u8) -> Option<Self> {
match tag {
1 => Some(EncryptionAlgorithm::AesGcm256),
2 => Some(EncryptionAlgorithm::ChaCha20Poly1305),
_ => None,
}
}
}