use crate::error::ZmqError;
pub trait IDataCipher: Send + Sync + 'static {
fn encrypt(&mut self, plaintext: &[u8]) -> Result<Vec<u8>, ZmqError>;
fn decrypt(&mut self, ciphertext: &[u8]) -> Result<Vec<u8>, ZmqError>;
}
#[derive(Debug, Default)]
pub(crate) struct PassThroughDataCipher;
impl IDataCipher for PassThroughDataCipher {
fn encrypt(&mut self, plaintext: &[u8]) -> Result<Vec<u8>, ZmqError> {
Ok(plaintext.to_vec())
}
fn decrypt(&mut self, ciphertext: &[u8]) -> Result<Vec<u8>, ZmqError> {
Ok(ciphertext.to_vec())
}
}