pub struct AdaptiveOptimiserImpl { /* private fields */ }Expand description
Concrete adversarial optimiser.
Uses permutation_search from domain/adaptive to find a byte-reordering
that minimises chi-square detectability.
Implementations§
Source§impl AdaptiveOptimiserImpl
impl AdaptiveOptimiserImpl
Sourcepub fn from_codebook(
codebook_json: &str,
config: SearchConfig,
) -> Result<Self, AdaptiveError>
pub fn from_codebook( codebook_json: &str, config: SearchConfig, ) -> Result<Self, AdaptiveError>
Create with an explicit codebook and search configuration.
§Errors
Returns AdaptiveError::ProfileMatchFailed if the codebook is invalid.
Sourcepub fn with_built_in() -> Self
pub fn with_built_in() -> Self
Create with the built-in Gemini codebook and default search config.
Trait Implementations§
Source§impl AdaptiveOptimiser for AdaptiveOptimiserImpl
impl AdaptiveOptimiser for AdaptiveOptimiserImpl
Source§fn optimise(
&self,
stego: CoverMedia,
_original: &CoverMedia,
target_db: f64,
) -> Result<CoverMedia, AdaptiveError>
fn optimise( &self, stego: CoverMedia, _original: &CoverMedia, target_db: f64, ) -> Result<CoverMedia, AdaptiveError>
Auto Trait Implementations§
impl Freeze for AdaptiveOptimiserImpl
impl RefUnwindSafe for AdaptiveOptimiserImpl
impl Send for AdaptiveOptimiserImpl
impl Sync for AdaptiveOptimiserImpl
impl Unpin for AdaptiveOptimiserImpl
impl UnsafeUnpin for AdaptiveOptimiserImpl
impl UnwindSafe for AdaptiveOptimiserImpl
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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