--- snowdrop-0.02b.orig/debian/changelog +++ snowdrop-0.02b/debian/changelog @@ -0,0 +1,66 @@ +snowdrop (0.02b-4) unstable; urgency=low + + * Updated to libgnutls11. Closes: #264736 + (NB: still linked to libgcrypt7 as well as 11 because of libopencdk8. + versioned symbols make this work, I'll rebuild when libopencdk8 is + updated.) + * Work around temporary breakage in libgnutls-extra-config. + * Add -g to CFLAGS. + + -- Joey Hess Tue, 10 Aug 2004 14:23:34 -0300 + +snowdrop (0.02b-3) unstable; urgency=low + + * Fix man page type. Closes: #261403 + + -- Joey Hess Sun, 25 Jul 2004 18:02:15 -0400 + +snowdrop (0.02b-2) unstable; urgency=low + + * Updated to libgnutls7. + + -- Joey Hess Fri, 16 Jan 2004 12:35:42 -0500 + +snowdrop (0.02b-1) unstable; urgency=low + + * New upstream release. + * Update copyright file (openssl linking ok). + * Still lining with gnutls for now. + + -- Joey Hess Fri, 21 Nov 2003 12:33:17 -0500 + +snowdrop (0.0.20020909-5) unstable; urgency=low + + * Wrote a man page (again, first type was eaten by make clean long ago). + + -- Joey Hess Fri, 15 Nov 2002 19:37:34 -0500 + +snowdrop (0.0.20020909-4) unstable; urgency=low + + * Updates for new gnutls, which requires I call libgnutls-config as well + as libgnutls-extra-config to get all the required libs. + + -- Joey Hess Fri, 15 Nov 2002 13:53:02 -0500 + +snowdrop (0.0.20020909-3) unstable; urgency=low + + * Use libgnutls-extra-config. + + -- Joey Hess Fri, 15 Nov 2002 13:42:20 -0500 + +snowdrop (0.0.20020909-2) unstable; urgency=low + + * Explicitly link in -lopencdk. Closes: #161256 + + -- Joey Hess Thu, 19 Sep 2002 20:59:43 -0400 + +snowdrop (0.0.20020909-1) unstable; urgency=low + + * First release. + * Fake version number as there is none upstream. + * Use gnutls instead of openssl since this is GPL'd. + * Add DESTDIR support to Makefile. + * Wrote a man page, but had it deleted by upstream's Makefile. Too annoyed + to do that again right now. + + -- Joey Hess Thu, 12 Sep 2002 13:54:40 -0400 --- snowdrop-0.02b.orig/debian/control +++ snowdrop-0.02b/debian/control @@ -0,0 +1,24 @@ +Source: snowdrop +Section: utils +Priority: optional +Maintainer: Joey Hess +Build-Depends: libgnutls11-dev | libgnutls-dev, debhelper (>= 4) +Standards-Version: 3.5.7.1 + +Package: snowdrop +Architecture: any +Depends: ${shlibs:Depends} +Description: plain text watermarking and watermark recovery + Snowdrop provides reliable, difficult to remove watermarking of + text documents (internal memos, draft research papers, advisories and other + writing) and C sources (limited distribution software, licensed software, + or freely available code) so that: + (1) leaks can be identified if the data goes public + (2) original source can be determined and demonstrated if part of the + document is claimed by somebody else, copied without permission, etc + Snowdrop uses redundant steganography using four different logical + channels, and should be proof to many modifications, including reformatting, + spell checking and so on. + . + Warning: Snowdrop is currently in beta, and may produce bad or corrupted + results, especially when run on C source code. --- snowdrop-0.02b.orig/debian/compat +++ snowdrop-0.02b/debian/compat @@ -0,0 +1 @@ +4 --- snowdrop-0.02b.orig/debian/copyright +++ snowdrop-0.02b/debian/copyright @@ -0,0 +1,20 @@ +This is a Debian prepackaged version of snowdrop. + +This package was put together by Joey Hess , using +sources from: + http://lcamtuf.coredump.cx/ + +The following copyright applies to this package: + + Copyright (C) 2002 by Michal Zalewski + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + As a special exception, this program may be linked with the + OpenSSL library, despite that library's more restrictive license. + +On Debian systems, the complete text of the GPL is in the file +/usr/share/common-licenses/GPL --- snowdrop-0.02b.orig/debian/rules +++ snowdrop-0.02b/debian/rules @@ -0,0 +1,46 @@ +#!/usr/bin/make -f + +build: build-stamp +build-stamp: + dh_testdir + $(MAKE) + # make install has a bad target + touch modules snowdrop + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp + -$(MAKE) clean + dh_clean modules snowdrop + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs usr/bin usr/share + $(MAKE) DESTDIR=debian/`dh_listpackages` install + +binary-indep: build install + +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installdocs README TODO + dh_installman snowdrop.man + dh_link usr/share/man/man1/snowdrop.1 usr/share/man/man1/sd-eng.1 \ + usr/share/man/man1/snowdrop.1 usr/share/man/man1/sd-engf.1 \ + usr/share/man/man1/snowdrop.1 usr/share/man/man1/sd-c.1 + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install --- snowdrop-0.02b.orig/snowdrop.man +++ snowdrop-0.02b/snowdrop.man @@ -0,0 +1,69 @@ +.TH SNOWDROP 1 +.SH NAME +sd-eng, sd-engf, sd-c \- text watermarking and watermark recovery +.SH SYNOPSIS +.B sd-eng [\fI-6\fP] \fI-i\fP \fBorigfile\fP \fBnewfile\fP \fB"Recipient"\fP [\fB"Comment"\fB] +.P +.B sd-eng [\fI-6\fP] \fI-e\fP \fBorigfile\fP \fBnewfile\fP +.P +.B sd-eng [\fI-6\fP] \fI-l\fP +.SH DESCRIPTION +snowdrop is a stenographic text watermarking and watermark recovery system. +It is composed of three programs: +.TP +.B sd-eng +Watermark normal English text. +.TP +.B sd-engf +Watermark fine quality English text, yeilding higher quality output but +encoding less information. +.TP +.B sd-c +Watermark C code. +.P +The three programs operate similarly, with the same parameters and usage. The +watermark is encoded in using a number of techniques, such as whitespace +reformatting, typo insertation, word substitutions, punctuation changes, +and for C code, logic reordering, variable name mangling, etc. +.P +The watermark is a md5sum, which is retreivable from as little as +5 or 10 lines of the watermarked document. Even large changes to a medium +sized document should not obscure the watermark, as it is stored redundently +in multiple independant channels. +.P +The three usage modes are adding a watermark, checking for the presense of a +watermark, and listing the contents of your database of watermarks. Note +that to later check a watermark, you must retain a copy of the original, +un-watermarked file. +.SH OPTIONS +.TP +.B -i +Inject a watermark into a file. You must pass it the original file, the +filename to output the watwrmarked version to, information about who +you intend the watermarked file for, and an optional comment. +.TP +.B -e +Extract a watermark from a file. Needs the original file +and the new file that you suspect bears the watermark. +.TP +.B -l +Lists the contents of the watermark database. Each of the three programs +will have a different list. +.TP +.B -6 +Enable 64 bit waterarking. The default is a weak 32 bit watermark. +.SH ENVIRONMENT +.TP +.B SD_SYNONYMS +This variable can be used to point snowdrop at a customized synonyms file. +.SH FILES +.TP +.B ~/.snowdrop/database +Database of watermarked files. +.SH "SEE ALSO" +.TP +.B /usr/share/snowdrop/README +Explain snowdrop in more depth, its limitations, and how to write additional +watermarking modules for other tpyes of files. +.SH AUTHOR +Michal Zalewski --- snowdrop-0.02b.orig/Makefile +++ snowdrop-0.02b/Makefile @@ -26,9 +26,10 @@ LANG = eng engf c BINROOT = /usr/bin/ +DESTDIR = / -CFLAGS = -ggdb -O9 -fomit-frame-pointer -funroll-loops -fexpensive-optimizations \ - -ffast-math -Wall +CFLAGS = -ggdb -O2 -fomit-frame-pointer -funroll-loops -fexpensive-optimizations \ + -ffast-math -Wall -g all: modules snowdrop toinstall @@ -36,25 +37,25 @@ modules: language.h @echo ; \ echo "[*] Compiling language modules:" ; \ - test -d /usr/include/openssl && USEOPENSSL=1; \ - test -d /usr/local/include/openssl && USEOPENSSL=1; \ - test "$$USEOPENSSL" = "" || echo "[+] Using OpenSSL MD5 modules." ; \ + test -f /usr/include/gnutls/openssl.h && USEOPENSSL=1; \ + test -f /usr/local/include/gnutls/openssl.h && USEOPENSSL=1; \ + test "$$USEOPENSSL" = "" || echo "[+] Using GNU TLS MD5 modules." ; \ test "$$USEOPENSSL" = "" && echo "[+] Trying to use RSA MD5 modules." ; \ for i in $(LANG); do \ echo "[+] Building language module for '$$i'..."; \ - test "$$USEOPENSSL" = "" || ADDME="-DUSE_OPENSSL" ; \ + test "$$USEOPENSSL" = "" || ADDME="-DUSE_OPENSSL -DUSE_GNUTLS" ; \ $(CC) $$ADDME $(CFLAGS) -c lang-$$i.c -o lang-$$i.o || exit 1; \ done; \ echo "[*] Language modules compiled." snowdrop: snowdrop.c language.h @echo "[*] Compiling main code:"; \ - test -d /usr/include/openssl && USEOPENSSL=1; \ - test -d /usr/local/include/openssl && USEOPENSSL=1; \ + test -f /usr/include/gnutls/openssl.h && USEOPENSSL=1; \ + test -f /usr/local/include/gnutls/openssl.h && USEOPENSSL=1; \ for i in $(LANG); do \ echo "[+] Building 'sd-$$i'..." ; \ ADDME="-lmd5"; \ - test "$$USEOPENSSL" = "" || ADDME="-DUSE_OPENSSL -lcrypto" ; \ + test "$$USEOPENSSL" = "" || ADDME="-DUSE_OPENSSL -DUSE_GNUTLS -lgnutls-extra -lgnutls-openssl $(shell libgnutls-config --cflags --libs)" ; \ $(CC) -DVER=\"$(VER)\" $(CFLAGS) -DTARGETLANG=\"$$i\" snowdrop.c lang-$$i.o -o sd-$$i $$ADDME || exit 1; \ done; \ echo "[*] Main code compiled." @@ -68,11 +69,11 @@ rm -f sd-* *.o core core.* a.out install: modules snowdrop - @echo "[*] Installing binaries in $(BINROOT)..." - cp -f sd-* $(BINROOT) + @echo "[*] Installing binaries in $(DESTDIR)$(BINROOT)..." + cp -f sd-* $(DESTDIR)$(BINROOT) @echo "[*] Installing synonyms database..." - @mkdir /usr/share/snowdrop || true - cp synonyms /usr/share/snowdrop/ + @mkdir $(DESTDIR)/usr/share/snowdrop || true + cp synonyms $(DESTDIR)/usr/share/snowdrop/ @echo "[*] Installation complete." publish: clean --- snowdrop-0.02b.orig/lang-eng.c +++ snowdrop-0.02b/lang-eng.c @@ -24,6 +24,9 @@ #include #include +#ifdef USE_GNUTLS +#include +#else #ifdef USE_OPENSSL #include #else @@ -33,6 +36,7 @@ #define MD5_Final MD5Final #define MD5_Update MD5Update #endif /* USE_OPENSSL */ +#endif /* USE_GNUTLS */ #include "language.h" --- snowdrop-0.02b.orig/snowdrop.c +++ snowdrop-0.02b/snowdrop.c @@ -28,6 +28,9 @@ #include #include #include +#ifdef USE_GNUTLS +#include +#else #ifdef USE_OPENSSL #include #else @@ -37,6 +40,7 @@ #define MD5_Final MD5Final #define MD5_Update MD5Update #endif /* USE_OPENSSL */ +#endif /* USE_GNUTLS */ #include