Trait ntp_proto::Cipher

source ·
pub trait Cipher: Sync + Send + ZeroizeOnDrop + 'static {
    // Required methods
    fn encrypt_in_place_detached(
        &self,
        plaintext: &mut [u8],
        associated_data: &[u8]
    ) -> Result<(Tag, Nonce)>;
    fn decrypt(
        &self,
        nonce: &[u8],
        ciphertext: &[u8],
        associated_data: &[u8]
    ) -> Result<Vec<u8>, DecryptError>;
    fn key_bytes(&self) -> &[u8] ;
}

Required Methods§

source

fn encrypt_in_place_detached( &self, plaintext: &mut [u8], associated_data: &[u8] ) -> Result<(Tag, Nonce)>

source

fn decrypt( &self, nonce: &[u8], ciphertext: &[u8], associated_data: &[u8] ) -> Result<Vec<u8>, DecryptError>

source

fn key_bytes(&self) -> &[u8]

Trait Implementations§

source§

impl CipherProvider for dyn Cipher

source§

fn get(&self, _context: &[ExtensionField<'_>]) -> Option<CipherHolder<'_>>

Implementors§