pub struct VigenereDictionaryAttack<'a, S>{ /* private fields */ }Expand description
Crack Vigenere by trying every given key
It calculate fitness of every key. The closer the value to zero, the more probably that given key was the correct one
reference_data should not have spaces inside as they will be trimmed
Trait Implementations§
Source§impl<'a, S: Tokenizer + Clone + Default> VigenereAttack for VigenereDictionaryAttack<'a, S>
impl<'a, S: Tokenizer + Clone + Default> VigenereAttack for VigenereDictionaryAttack<'a, S>
fn run(&self) -> Result<VigenereAttackResult, CipherError>
Auto Trait Implementations§
impl<'a, S> Freeze for VigenereDictionaryAttack<'a, S>
impl<'a, S> RefUnwindSafe for VigenereDictionaryAttack<'a, S>where
<S as CalcType>::Key: RefUnwindSafe,
impl<'a, S> Send for VigenereDictionaryAttack<'a, S>
impl<'a, S> Sync for VigenereDictionaryAttack<'a, S>
impl<'a, S> Unpin for VigenereDictionaryAttack<'a, S>
impl<'a, S> UnsafeUnpin for VigenereDictionaryAttack<'a, S>
impl<'a, S> UnwindSafe for VigenereDictionaryAttack<'a, S>where
<S as CalcType>::Key: RefUnwindSafe,
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more