Steganography for R
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
R
inst
man
tests
.Rbuildignore
.gitignore
.travis.yml
DESCRIPTION
Makefile
NAMESPACE
README.md
build.R

README.md

stegasaur

Travis-CI Build Status

Steganography for R

stegosaur

The aim is to be able to encode arbitrary R objects in cat pictures:

txt <- "this is a secret message"
kitten <- stegasaur::kitten(200, 300)
stegasaur::encode("this is a secret message", kitten, "kitten.png")

The file kitten.png in the working directory now contains both an adorable kitten and a secret message. The message can be decoded:

stegasaur::decode("kitten.png")
# [1] "this is a secret message"

This works with arbitrary objects, too

x <- runif(10)
stegasaur::encode(x, kitten, "kitten.png")
stegasaur::decode("kitten.png")
# [1] 0.8257649 0.2250323 0.1598864 0.4999668 0.6165416 0.6676501 0.8632083
# [8] 0.6462997 0.1772859 0.2864177

An additional helper function allows quick encoding in images, when one would like to encode the plot code with the figure:

stegasaur::figasaur({plot(sample(100))}, "randomplot.png")

A knitr "hook" (hook_figasaur) is also included, so one may automatically encode the generating code with plots throughout a knitr document. See knitr_example.Rmd in the inst directory for an example.

Currently suporting:

  • Least-significant-bit (LSB)

Aiming to support: