Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

embed-distributed

Split a payload into Reed-Solomon coded shards and embed each into a separate cover.

Usage

shadowforge embed-distributed \
  --input <FILE> --covers <GLOB> --output-archive <FILE> \
  --technique <TECHNIQUE> [OPTIONS]

Options

OptionRequiredDefaultDescription
--inputYesPayload file
--coversYesGlob pattern for cover files
--output-archiveYesOutput archive path
--techniqueYesSteganographic technique
--data-shardsNo3Number of data shards
--parity-shardsNo2Number of parity shards
--profileNostandardEmbedding profile
--platformNoTarget platform (for survivable)
--canaryNoInject a canary shard for tamper detection
--geo-manifestNoGeographic distribution manifest (TOML)

Examples

# Distribute across 5 covers (3 data + 2 parity)
shadowforge embed-distributed \
  --input secret.txt \
  --covers "covers/*.png" \
  --output-archive distributed.zip \
  --technique lsb

# With canary shard
shadowforge embed-distributed \
  --input secret.txt \
  --covers "covers/*.png" \
  --output-archive distributed.zip \
  --technique lsb --canary

# Geographic distribution
shadowforge embed-distributed \
  --input secret.txt \
  --covers "covers/*.png" \
  --output-archive distributed.zip \
  --technique lsb \
  --geo-manifest manifest.toml

How It Works

  1. The payload is split into data-shards pieces.
  2. parity-shards additional pieces are generated via Reed-Solomon coding.
  3. Each shard is embedded into a separate cover file.
  4. All stego covers are packed into the output archive.

Recovery requires any data-shards of the total shards. With the default 3+2 configuration, any 3 of 5 shards reconstruct the original payload.