Prepare to rename project into hashcat

This release markes the fusion of "hashcat" and "oclHashcat" into "hashcat".
It combines all features of all hashcat projects in one project.
pull/332/head
jsteube 8 years ago
parent 768ffbdad8
commit e47030ed7d

3
.gitignore vendored

@ -1,7 +1,7 @@
*.exe
*.bin
*.app
oclHashcat
hashcat
*.restore
*.dictstat
*.pot
@ -11,3 +11,4 @@ deps/**
kernels/**
lib/*.a
obj/*.o
include/CL

@ -14,7 +14,7 @@
/* */
/* -------------------------------------------------------------------- */
/* */
/* Cleaned and optimized for GPU use with oclHashcat by Jens Steube */
/* Cleaned and optimized for GPU use with hashcat by Jens Steube */
/* 15 terms */

@ -17,7 +17,7 @@
/* */
/* -------------------------------------------------------------------- */
/* */
/* Cleaned and optimized for GPU use with oclHashcat by Jens Steube */
/* Cleaned and optimized for GPU use with hashcat by Jens Steube */
#define extract_byte(x,n) (((x) >> (8 * (n))) & 0xff)

@ -1176,7 +1176,7 @@ void memcat8 (u32 block0[4], u32 block1[4], u32 block2[4], u32 block3[4], const
#define WORDSZ384 128
#define WORDSZ512 128
#define PWMAXSZ 32 // oclHashcat password length limit
#define PWMAXSZ 32 // hashcat password length limit
#define BLMAXSZ BLSZ512
#define WORDMAXSZ WORDSZ512

@ -1,14 +1,16 @@
## *oclHashcat* ##
## *hashcat* ##
**oclHashcat** is the world's fastest and most advanced GPGPU-based password recovery utility, supporting five unique modes of attack for over 170 highly-optimized hashing algorithms. oclHashcat currently supports AMD (OpenCL) and Nvidia (CUDA) graphics processors on GNU/Linux and Windows 7/8/10, and has facilities to help enable distributed password cracking.
**hashcat** is the world's fastest and most advanced password recovery utility, supporting five unique modes of attack for over 180 highly-optimized hashing algorithms. hashcat currently supports CPU's, GPU's other hardware-accelerators on Linux, Windows and OSX, and has facilities to help enable distributed password cracking.
** THE VERSION 3.00 IS CURRENTLY STILL IN BETA **
### License ###
**oclHashcat** is licensed under the MIT license. Refer to [docs/license.txt](docs/license.txt) for more information.
**hashcat** is licensed under the MIT license. Refer to [docs/license.txt](docs/license.txt) for more information.
### Installation ###
Download the [latest release](https://hashcat.net/oclhashcat/) and unpack it in the desired location. Please remember to use `7z x` when unpacking the archive from the command line to ensure full file paths remain intact.
Download the [latest release](https://hashcat.net/hashcat/) and unpack it in the desired location. Please remember to use `7z x` when unpacking the archive from the command line to ensure full file paths remain intact.
### Usage/Help ###
@ -16,7 +18,7 @@ Please refer to the [Hashcat Wiki](https://hashcat.net/wiki/) and the output of
### Building ###
Refer to [docs/BUILD.md](docs/BUILD.md) for instructions on how to build **oclHashcat** from source.
Refer to [docs/BUILD.md](docs/BUILD.md) for instructions on how to build **hashcat** from source.
### Contributing ###
@ -41,8 +43,8 @@ Your pull request should fully describe the functionality you are adding/removin
Solve only one problem in each pull request. If you're fixing a bug and adding a new feature, you need to make two separate pull requests. If you're fixing three bugs, you need to make three separate pull requests. If you're adding four new features, you need to make four separate pull requests. So on, and so forth.
If your patch fixes a bug, please be sure there is an [issue](https://github.com/hashcat/oclHashcat/issues) open for the bug before submitting a pull request. If your patch aims to improve performance or optimizes an algorithm, be sure to quantify your optimizations and document the trade-offs, and back up your claims with benchmarks and metrics.
If your patch fixes a bug, please be sure there is an [issue](https://github.com/hashcat/hashcat/issues) open for the bug before submitting a pull request. If your patch aims to improve performance or optimizes an algorithm, be sure to quantify your optimizations and document the trade-offs, and back up your claims with benchmarks and metrics.
In order to maintain the quality and integrity of the **oclHashcat** source tree, all pull requests must be reviewed and signed off by at least two [board members](https://github.com/orgs/hashcat/people) before being merged. The [project lead](https://github.com/jsteube) has the ultimate authority in deciding whether to accept or reject a pull request. Do not be discouraged if your pull request is rejected!
In order to maintain the quality and integrity of the **hashcat** source tree, all pull requests must be reviewed and signed off by at least two [board members](https://github.com/orgs/hashcat/people) before being merged. The [project lead](https://github.com/jsteube) has the ultimate authority in deciding whether to accept or reject a pull request. Do not be discouraged if your pull request is rejected!
### Happy Cracking!

@ -1,4 +1,4 @@
oclHashcat build documentation
hashcat build documentation
=
# Revision:
* 1.3
@ -8,12 +8,12 @@ oclHashcat build documentation
* Christoph Heuwieser <<dropdead@hashcat.net>>
* magnum <<john.magnum@hushmail.com>>
# Building oclHashcat for Linux and OSX
# Building hashcat for Linux and OSX
Get a copy of the **oclHashcat** repository
Get a copy of the **hashcat** repository
```sh
$ git clone https://github.com/hashcat/oclHashcat.git
$ git clone https://github.com/hashcat/hashcat.git
```
Run "make"
@ -22,7 +22,7 @@ Run "make"
$ make
```
# Install oclHashcat for Linux
# Install hashcat for Linux
The install target is linux FHS compatible and can be used like this:
@ -32,12 +32,12 @@ $ make install
If you install it, cached kernels, session files, restore- and pot-files etc. will go to $HOME/.hashcat/
# Building oclHashcat for Windows
# Building hashcat for Windows
Get a copy of the **oclHashcat** repository
Get a copy of the **hashcat** repository
```sh
$ git clone https://github.com/hashcat/oclHashcat.git
$ git clone https://github.com/hashcat/hashcat.git
```
Basically all you need is the OpenCL Headers.
@ -53,4 +53,4 @@ $ git clone https://github.com/KhronosGroup/OpenCL-Headers deps/OpenCL-Headers/C
$ make win32 win64
```
=
Enjoy your fresh **oclHashcat** binaries ;)
Enjoy your fresh **hashcat** binaries ;)

@ -3,7 +3,7 @@
This release markes the fusion of "hashcat" and "oclHashcat" into "hashcat".
It combines all features of all hashcat projects in one project.
** NOTE to beta users: that's what's planed for release **
** THE VERSION 3.00 IS CURRENTLY STILL IN BETA **
##
## Features

@ -1,5 +1,7 @@
oclHashcat v2.10
================
hashcat v3.00
=============
** THE VERSION 3.00 IS CURRENTLY STILL IN BETA **
AMD users require AMD drivers 14.9 or later (recommended 15.12 or later)
Intel users require Intel OpenCL Runtime 14.2 or later (recommended 15.1 or later)
@ -10,11 +12,11 @@ NVidia users require NVidia drivers 346.59 or later (recommended 361.x or later)
##
- World's fastest password cracker
- World's first and only GPGPU-based rule engine
- World's first and only in-kernel rule engine
- Free
- Open-Source (MIT License)
- Multi-OS (Linux, Windows and OSX)
- Multi-Platform (CPU, GPU, FPGA, etc., everything that comes with an OpenCL runtime)
- Multi-Platform (CPU, GPU, DSP, FPGA, etc., everything that comes with an OpenCL runtime)
- Multi-Hash (Cracking multiple hashes at the same time)
- Multi-Devices (Utilizing multiple devices in same system)
- Multi-Device-Types (Utilizing mixed device types in same system)
@ -28,7 +30,7 @@ NVidia users require NVidia drivers 346.59 or later (recommended 361.x or later)
- Supports automatic keyspace ordering markov-chains
- Built-in benchmarking system
- Integrated thermal watchdog
- 150+ Hash-types implemented with performance in mind
- 160+ Hash-types implemented with performance in mind
##
## Hash-Types
@ -222,3 +224,15 @@ NVidia users require NVidia drivers 346.59 or later (recommended 361.x or later)
- Mesa/Clover
- NVidia ForceWare
- pocl
##
## Supported OpenCL device types
##
- GPU
- CPU
- APU
- DSP
- FPGA
- Coprocessor

@ -42,7 +42,7 @@
#define RULE_OP_REJECT_CONTAINS '%' // reject plains that contain char X less than N times
#define RULE_OP_REJECT_MEMORY 'Q' // reject plains that match the plain saved (see M), i.e. if unchanged
/* hashcat only */
/* With -j or -k only */
#define RULE_OP_MANGLE_SWITCH_FIRST 'k' // switches the first 2 chars. ex: hello -> ehllo
#define RULE_OP_MANGLE_SWITCH_LAST 'K' // switches the last 2 chars. ex: hello -> helol
@ -56,3 +56,4 @@
#define RULE_OP_MANGLE_DUPEBLOCK_FIRST 'y' // duplicates first n characters
#define RULE_OP_MANGLE_DUPEBLOCK_LAST 'Y' // duplicates last n characters
#define RULE_OP_MANGLE_TITLE 'E' // lowercase everything then upper case the first letter and every letter after a space

File diff suppressed because it is too large Load Diff

@ -1,2 +1,2 @@
oclHashcat64.exe -t 32 -a 7 example0.hash ?a?a?a?a example.dict
pause
hashcat64.exe -t 32 -a 7 example0.hash ?a?a?a?a example.dict
pause

File diff suppressed because it is too large Load Diff

@ -1 +1 @@
./oclHashcat -t 32 -a 7 example0.hash ?a?a?a?a example.dict
./hashcat -t 32 -a 7 example0.hash ?a?a?a?a example.dict

@ -1,2 +1,2 @@
type example.dict | oclHashcat64.exe -m 400 example400.hash
pause
type example.dict | hashcat64.exe -m 400 example400.hash
pause

@ -1 +1 @@
$H$9y5boZ2wsUlgl2tI6b5PrRoADzYfXD1
$H$9y5boZ2wsUlgl2tI6b5PrRoADzYfXD1

@ -1 +1 @@
cat example.dict | ./oclHashcat -m 400 example400.hash
cat example.dict | ./hashcat -m 400 example400.hash

@ -1,2 +1,2 @@
oclHashcat64.exe -m 500 example500.hash example.dict
pause
hashcat64.exe -m 500 example500.hash example.dict
pause

@ -1 +1 @@
$1$uOM6WNc4$r3ZGeSB11q6UUSILqek3J1
$1$uOM6WNc4$r3ZGeSB11q6UUSILqek3J1

@ -1 +1 @@
./oclHashcat -m 500 example500.hash example.dict
./hashcat -m 500 example500.hash example.dict

@ -4,19 +4,19 @@
## License.....: MIT
##
OCLHASHCAT_ROOT="."
HASHCAT_ROOT="."
# helper functions
_oclHashcat_get_permutations ()
_hashcat_get_permutations ()
{
local num_devices=${1}
oclHashcat_devices_permutation=""
hashcat_devices_permutation=""
# Formula: Sum (k=1...num_devices) (num_devices! / (k! * (num_devices - k)!))
# or ofc (2 ^ num_devices) - 1
if [ "${num_devices}" -gt 0 ]; then
oclHashcat_devices_permutation=$(seq 1 $num_devices)
hashcat_devices_permutation=$(seq 1 $num_devices)
local k
@ -24,7 +24,7 @@ _oclHashcat_get_permutations ()
if [ "${k}" -eq ${num_devices} ];then
oclHashcat_devices_permutation="${oclHashcat_devices_permutation} $(seq 1 $num_devices | tr '\n' ',' | sed 's/, *$//')"
hashcat_devices_permutation="${hashcat_devices_permutation} $(seq 1 $num_devices | tr '\n' ',' | sed 's/, *$//')"
else
@ -65,7 +65,7 @@ _oclHashcat_get_permutations ()
if [ "${pos_changed}" -eq 0 ]; then
oclHashcat_devices_permutation="${oclHashcat_devices_permutation} ${out_str}"
hashcat_devices_permutation="${hashcat_devices_permutation} ${out_str}"
else
@ -127,7 +127,7 @@ _oclHashcat_get_permutations ()
fi
}
_oclHashcat_opencl_devices ()
_hashcat_opencl_devices ()
{
local num_devices=0
@ -144,7 +144,7 @@ _oclHashcat_opencl_devices ()
return ${num_devices}
}
_oclHashcat_cpu_devices ()
_hashcat_cpu_devices ()
{
local num_devices=0
@ -157,7 +157,7 @@ _oclHashcat_cpu_devices ()
return ${num_devices}
}
_oclHashcat_contains ()
_hashcat_contains ()
{
local haystack=${1}
local needle="${2}"
@ -173,7 +173,7 @@ _oclHashcat_contains ()
return 1
}
_oclHashcat ()
_hashcat ()
{
local VERSION=2.10
@ -246,12 +246,12 @@ _oclHashcat ()
;;
-d|--opencl-devices)
_oclHashcat_opencl_devices
_hashcat_opencl_devices
local num_devices=${?}
_oclHashcat_get_permutations ${num_devices}
_hashcat_get_permutations ${num_devices}
COMPREPLY=($(compgen -W "${oclHashcat_devices_permutation}" -- ${cur}))
COMPREPLY=($(compgen -W "${hashcat_devices_permutation}" -- ${cur}))
return 0
;;
@ -294,12 +294,12 @@ _oclHashcat ()
;;
--cpu-affinity)
_oclHashcat_cpu_devices
_hashcat_cpu_devices
local num_devices=${?}
_oclHashcat_get_permutations ${num_devices}
_hashcat_get_permutations ${num_devices}
COMPREPLY=($(compgen -W "${oclHashcat_devices_permutation}" -- ${cur}))
COMPREPLY=($(compgen -W "${hashcat_devices_permutation}" -- ${cur}))
return 0
;;
@ -422,12 +422,12 @@ _oclHashcat ()
;;
-d*)
_oclHashcat_opencl_devices
_hashcat_opencl_devices
local num_devices=${?}
_oclHashcat_get_permutations ${num_devices}
_hashcat_get_permutations ${num_devices}
local opencl_devices_var="$(echo " "${oclHashcat_devices_permutation} | sed 's/ / -d/g')"
local opencl_devices_var="$(echo " "${hashcat_devices_permutation} | sed 's/ / -d/g')"
COMPREPLY=($(compgen -W "${opencl_devices_var}" -- ${cur}))
return 0
;;
@ -450,7 +450,7 @@ _oclHashcat ()
local h=1
local no_opts=0
local attack_mode=0 # also default of oclHashcat
local attack_mode=0 # also default of hashcat
local has_charset_1=0
local has_charset_2=0
local has_charset_3=0
@ -504,13 +504,13 @@ _oclHashcat ()
fi
if _oclHashcat_contains "${OPTIONS}" "${COMP_WORDS[h]}"; then
if _hashcat_contains "${OPTIONS}" "${COMP_WORDS[h]}"; then
h=$((h + 2))
else
if ! _oclHashcat_contains "${LONG_OPTS}${SHORT_OPTS}" "${COMP_WORDS[h]}"; then
if ! _hashcat_contains "${LONG_OPTS}${SHORT_OPTS}" "${COMP_WORDS[h]}"; then
local variants="-m -a -w -n -u -o -r -d"
local skip=0
local v
@ -759,4 +759,4 @@ _oclHashcat ()
esac
}
complete -F _oclHashcat -o filenames "${OCLHASHCAT_ROOT}"/oclHashcat64.bin "${OCLHASHCAT_ROOT}"/oclHashcat32.bin "${OCLHASHCAT_ROOT}"/oclHashcat oclHashcat
complete -F _hashcat -o filenames "${HASHCAT_ROOT}"/hashcat64.bin "${HASHCAT_ROOT}"/hashcat32.bin "${HASHCAT_ROOT}"/hashcat hashcat

@ -1,4 +1,4 @@
run:
source ./install
OR
source ./oclHashcat.sh # not working permanently (i.e. not working after a reboot)
source ./hashcat.sh # not working permanently (i.e. not working after a reboot)

@ -1,11 +1,11 @@
#!/bin/bash
# Programmable bash completion for oclHashcat
# Programmable bash completion for hashcat
# this script was tested under ubuntu, please verify if on your
# distro /etc/bash_completion.d/ exists (otherwise it won't work)
COMPGENSCRIPT=/etc/bash_completion
COMPGENFOLDER=${COMPGENSCRIPT}.d
COMPGENTARGET=${COMPGENFOLDER}/oclHashcat.sh
COMPGENTARGET=${COMPGENFOLDER}/hashcat.sh
BASHRC=~/.bashrc
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
@ -131,15 +131,15 @@ fi
if [ -d "${COMPGENFOLDER}" ]; then
# remove the old version of oclHashcat64.sh (was renamed to just oclHashcat.sh)
# remove the old version of hashcat64.sh (was renamed to just hashcat.sh)
rm -f "${COMPGENTARGET}"/oclHashcat64.sh
rm -f "${COMPGENTARGET}"/hashcat64.sh
# copy the script to target folder
cp ${ROOT}/oclHashcat.sh "${COMPGENTARGET}"
cp ${ROOT}/hashcat.sh "${COMPGENTARGET}"
# adjust paths to the main binaries of oclHashcat
# adjust paths to the main binaries of hashcat
sed -ri "s!^(ROOT=).*!\1\"${ROOT_PARENT}\"!" "${COMPGENTARGET}"
@ -162,7 +162,7 @@ EOF
if source_completion; then
echo "Bash completion scripts for oclHashcat were successfully installed, but since you didn't 'source' this file, you need to run:"
echo "Bash completion scripts for hashcat were successfully installed, but since you didn't 'source' this file, you need to run:"
echo "source ${COMPGENTARGET} # or source ${BASHRC}"
echo
echo "in order to be able to use the tab completion within the current shell."

@ -15,7 +15,7 @@
# - A line can not start with a space or a tab
# - Comment lines are allowed, use a # as first character
# - Invalid lines are ignored
# - The Device-Name is the OpenCL Device-Name. It's shown on oclHashcat startup.
# - The Device-Name is the OpenCL Device-Name. It's shown on hashcat startup.
# - If the device contains spaces, replace all spaces with _ character.
# - The Device-Name can be assigned an alias. This is useful if many devices share the same chip
# - There's also a hard-wired Device-Name which matches all device types called:

@ -162,7 +162,7 @@ typedef struct ADLODPerformanceLevel
/*
* Attention: we had to change this struct due to an out-of-bound problem mentioned here:
* https://github.com/hashcat/oclHashcat/issues/244
* https://github.com/hashcat/hashcat/issues/244
* the change: ADLODPerformanceLevel aLevels [1] -> ADLODPerformanceLevel aLevels [2]
*/
@ -229,7 +229,7 @@ typedef struct ADLOD6PerformanceLevel
/*
* Attention: we had to change this struct due to an out-of-bound problem mentioned here:
* https://github.com/hashcat/oclHashcat/issues/244
* https://github.com/hashcat/hashcat/issues/244
* the change: ADLOD6PerformanceLevel aLevels [1] -> ADLOD6PerformanceLevel aLevels [2]
*/

@ -161,7 +161,7 @@ static inline int CPU_ISSET (int num, cpu_set_t *cs) { return (cs->count & (1 <
#define SP_ROOT_CNT (SP_PW_MAX * CHARSIZ)
#define SP_MARKOV_CNT (SP_PW_MAX * CHARSIZ * CHARSIZ)
#define TUNING_DB_FILE "hashcat_tuning.hctab"
#define TUNING_DB_FILE "hashcat.hctune"
#define INDUCT_DIR "induct"
#define OUTFILES_DIR "outfiles"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -6,7 +6,7 @@
## License.....: MIT
##
PROG_NAME := oclHashcat
PROG_NAME := hashcat
##
## Detect Operating System
@ -43,7 +43,8 @@ SHARED_FOLDER ?= $(PREFIX)/share/$(PROG_NAME)
DOCUMENT_FOLDER ?= $(PREFIX)/share/doc/$(PROG_NAME)
##
## Dependencies, cross compilation only
## Dependencies
## You may ignore them if you have your own headers somewhere
##
OPENCL_HEADERS_KHRONOS := deps/OpenCL-Headers
@ -86,7 +87,7 @@ VERSION_SUM := $(shell git describe --tags --dirty=+ | cut -d- -f3)
## Compiler flags
##
CFLAGS := -pipe -W -Wall -std=c99 -Iinclude/
CFLAGS := -pipe -W -Wall -std=c99 -Iinclude/ -I$(OPENCL_HEADERS_KHRONOS)/
ifndef DEBUG
CFLAGS += -O2
@ -155,7 +156,7 @@ CFLAGS_CROSS_LINUX += -s
endif
CFLAGS_CROSS_LINUX += $(CFLAGS)
CFLAGS_CROSS_LINUX += -I$(OPENCL_HEADERS_KHRONOS)/
CFLAGS_CROSS_LINUX +=
ifneq (,$(filter 1,$(WITH_ADL) $(WITH_NVML)))
CFLAGS_CROSS_LINUX += -DHAVE_HWMON
@ -176,7 +177,6 @@ CFLAGS_CROSS_WIN += -s
endif
CFLAGS_CROSS_WIN += $(filter-out -fsanitize=address,$(CFLAGS))
CFLAGS_CROSS_WIN += -I$(OPENCL_HEADERS_KHRONOS)/
ifneq (,$(filter 1,$(WITH_ADL) $(WITH_NVAPI)))
CFLAGS_CROSS_WIN += -DHAVE_HWMON
@ -240,22 +240,22 @@ endif
## Targets: Global
##
native: oclHashcat
native: hashcat
binaries: linux32 linux64 win32 win64
clean:
$(RM) -f obj/*.o *.bin *.exe *.app *.restore *.out *.pot *.dictstat *.log oclHashcat core
$(RM) -f obj/*.o *.bin *.exe *.app *.restore *.out *.pot *.dictstat *.log hashcat core
$(RM) -rf *.induct
$(RM) -rf *.outfiles
$(RM) -rf *.dSYM
$(RM) -rf kernels
linux32: oclHashcat32.bin
linux64: oclHashcat64.bin
linux32: hashcat32.bin
linux64: hashcat64.bin
win32: oclHashcat32.exe
win64: oclHashcat64.exe
win32: hashcat32.exe
win64: hashcat64.exe
##
## Targets: Linux install
@ -285,7 +285,7 @@ install: native
$(INSTALL) -m 755 -d $(SHARED_FOLDER)/rules
$(CP) -a rules/* $(SHARED_FOLDER)/rules/
$(INSTALL) -m 644 hashcat.hcstat $(SHARED_FOLDER)/
$(INSTALL) -m 644 hashcat_tuning.hctab $(SHARED_FOLDER)/
$(INSTALL) -m 644 hashcat.hctune $(SHARED_FOLDER)/
$(INSTALL) -m 755 $(BINARY_NATIVE) $(INSTALL_FOLDER)/
uninstall:
@ -294,17 +294,17 @@ uninstall:
$(RM) -rf $(DOCUMENT_FOLDER)
##
## native compiled oclHashcat
## native compiled hashcat
##
obj/%.NATIVE.o: src/%.c
$(CC_NATIVE) $(CFLAGS_NATIVE) -c -o $@ $<
oclHashcat: src/oclHashcat.c $(NATIVE_OBJS)
hashcat: src/hashcat.c $(NATIVE_OBJS)
$(CC_NATIVE) $(CFLAGS_NATIVE) -o $(BINARY_NATIVE) $^ $(LFLAGS_NATIVE) -DCOMPTIME=$(COMPTIME) -DVERSION_TAG=\"$(VERSION_TAG)\" -DVERSION_SUM=\"$(VERSION_SUM)\" -DINSTALL_FOLDER=\"$(INSTALL_FOLDER)\" -DSHARED_FOLDER=\"$(SHARED_FOLDER)\" -DDOCUMENT_FOLDER=\"$(DOCUMENT_FOLDER)\"
##
## cross compiled oclHashcat for binary release version
## cross compiled hashcat for binary release version
##
obj/%.LINUX.32.o: src/%.c
@ -319,14 +319,14 @@ obj/%.WIN.32.o: src/%.c
obj/%.WIN.64.o: src/%.c
$(CC_WIN_64) $(CFLAGS_CROSS_WIN) $(CFLAGS_CROSS_64) -c -o $@ $<
oclHashcat32.bin: src/oclHashcat.c $(LINUX_32_OBJS)
hashcat32.bin: src/hashcat.c $(LINUX_32_OBJS)
$(CC_LINUX_32) $(CFLAGS_CROSS_LINUX) $(CFLAGS_CROSS_32) -o $@ $^ $(LFLAGS_CROSS_LINUX) -DCOMPTIME=$(COMPTIME) -DVERSION_TAG=\"$(VERSION_TAG)\" -DVERSION_SUM=\"$(VERSION_SUM)\" -DINSTALL_FOLDER=\"$(INSTALL_FOLDER)\" -DSHARED_FOLDER=\"$(SHARED_FOLDER)\" -DDOCUMENT_FOLDER=\"$(DOCUMENT_FOLDER)\"
oclHashcat64.bin: src/oclHashcat.c $(LINUX_64_OBJS)
hashcat64.bin: src/hashcat.c $(LINUX_64_OBJS)
$(CC_LINUX_64) $(CFLAGS_CROSS_LINUX) $(CFLAGS_CROSS_64) -o $@ $^ $(LFLAGS_CROSS_LINUX) -DCOMPTIME=$(COMPTIME) -DVERSION_TAG=\"$(VERSION_TAG)\" -DVERSION_SUM=\"$(VERSION_SUM)\" -DINSTALL_FOLDER=\"$(INSTALL_FOLDER)\" -DSHARED_FOLDER=\"$(SHARED_FOLDER)\" -DDOCUMENT_FOLDER=\"$(DOCUMENT_FOLDER)\"
oclHashcat32.exe: src/oclHashcat.c $(WIN_32_OBJS)
hashcat32.exe: src/hashcat.c $(WIN_32_OBJS)
$(CC_WIN_32) $(CFLAGS_CROSS_WIN) $(CFLAGS_CROSS_32) -o $@ $^ $(LFLAGS_CROSS_WIN) -DCOMPTIME=$(COMPTIME) -DVERSION_TAG=\"$(VERSION_TAG)\" -DVERSION_SUM=\"$(VERSION_SUM)\" -static-libgcc
oclHashcat64.exe: src/oclHashcat.c $(WIN_64_OBJS)
hashcat64.exe: src/hashcat.c $(WIN_64_OBJS)
$(CC_WIN_64) $(CFLAGS_CROSS_WIN) $(CFLAGS_CROSS_64) -o $@ $^ $(LFLAGS_CROSS_WIN) -DCOMPTIME=$(COMPTIME) -DVERSION_TAG=\"$(VERSION_TAG)\" -DVERSION_SUM=\"$(VERSION_SUM)\" -static-libgcc

@ -15,9 +15,9 @@
#include <rp_kernel_on_cpu.h>
#include <getopt.h>
const char *PROGNAME = "oclHashcat";
const uint VERSION_BIN = 210;
const uint RESTORE_MIN = 210;
const char *PROGNAME = "hashcat";
const uint VERSION_BIN = 300;
const uint RESTORE_MIN = 300;
double TARGET_MS_PROFILE[3] = { 8, 16, 96 };
@ -754,7 +754,7 @@ const char *USAGE_BIG[] =
};
/**
* oclHashcat specific functions
* hashcat specific functions
*/
static double get_avg_exec_time (hc_device_param_t *device_param, const int last_num_entries)
@ -1688,7 +1688,7 @@ static void status_benchmark ()
}
/**
* oclHashcat -only- functions
* hashcat -only- functions
*/
static void generate_source_kernel_filename (const uint attack_exec, const uint attack_kern, const uint kern_type, char *shared_dir, char *source_file)
@ -5578,7 +5578,7 @@ int main (int argc, char **argv)
if (session == NULL) session = (char *) PROGNAME;
/**
* folders, as discussed on https://github.com/hashcat/oclHashcat/issues/20
* folders, as discussed on https://github.com/hashcat/hashcat/issues/20
*/
char *exec_path = get_exec_path ();
@ -5671,7 +5671,7 @@ int main (int argc, char **argv)
return (-1);
}
// this allows the user to use --show and --left while cracking (i.e. while another instance of oclHashcat is running)
// this allows the user to use --show and --left while cracking (i.e. while another instance of hashcat is running)
if ((show == 1) || (left == 1))
{
restore_disable = 1;
@ -13061,7 +13061,7 @@ int main (int argc, char **argv)
log_info ("");
log_info ("ATTENTION! Unsupported or incorrect installed catalyst driver detected!");
log_info ("You are STRONGLY encouraged to use the official supported catalyst driver for good reasons");
log_info ("See oclHashcat's homepage for official supported catalyst drivers");
log_info ("See hashcat's homepage for official supported catalyst drivers");
#ifdef _WIN
log_info ("Also see: http://hashcat.net/wiki/doku.php?id=upgrading_amd_drivers_how_to");
#endif
@ -13971,7 +13971,7 @@ int main (int argc, char **argv)
// we don't have sm_* on vendors not NV but it doesn't matter
snprintf (build_opts, sizeof (build_opts) - 1, "-cl-std=CL1.1 -I\"%s/\" -DVENDOR_ID=%u -DCUDA_ARCH=%d -DVECT_SIZE=%u -DDEVICE_TYPE=%u -DKERN_TYPE=%u -D_unroll", shared_dir, device_param->vendor_id, (device_param->sm_major * 100) + device_param->sm_minor, device_param->vector_width, (u32) device_param->device_type, kern_type);
snprintf (build_opts, sizeof (build_opts) - 1, "-cl-nv-verbose -cl-std=CL1.1 -I\"%s/\" -DVENDOR_ID=%u -DCUDA_ARCH=%d -DVECT_SIZE=%u -DDEVICE_TYPE=%u -DKERN_TYPE=%u -D_unroll", shared_dir, device_param->vendor_id, (device_param->sm_major * 100) + device_param->sm_minor, device_param->vector_width, (u32) device_param->device_type, kern_type);
/**
* main kernel
@ -16597,7 +16597,7 @@ int main (int argc, char **argv)
log_info ("");
log_info ("ATTENTION!");
log_info (" The wordlist or mask you are using is too small.");
log_info (" Therefore, oclHashcat is unable to utilize the full parallelization power of your device(s).");
log_info (" Therefore, hashcat is unable to utilize the full parallelization power of your device(s).");
log_info (" The cracking speed will drop.");
log_info (" Workaround: https://hashcat.net/wiki/doku.php?id=frequently_asked_questions#how_to_create_more_work_for_full_speed");
log_info ("");

@ -19985,7 +19985,7 @@ void *thread_keypress (void *p)
if (ch == 0) continue;
//https://github.com/hashcat/oclHashcat/issues/302
//https://github.com/hashcat/hashcat/issues/302
//#ifdef _POSIX
//if (ch != '\n')
//#endif
@ -20081,7 +20081,7 @@ void *thread_keypress (void *p)
break;
}
//https://github.com/hashcat/oclHashcat/issues/302
//https://github.com/hashcat/hashcat/issues/302
//#ifdef _POSIX
//if (ch != '\n')
//#endif

@ -5,8 +5,8 @@
## License.....: MIT
##
export IN=$HOME/oclHashcat
export OUT=$HOME/xy/oclHashcat-2.10
export IN=$HOME/hashcat
export OUT=$HOME/xy/hashcat-3.00
rm -rf $OUT
rm -rf $OUT.7z
@ -14,35 +14,36 @@ rm -rf $OUT.7z
mkdir -p $OUT
mkdir -p $OUT/include
cp $IN/oclHashcat??.exe $OUT/
cp $IN/oclHashcat??.bin $OUT/
cp $IN/hashcat.hcstat $OUT/
cp $IN/hashcat_tuning.hctab $OUT/
cp $IN/hashcat??.exe $OUT/
cp $IN/hashcat??.bin $OUT/
cp $IN/hashcat.hcstat $OUT/
cp $IN/hashcat.hctune $OUT/
cp -r $IN/docs $OUT/
cp -r $IN/charsets $OUT/
cp -r $IN/masks $OUT/
cp -r $IN/rules $OUT/
cp -r $IN/extra $OUT/
cp $IN/example.dict $OUT/
cp $IN/example[0123456789]*.hash $OUT/
cp $IN/example[0123456789]*.cmd $OUT/
cp -r $IN/docs $OUT/
cp -r $IN/charsets $OUT/
cp -r $IN/masks $OUT/
cp -r $IN/rules $OUT/
cp -r $IN/extra $OUT/
cp $IN/example.dict $OUT/
cp $IN/example[0123456789]*.hash $OUT/
cp $IN/example[0123456789]*.cmd $OUT/
cp -r $IN/include/constants.h $OUT/include
cp -r $IN/include/kernel_functions.c $OUT/include
cp -r $IN/include/kernel_vendor.h $OUT/include
cp -r $IN/include/rp_kernel.h $OUT/include
cp -r $IN/OpenCL $OUT/
cp -r $IN/include/constants.h $OUT/include
cp -r $IN/include/kernel_functions.c $OUT/include
cp -r $IN/include/kernel_vendor.h $OUT/include
cp -r $IN/include/rp_kernel.h $OUT/include
cp -r $IN/OpenCL $OUT/
# since for the binary distribution we still use .bin, we need to rewrite the commands
# within the example*.sh files
for example in example[0123456789]*.sh; do
sed 's!./oclHashcat !./oclHashcat64.bin !' $IN/${example} > $OUT/${example}
sed 's!./hashcat !./hashcat64.bin !' $IN/${example} > $OUT/${example}
done
dos2unix $OUT/masks/*.hcmask
dos2unix $OUT/rules/*.rule
dos2unix $OUT/rules/hybrid/*.rule
dos2unix $OUT/docs/*
@ -53,28 +54,31 @@ unix2dos $OUT/rules/*.rule
unix2dos $OUT/rules/hybrid/*.rule
unix2dos $OUT/docs/*
unix2dos $OUT/example*.cmd
unix2dos $OUT/include/*
unix2dos $OUT/OpenCL/*
unix2dos $OUT/hashcat.hctune
chmod 700 $OUT
chmod 700 $OUT/rules
chmod 600 $OUT/rules/*
chmod 700 $OUT/docs
chmod 600 $OUT/docs/*
chmod 700 $OUT/charsets
chmod 700 $OUT/charsets/*
chmod 700 $OUT/masks
chmod 600 $OUT/masks/*
chmod 600 $OUT/example*
chmod 700 $OUT/example*.sh
chmod 700 $OUT/extra
chmod 700 $OUT/extra/tab_completion/*.sh
chmod 700 $OUT/extra/tab_completion/install
chmod 700 $OUT/include
chmod 600 $OUT/include/*
chmod 700 $OUT/OpenCL
chmod 600 $OUT/OpenCL/*
chmod 600 $OUT/*.exe
chmod 700 $OUT/*.bin
chmod 600 $OUT/hashcat.hcstat
chmod 600 $OUT/hashcat_tuning.hctab
chmod 755 $OUT
chmod 755 $OUT/rules
chmod 644 $OUT/rules/*
chmod 755 $OUT/docs
chmod 644 $OUT/docs/*
chmod 755 $OUT/charsets
chmod 755 $OUT/charsets/*
chmod 755 $OUT/masks
chmod 644 $OUT/masks/*
chmod 644 $OUT/example*
chmod 755 $OUT/example*.sh
chmod 755 $OUT/extra
chmod 755 $OUT/extra/tab_completion/*.sh
chmod 755 $OUT/extra/tab_completion/install
chmod 755 $OUT/include
chmod 644 $OUT/include/*
chmod 755 $OUT/OpenCL
chmod 644 $OUT/OpenCL/*
chmod 644 $OUT/*.exe
chmod 755 $OUT/*.bin
chmod 644 $OUT/hashcat.hcstat
chmod 644 $OUT/hashcat.hctune
time 7z a -t7z -m0=lzma2:d31 -mx=9 -mmt=8 -ms=on $OUT.7z $OUT

@ -41,7 +41,7 @@ use Net::DNS::RR::NSEC3;
use Convert::EBCDIC qw (ascii2ebcdic);
use Digest::SipHash qw/siphash/;
my $hashcat = "./oclHashcat";
my $hashcat = "./hashcat";
my $MAX_LEN = 55;
@ -1649,7 +1649,7 @@ sub verify
# WPA/WPA2
elsif ($mode == 2500)
{
print "ERROR: verify currently not supported for WPA/WPA2 (because of oclHashcat's output format)\n";
print "ERROR: verify currently not supported for WPA/WPA2 (because of hashcat's output format)\n";
exit (1);
}
@ -2689,7 +2689,7 @@ sub verify
}
elsif ($mode == 5600)
{
# oclHashcat outputs the user name always upper-case, we need
# hashcat outputs the user name always upper-case, we need
next unless (substr ($line, 0, $len) eq $hash_out);
my $found = 0;

@ -1578,7 +1578,7 @@ EOF
exit 1
}
BIN="oclHashcat"
BIN="hashcat"
MARKOV="enabled"
ATTACK=0
MODE=0

Loading…
Cancel
Save