pub struct LsbImage;Expand description
LSB image steganography adapter for PNG/BMP.
Embeds payload in the least significant bits of RGB channels only (alpha channel is untouched). Header encodes 32-bit big-endian payload length.
Implementations§
Trait Implementations§
Source§impl EmbedTechnique for LsbImage
impl EmbedTechnique for LsbImage
Source§fn technique(&self) -> StegoTechnique
fn technique(&self) -> StegoTechnique
The technique identifier for this implementation.
Source§fn capacity(&self, cover: &CoverMedia) -> Result<Capacity, StegoError>
fn capacity(&self, cover: &CoverMedia) -> Result<Capacity, StegoError>
Estimate how many payload bytes
cover can hold. Read moreSource§fn embed(
&self,
cover: CoverMedia,
payload: &Payload,
) -> Result<CoverMedia, StegoError>
fn embed( &self, cover: CoverMedia, payload: &Payload, ) -> Result<CoverMedia, StegoError>
Source§impl ExtractTechnique for LsbImage
impl ExtractTechnique for LsbImage
Source§fn technique(&self) -> StegoTechnique
fn technique(&self) -> StegoTechnique
The technique identifier for this implementation.
Source§fn extract(&self, cover: &CoverMedia) -> Result<Payload, StegoError>
fn extract(&self, cover: &CoverMedia) -> Result<Payload, StegoError>
Extract a hidden payload from
stego. Read moreAuto Trait Implementations§
impl Freeze for LsbImage
impl RefUnwindSafe for LsbImage
impl Send for LsbImage
impl Sync for LsbImage
impl Unpin for LsbImage
impl UnsafeUnpin for LsbImage
impl UnwindSafe for LsbImage
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