All Projects → lukechampine → Jsteg

lukechampine / Jsteg

Licence: other
JPEG steganography

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Jsteg

Desudesutalk
Steganography for imageboards
Stars: ✭ 100 (-77.68%)
Mutual labels:  jpeg, steganography
F5stegojs
JPEG steganography for browser and node. F5 algo in pure javascript.
Stars: ✭ 42 (-90.62%)
Mutual labels:  jpeg, steganography
Stegify
🔍 Go tool for LSB steganography, capable of hiding any file within an image.
Stars: ✭ 927 (+106.92%)
Mutual labels:  jpeg, steganography
neural-imaging
[CVPR'19, ICLR'20] A Python toolbox for modeling and optimization of photo acquisition & distribution pipelines (camera ISP, compression, forensics, manipulation detection)
Stars: ✭ 109 (-75.67%)
Mutual labels:  jpeg, steganography
Dcm2niix
dcm2nii DICOM to NIfTI converter: compiled versions available from NITRC
Stars: ✭ 364 (-18.75%)
Mutual labels:  jpeg
Jpegsnoop
JPEGsnoop: JPEG decoder and detailed analysis
Stars: ✭ 282 (-37.05%)
Mutual labels:  jpeg
Imager
Automated image compression for efficiently distributing images on the web.
Stars: ✭ 266 (-40.62%)
Mutual labels:  jpeg
Androidsvgdrawable Plugin
Gradle plugin that generates qualified, density specific PNG drawables from SVG files at build time for your Android projects.
Stars: ✭ 263 (-41.29%)
Mutual labels:  jpeg
Automator Workflows
A collection of Automator workflows (services) that speed up your design / development process. Compatible with LaunchBar 6 and 7 Actions
Stars: ✭ 439 (-2.01%)
Mutual labels:  jpeg
Packetwhisper
PacketWhisper: Stealthily exfiltrate data and defeat attribution using DNS queries and text-based steganography. Avoid the problems associated with typical DNS exfiltration methods. Transfer data between systems without the communicating devices directly connecting to each other or to a common endpoint. No need to control a DNS Name Server.
Stars: ✭ 405 (-9.6%)
Mutual labels:  steganography
Tifig
A fast HEIF image converter aimed at thumbnailing
Stars: ✭ 345 (-22.99%)
Mutual labels:  jpeg
Piexif
Exif manipulation with pure python script.
Stars: ✭ 290 (-35.27%)
Mutual labels:  jpeg
Sharp
High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, AVIF and TIFF images. Uses the libvips library.
Stars: ✭ 21,131 (+4616.74%)
Mutual labels:  jpeg
Djv
Professional media review software for VFX, animation, and film production
Stars: ✭ 282 (-37.05%)
Mutual labels:  jpeg
Mort
Storage and image processing server written in Go
Stars: ✭ 420 (-6.25%)
Mutual labels:  jpeg
Selene
A C++17 image representation, processing and I/O library.
Stars: ✭ 266 (-40.62%)
Mutual labels:  jpeg
Compress Images
Minify size your images. Image compression with extension: jpg/jpeg, svg, png, gif. NodeJs
Stars: ✭ 331 (-26.12%)
Mutual labels:  jpeg
Stegcracker
Steganography brute-force utility to uncover hidden data inside files
Stars: ✭ 396 (-11.61%)
Mutual labels:  steganography
Stegano
A pure Python steganography module.
Stars: ✭ 324 (-27.68%)
Mutual labels:  steganography
Stegastamp
Invisible Hyperlinks in Physical Photographs
Stars: ✭ 306 (-31.7%)
Mutual labels:  steganography

jsteg

GoDoc Go Report Card

go get lukechampine.com/jsteg

jsteg is a package for hiding data inside jpeg files, a technique known as steganography. This is accomplished by copying each bit of the data into the least-significant bits of the image. The amount of data that can be hidden depends on the filesize of the jpeg; it takes about 10-14 bytes of jpeg to store each byte of the hidden data.

Example

// open an existing jpeg
f, _ := os.Open(filename)
img, _ := jpeg.Decode(f)

// add hidden data to it
out, _ := os.Create(outfilename)
data := []byte("my secret data")
jsteg.Hide(out, img, data, nil)

// read hidden data:
hidden, _ := jsteg.Reveal(out)

Note that the data is not demarcated in any way; the caller is responsible for determining which bytes of hidden it cares about. The easiest way to do this is to prepend the data with its length.

A jsteg command is included, providing a simple wrapper around the functions of this package. It can hide and reveal data in jpeg files and supports input/output redirection. It automatically handles length prefixes and uses a magic header to identify jpegs that were produced by jsteg.

A more narrowly-focused command named slink is also included. slink embeds a public key in a jpeg, and makes it easy to sign data and verify signatures using keypairs derived from password strings. See cmd/slink for a full description.

Binaries for both commands can be found here.


This package reuses a significant amount of code from the image/jpeg package. The BSD-style license that governs the use of that code can be found in the go_LICENSE file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].