From 982557f9e8670a6e70a105969975f823dac073a9 Mon Sep 17 00:00:00 2001 From: adrianp Date: Sat, 21 Oct 2006 07:47:25 +0000 Subject: Import rainbowcrack from pkgsrc-wip, packaged by David Howland RainbowCrack is a general propose implementation of Philippe Oechslin's faster time-memory trade-off technique. In short, the RainbowCrack tool is a hash cracker. A traditional brute force cracker try all possible plaintexts one by one in cracking time. It is time consuming to break complex password in this way. The idea of time-memory trade-off is to do all cracking time computation in advance and store the result in files so called "rainbow table". It does take a long time to precompute the tables. But once the one time precomputation is finished, a time-memory trade-off cracker can be hundreds of times faster than a brute force cracker, with the help of precomputed tables. --- security/rainbowcrack/DESCR | 9 +++++++++ security/rainbowcrack/Makefile | 33 +++++++++++++++++++++++++++++++ security/rainbowcrack/PLIST | 12 ++++++++++++ security/rainbowcrack/distinfo | 8 ++++++++ security/rainbowcrack/files/Makefile | 38 ++++++++++++++++++++++++++++++++++++ 5 files changed, 100 insertions(+) create mode 100644 security/rainbowcrack/DESCR create mode 100644 security/rainbowcrack/Makefile create mode 100644 security/rainbowcrack/PLIST create mode 100644 security/rainbowcrack/distinfo create mode 100644 security/rainbowcrack/files/Makefile (limited to 'security') diff --git a/security/rainbowcrack/DESCR b/security/rainbowcrack/DESCR new file mode 100644 index 00000000000..ee4e4f1f4e3 --- /dev/null +++ b/security/rainbowcrack/DESCR @@ -0,0 +1,9 @@ +RainbowCrack is a general propose implementation of Philippe Oechslin's faster +time-memory trade-off technique. In short, the RainbowCrack tool is a hash +cracker. A traditional brute force cracker try all possible plaintexts one by +one in cracking time. It is time consuming to break complex password in this +way. The idea of time-memory trade-off is to do all cracking time computation +in advance and store the result in files so called "rainbow table". It does +take a long time to precompute the tables. But once the one time precomputation +is finished, a time-memory trade-off cracker can be hundreds of times faster +than a brute force cracker, with the help of precomputed tables. diff --git a/security/rainbowcrack/Makefile b/security/rainbowcrack/Makefile new file mode 100644 index 00000000000..aebc95eec96 --- /dev/null +++ b/security/rainbowcrack/Makefile @@ -0,0 +1,33 @@ +# $NetBSD: Makefile,v 1.1.1.1 2006/10/21 07:47:25 adrianp Exp $ +# + +PKGNAME= rainbowcrack-1.2 +DISTNAME= rainbowcrack-1.2-src +CATEGORIES= security +MASTER_SITES= http://www.rainbowcrack.com/downloads/ +EXTRACT_SUFX= .zip +DISTFILES= rainbowcrack-1.2-src.zip \ + rainbowcrack-1.2-openbsd-diffs.tar.gz + +MAINTAINER= dhowland@users.sourceforge.net +HOMEPAGE= http://www.antsight.com/zsl/rainbowcrack +COMMENT= Hash cracker + +BUILD_DIRS= src +EXTRACT_OPTS_ZIP= -aqo +USE_LANGUAGES= c c++ +USE_TOOLS+= patch +MAKE_FILE= ${FILESDIR}/Makefile +USE_OLD_DES_API= yes +INSTALLATION_DIRS= bin share/doc/rainbowcrack share/rainbowcrack + +post-patch: + cd ${WRKSRC}/src && ${PATCH} < ${WRKDIR}/Public.cpp.diff + +post-install: + cd ${WRKSRC}/doc && ${INSTALL_DATA} *.htm \ + ${PREFIX}/share/doc/rainbowcrack/ + ${INSTALL_DATA} ${WRKSRC}/src/charset.txt ${PREFIX}/share/rainbowcrack + +.include "../../security/openssl/buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/security/rainbowcrack/PLIST b/security/rainbowcrack/PLIST new file mode 100644 index 00000000000..52b77c13b39 --- /dev/null +++ b/security/rainbowcrack/PLIST @@ -0,0 +1,12 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2006/10/21 07:47:25 adrianp Exp $ +bin/rcrack +bin/rtdump +bin/rtgen +bin/rtsort +share/doc/rainbowcrack/configurations.htm +share/doc/rainbowcrack/customcharset.htm +share/doc/rainbowcrack/rcrackdemo.htm +share/doc/rainbowcrack/rcracktutorial.htm +share/rainbowcrack/charset.txt +@dirrm share/rainbowcrack +@dirrm share/doc/rainbowcrack diff --git a/security/rainbowcrack/distinfo b/security/rainbowcrack/distinfo new file mode 100644 index 00000000000..8c68779505e --- /dev/null +++ b/security/rainbowcrack/distinfo @@ -0,0 +1,8 @@ +$NetBSD: distinfo,v 1.1.1.1 2006/10/21 07:47:25 adrianp Exp $ + +SHA1 (rainbowcrack-1.2-src.zip) = b077a654133cd108a3c619d66482e1796d56b0dc +RMD160 (rainbowcrack-1.2-src.zip) = 51fdcf84ebfbe8ebb9e5bc6c3d4452f9d158eb79 +Size (rainbowcrack-1.2-src.zip) = 44742 bytes +SHA1 (rainbowcrack-1.2-openbsd-diffs.tar.gz) = 3ab5c1d293e8b86e5e206ecf859525e89f357acc +RMD160 (rainbowcrack-1.2-openbsd-diffs.tar.gz) = 709556a31e99aa069062762362f48b3ec24beabb +Size (rainbowcrack-1.2-openbsd-diffs.tar.gz) = 846 bytes diff --git a/security/rainbowcrack/files/Makefile b/security/rainbowcrack/files/Makefile new file mode 100644 index 00000000000..314c3890b31 --- /dev/null +++ b/security/rainbowcrack/files/Makefile @@ -0,0 +1,38 @@ +# $NetBSD: Makefile,v 1.1.1.1 2006/10/21 07:47:25 adrianp Exp $ +# + +# System-specific configuration. + +CRYPTOLIBS?= -lcrypto + +# Package-provided data. + +PROGS= rtgen rtdump rtsort rcrack + +SRCS.rtgen= Public.cpp ChainWalkContext.cpp HashAlgorithm.cpp HashRoutine.cpp RainbowTableGenerate.cpp +LIBS.rtgen= ${CRYPTOLIBS} + +SRCS.rtdump= Public.cpp ChainWalkContext.cpp HashAlgorithm.cpp HashRoutine.cpp RainbowTableDump.cpp +LIBS.rtdump= ${CRYPTOLIBS} + +SRCS.rtsort= Public.cpp RainbowTableSort.cpp +LIBS.rtsort= # none + +SRCS.rcrack= Public.cpp ChainWalkContext.cpp HashAlgorithm.cpp HashRoutine.cpp HashSet.cpp MemoryPool.cpp ChainWalkSet.cpp CrackEngine.cpp RainbowCrack.cpp +LIBS.rcrack= ${CRYPTOLIBS} + +# +# The code that makes the above work. +# + +.for p in ${PROGS} + +all: ${p} +${p}: ${SRCS.${p}} + ${CXX} ${CPPFLAGS} ${CXXFLAGS} ${LDFLAGS} ${LIBS} ${LIBS.${p}} ${SRCS.${p}} -o ${.TARGET} + +install: install-${p} +install-${p}: + ${BSD_INSTALL_PROGRAM} ${p} ${PREFIX}/bin/${p} + +.endfor -- cgit v1.2.3