summaryrefslogtreecommitdiff
path: root/security/outguess
diff options
context:
space:
mode:
authorTrevor Johnson <trevor@FreeBSD.org>2000-12-31 10:42:46 +0000
committerTrevor Johnson <trevor@FreeBSD.org>2000-12-31 10:42:46 +0000
commit0b58639d25c92ef85898e8b5062f63aa274d6747 (patch)
tree1f856548675d346c9be6d9dfae6a28954348a542 /security/outguess
parentAdd sst 1.0, a simple SSL tunneling tool that uses netcat. (diff)
new port of OutGuess, a steganographic utility for JPEG and PNM images
Obtained from: OpenBSD
Notes
Notes: svn path=/head/; revision=36521
Diffstat (limited to 'security/outguess')
-rw-r--r--security/outguess/Makefile46
-rw-r--r--security/outguess/distinfo3
-rw-r--r--security/outguess/files/outguess.1182
-rw-r--r--security/outguess/pkg-comment1
-rw-r--r--security/outguess/pkg-descr13
5 files changed, 245 insertions, 0 deletions
diff --git a/security/outguess/Makefile b/security/outguess/Makefile
new file mode 100644
index 000000000000..08ec6beeb403
--- /dev/null
+++ b/security/outguess/Makefile
@@ -0,0 +1,46 @@
+# New ports collection makefile for: outguess
+# Date created: 2000-12-31
+# Whom: trevor
+# based on the OpenBSD port by Dug Song <dugsong@monkey.org>
+#
+# $OpenBSD: Makefile,v 1.7 2000/10/22 15:43:25 espie Exp $
+# $FreeBSD$
+#
+
+PORTNAME= outguess
+PORTVERSION= 0.13b
+CATEGORIES= security
+MASTER_SITES= ftp://ftp.cryptoarchive.net/pub/cryptoarchive/mirrors/www-sites/www.outguess.org/ \
+ http://www.physnet.uni-hamburg.de/provos/ \
+ http://munitions.vipul.net/software/steganography/
+
+MAINTAINER= Trevor Johnson <trevor@FreeBSD.org>
+
+DOCDIR= share/doc/outguess
+DOCS= ChangeLog README STIRMARK-README TODO
+
+GNU_CONFIGURE= yes
+MAN1= outguess.1
+PLIST= ${WRKDIR}/pkg-plist
+WRKSRC= ${WRKDIR}/outguess
+
+pre-install:
+ ${ECHO} bin/outguess > ${PLIST}
+.if !defined(NOPORTDOCS)
+.for i in ${DOCS}
+ ${ECHO} ${DOCDIR}/${i} >> ${PLIST}
+.endfor
+ ${ECHO} @dirrm ${DOCDIR} >> ${PLIST}
+.endif
+
+do-install:
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${PREFIX}/${DOCDIR}
+.for i in ${DOCS}
+ ${INSTALL_DATA} ${WRKSRC}/${i} ${PREFIX}/${DOCDIR}
+.endfor
+.endif
+ ${INSTALL_PROGRAM} ${WRKSRC}/outguess ${PREFIX}/bin
+ ${INSTALL_MAN} ${FILESDIR}/outguess.1 ${PREFIX}/man/man1
+
+.include <bsd.port.mk>
diff --git a/security/outguess/distinfo b/security/outguess/distinfo
new file mode 100644
index 000000000000..52164cc1727a
--- /dev/null
+++ b/security/outguess/distinfo
@@ -0,0 +1,3 @@
+MD5 (outguess-0.13b.tar.gz) = 635356b3a4bd1be8761921af77792f8b
+RMD160 (outguess-0.13b.tar.gz) = 0c7387352e7568edd9d520e1e8e65bc7220ac67a
+SHA1 (outguess-0.13b.tar.gz) = adf927d6d4db8307c3bca08729284e685b681937
diff --git a/security/outguess/files/outguess.1 b/security/outguess/files/outguess.1
new file mode 100644
index 000000000000..88ac5b6315af
--- /dev/null
+++ b/security/outguess/files/outguess.1
@@ -0,0 +1,182 @@
+.\" outguess manpage, converted from README
+.\" dugsong@monkey.org
+.TH OUTGUESS 1 "6 August 1999"
+.SH NAME
+outguess - universal steganographic tool
+.SH SYNOPSIS
+.B outguess
+[
+.B \-emt
+] [
+.B \-r
+] [
+.B \-k
+.I key
+] [
+.B \-d
+.I datafile
+] [
+.B \-s
+.I seed
+] [
+.B \-i
+.I limit
+] [
+.B \-x
+.I maxkeys
+] [
+.B \-p
+.I param
+] [
+.I inputfile
+[
+.I outputfile
+]]
+.LP
+.SH DESCRIPTION
+.LP
+.I Outguess
+is a universal steganographic tool that allows the insertion
+of hidden information into the redundant bits of data sources. The
+nature of the data source is irrelevant to the core of
+.IR outguess .
+The program relies on data specific handlers that will extract
+redundant bits and write them back after modification. Currently only
+the PPM, PNM, and JPEG image formats are supported, although
+.I outguess
+could use any kind of data, as long as a handler were provided.
+.PP
+.I Outguess
+uses a generic iterator object to select which bits in the data should
+be modified. A seed can be used to modify the behavior of the
+iterator. It is embedded in the data along with the rest of the
+message. By altering the seed,
+.I outguess
+tries to find a sequence of bits that minimizes the number of changes
+in the data that have to be made.
+.PP
+A bias is introduced that favors the modification of bits that were
+extracted from a high value, and tries to avoid the modification of
+bits that were extracted from a low value.
+.PP
+Additionally,
+.I Outguess
+allows for the hiding of two distinct messages in the data, thus
+providing plausible deniablity. It keeps track of the bits that have
+been modified previously and locks them. A (23,12,7) Golay code is
+used for error correction to tolerate collisions on locked bits.
+Artifical errors are introduced to avoid modifying bits that have a
+high bias.
+.SH OPTIONS
+.LP
+The following command line options, when specified as capital letters,
+indicate options for the second message.
+.TP
+.B \-kK \fIkey\fR
+Specify the secret key used to encrypt and hide the message in the
+provided data.
+.TP
+.B \-dD \fIdatafile\fR
+Specify the filename containing a message to be hidden in the data.
+.TP
+.B \-sS \fIseed\fR
+Specify the initial seed the iterator object uses for selecting bits
+in the redundant data. If no upper limit is specified, the iterator
+will use this seed without searching for a more optimal embedding.
+.TP
+.B \-iI \fIlimit\fR
+Specify the upper limit for finding an optimal iterator seed. The
+maximum value for the limit is 65536.
+.TP
+.B \-eE
+Use error correction for data encoding and decoding.
+.PP
+Other options that apply to the general execution of
+.IR outguess :
+.TP
+.B \-r
+Retrieve a message from a data object. If this option is not
+specified,
+.I outguess
+will embed messages.
+.TP
+.B \-x \fImaxkeys\fR
+If the second key does not create an iterator object
+that is successful in embedding the data, the program
+will derive up to specified number of new keys.
+.TP
+.B \-p \fIparam\fR
+Passes a string as parameter to the destination data handler. For the
+JPEG image format, this is the compression quality, it can take values
+between 75 and 100. The higher the quality the more bits to hide a
+message in the data are available.
+.TP
+.B \-m
+Mark pixels that have been modified.
+.TP
+.B \-t
+Collect statistics about redundant bit usage. Repeated use increases
+output level.
+.PP
+For embedding messages, you need to specify a source and a destination
+filename.
+.I Outguess
+determines the data format by the filename extension. If no filenames
+are specified
+.I outguess
+operates as a filter and assumes the PPM data format.
+.SH EXAMPLES
+.LP
+To embed the message
+.I hidden.txt
+into the
+.I monkey.jpg
+image:
+.IP
+.B outguess \-k
+"my secret pass phrase"
+.B \-d
+.I hidden.txt monkey.jpg out.jpg
+.PP
+And in the other direction:
+.IP
+.B outguess \-k
+"my secret pass phrase"
+.B \-r
+.I out.jpg message.txt
+.PP
+will retrieve the hidden message from the image.
+.PP
+If you want to embed a second message, use:
+.IP
+.B outguess \-k
+"secret1"
+.B \-d
+.I hide1.txt
+.B \-E \-K
+"secret2"
+.B \-D
+.I hide2.txt monkey.jpg out.jpg
+.PP
+.I Outguess
+will first embed
+.I hide1.txt
+and then
+.I hide2.txt
+on top of it, using error correcting codes. The second message
+.I hide2.txt
+can be retrieved with
+.IP
+.B outguess \-k
+"secret2"
+.B \-e \-r
+.I out.jpg message.txt
+.LP
+.SH "SEE ALSO"
+cjpeg(1), djpeg(1), pnm(5), stirmark(1)
+.SH AUTHOR
+Niels Provos <provos@citi.umich.edu>
+.SH BUGS
+.LP
+Not all the redundant data available in the JPEG encoding is used,
+this is due to a problem when reconstructing the Huffman coefficients.
diff --git a/security/outguess/pkg-comment b/security/outguess/pkg-comment
new file mode 100644
index 000000000000..8326bdc22e7f
--- /dev/null
+++ b/security/outguess/pkg-comment
@@ -0,0 +1 @@
+Steganographic tool
diff --git a/security/outguess/pkg-descr b/security/outguess/pkg-descr
new file mode 100644
index 000000000000..10a8b3e4c837
--- /dev/null
+++ b/security/outguess/pkg-descr
@@ -0,0 +1,13 @@
+from the README:
+
+OutGuess is a universal steganographic tool that allows the insertion
+of hidden information into the redundant bits of data sources. The
+nature of the data source is irrelevant to the core of OutGuess. The
+program relies on data specific handlers that will extract redundant
+bits and write them back after modification. In this version the PNM
+and JPEG image formats are supported.
+
+WWW: http://www.outguess.org/
+
+Trevor Johnson
+trevor@FreeBSD.org