pub struct Context<W: Word = u32> {
pub expanded_key: SecretVec<W>,
pub rounds: usize,
}
Expand description
RC5 Context
This struct holds the expanded key and the number of rounds that the algorithm will use. Use this struct if you are going to encrypt or decrypt multiple buffers of data with the same key.
Otherwise you can use the shorthand free standing functions encrypt and decrypt.
Fields§
§expanded_key: SecretVec<W>
§rounds: usize
Implementations§
source§impl<W: Word> Context<W>
impl<W: Word> Context<W>
pub fn new(key: Vec<u8>, rounds: usize) -> Result<Self, Error>
sourcepub fn encrypt(&self, plaintext: &[u8]) -> Result<Vec<u8>, Error>
pub fn encrypt(&self, plaintext: &[u8]) -> Result<Vec<u8>, Error>
Encrypts bytes using the RC5 context and returns the ciphertext. The plaintext must be a multiple of the block size. Padding is not implemented.
pub fn decrypt(&self, ciphertext: &[u8]) -> Result<Vec<u8>, Error>
Auto Trait Implementations§
impl<W> RefUnwindSafe for Context<W>where W: RefUnwindSafe,
impl<W> Send for Context<W>where W: Send,
impl<W> Sync for Context<W>where W: Sync,
impl<W> Unpin for Context<W>where W: Unpin,
impl<W> UnwindSafe for Context<W>where W: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more