1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-11-22 08:08:10 +00:00

Extended support from 14 to 255 functions calls per rule on GPU

This commit is contained in:
jsteube 2016-01-03 19:49:47 +01:00
parent 245909dde2
commit 0428514f61
6 changed files with 33 additions and 32 deletions

View File

@ -1009,7 +1009,7 @@ typedef struct
typedef struct
{
u32 key;
u32 key;
u64 val;
} hcstat_table_t;
@ -1023,19 +1023,10 @@ typedef struct
typedef struct
{
u32 cmds[15];
u32 cmds[0x100];
} gpu_rule_t;
/*
typedef struct
{
u32 plain_buf[16];
u32 plailen;
} plain_t;
*/
typedef struct
{
u32 gidvid;

View File

@ -4,30 +4,39 @@ Type.: Feature
File.: Kernel
Desc.: Dropped CUDA support and switched to OpenCL for NVidia
Type.: Feature
File.: Kernel
Desc.: Extended support from 14 to 255 functions calls per rule on GPU
Type.: Feature
File.: Host
Desc.: Added a Makefile target for native compilation
Issue: 2
Type.: Feature
File.: Host
Desc.: Switched to Khronos OSS OpenCL reference implementation for building
Issue: 2
Type.: Feature
File.: Host
Desc.: No longer need NVidia-CUDA-SDK, AMD-APP-SDK and NVidia-ForceWare driver in depencies
Issue: 2
Type.: Feature
File.: Host
Desc.: Added option --gpu-platform to select a single OpenCL platform in case multiple OpenCL platforms are present
Issue: 2
Type.: Feature
File.: Host
Desc.: Implemented a new feature that allows to quit at next restore point update (and disable it)
Issue: 10
Type.: Feature
File.: Host
Desc.: Added a Makefile target for native compilation
Type.: Feature
File.: Host
Desc.: Switched to Khronos OSS OpenCL reference implementation for building
Type.: Feature
File.: Host
Desc.: No longer need NVidia-CUDA-SDK, AMD-APP-SDK and NVidia-ForceWare driver in depencies
Type.: Feature
File.: Host
Desc.: Added option --gpu-platform to select a single OpenCL platform in case multiple OpenCL platforms are present
Type.: Feature
File.: Host
Desc.: Moved rules_optimize to hashcat-utils
Issue: 2
Type.: Bug
File.: Host

View File

@ -669,7 +669,7 @@ typedef struct
typedef struct
{
uint cmds[15];
uint cmds[0x100];
} gpu_rule_t;
@ -803,7 +803,7 @@ typedef struct
} wordr_t;
#define RULES_MAX 16
#define RULES_MAX 256
#define PW_MIN 0
#define PW_MAX 54
#define PW_MAX1 (PW_MAX + 1)

View File

@ -18857,7 +18857,7 @@ char conv_itoc (char c)
#define SET_NAME(rule,val) (rule)->cmds[rule_cnt] = ((val) & 0xff) << 0
#define SET_P0(rule,val) INCR_POS; (rule)->cmds[rule_cnt] |= ((val) & 0xff) << 8
#define SET_P1(rule,val) INCR_POS; (rule)->cmds[rule_cnt] |= ((val) & 0xff) << 16
#define MAX_GPU_RULES 14
#define MAX_GPU_RULES 255
#define GET_NAME(rule) rule_cmd = (((rule)->cmds[rule_cnt] >> 0) & 0xff)
#define GET_P0(rule) INCR_POS; rule_buf[rule_pos] = (((rule)->cmds[rule_cnt] >> 8) & 0xff)
#define GET_P1(rule) INCR_POS; rule_buf[rule_pos] = (((rule)->cmds[rule_cnt] >> 16) & 0xff)

View File

@ -15,7 +15,7 @@ extern int max_len;
#define SET_NAME(rule,val) (rule)->cmds[rule_cnt] = ((val) & 0xff) << 0
#define SET_P0(rule,val) INCR_POS; (rule)->cmds[rule_cnt] |= ((val) & 0xff) << 8
#define SET_P1(rule,val) INCR_POS; (rule)->cmds[rule_cnt] |= ((val) & 0xff) << 16
#define MAX_GPU_RULES 14
#define MAX_GPU_RULES 255
#define GET_NAME(rule) rule_cmd = (((rule)->cmds[rule_cnt] >> 0) & 0xff)
#define GET_P0(rule) INCR_POS; rule_buf[rule_pos] = (((rule)->cmds[rule_cnt] >> 8) & 0xff)
#define GET_P1(rule) INCR_POS; rule_buf[rule_pos] = (((rule)->cmds[rule_cnt] >> 16) & 0xff)

View File

@ -11,6 +11,7 @@
#include <inttypes.h>
#include <string.h>
#include "rp_cpu.h"
#define BLOCK_SIZE 64
#define RULE_RC_REJECT_ERROR -2
#define RP_RULE_BUFSIZ 0x100
@ -20,7 +21,7 @@ typedef unsigned int uint;
typedef struct
{
uint cmds[15];
uint cmds[256];
} gpu_rule_t;