Rosen Penev
8458f07a57
Replace char[] with *char
...
The latter is more correct. The side effect is that filesize becomes smaller.
gcc clang
before
O2
756112 762120
Os
674192 680216
after
O2
748456 760728
Os
666536 674728
2017-11-13 12:12:44 -08:00
Jens Steube
5fa91ddbec
Merge pull request #1438 from Duncaen/musl
...
use fallback qsort implementation on linux systems without glibc
2017-11-13 09:06:34 +01:00
jsteube
1b312d14fd
Added hash-mode 16000 = Tripcode
2017-11-11 14:44:56 +01:00
Duncaen
24b8a838d4
use fallback qsort implementation on linux systems without glibc
2017-11-11 04:30:44 +01:00
jsteube
a5c79de43b
Update LZMA SDK files to latest (2017-08-28, 17.01 beta)
2017-11-07 12:27:27 +01:00
Jens Steube
b3b5f924dc
Merge pull request #1426 from neheb/patch-4
...
Fix clang compile under MSYS2
2017-11-05 12:00:16 +01:00
Rosen Penev
1fe16d3ee6
Fix clang compile under MSYS2
...
Clang does not define __WINNT__ under Windows. _WIN32 is the closest thing.
2017-11-04 23:50:00 -07:00
Rosen Penev
0555613305
Remove else statement after return
...
Suggested by clang tidy
2017-11-04 23:43:33 -07:00
Rosen Penev
496fc309fe
Add const to a few parameters.
...
Suggested by clang-tidy
2017-11-04 23:37:41 -07:00
Rosen Penev
707f28c723
partially fix compile for musl
2017-10-30 20:16:54 -07:00
philsmd
19504d6286
add missing function prototypes for the binary-search-tree-based pot sorting
2017-10-25 12:31:17 +02:00
Jens Steube
9568837b12
Revert "Replace PRIu64 with ju. Less verbose."
2017-10-20 12:19:33 +02:00
jsteube
980f04a7b6
Rename instances of OSX to MacOS
2017-10-20 11:58:31 +02:00
jsteube
bf112870a3
OpenCL Runtime: Improved detection for AMD and NV devices on OSX
2017-10-20 11:34:36 +02:00
jsteube
2e85972ec5
Add special detection for NVIDIA OpenCL devices on OSX
2017-10-20 08:39:23 +02:00
Rosen Penev
869b5fb522
Replace PRIu64 with ju. Less verbose.
2017-10-19 19:35:18 -07:00
jsteube
635b2bfd50
Do initial OpenCL device thread management a bit different
2017-10-19 14:54:03 +02:00
philsmd
276879b1ea
show/left: improve speed of --show/--left again by using a single malloc/free for all nodes and reduce RAM by using the first nodes hash information
2017-10-18 12:09:32 +02:00
philsmd
433513a47f
get rid of last_node in pot_tree_entry, we update the first node of the list instead of the last one
2017-10-18 08:54:21 +02:00
philsmd
6542331101
show/left: improved the performance by using a tree and linked node structure
2017-10-17 12:08:17 +02:00
jsteube
51aba5517f
Update some of the visual indicator of active options when benchmarking
2017-10-14 12:54:34 +02:00
jsteube
5e6d43107e
Startup: Check and abort session if outfile and wordlist point to the same file
2017-10-10 11:30:20 +02:00
philsmd
a10a8427cb
fixed the nanosecond access time problem, also working on macos now
2017-10-04 12:23:37 +02:00
jsteube
719f2656b1
Fix empty line check in _old_apply_rule()
2017-10-01 17:03:16 +02:00
philsmd
d8e7f5f05c
fixed problem with cached word lists (dictstat2): nanoseconds must be considered/ignored too
2017-09-29 12:13:29 +02:00
Jens Steube
a037ba0c73
Merge pull request #1375 from neheb/warning
...
Fix for clang and some cppcheck warnings
2017-09-29 11:20:35 +02:00
Rosen Penev
da621fa3be
fix some clang -Weverything warnings
2017-09-27 20:05:04 -07:00
Rosen Penev
ec55209254
remove hc_sleep and _msec.
...
MinGW defines sleep and usleep so just use those directly.
2017-09-23 13:02:34 -07:00
Fist0urs
e3cb3e9b4c
test.pl ready and 0 error. Ready for PR
2017-09-21 16:55:30 +02:00
Fist0urs
a6294537fd
Splitted DPAPI kernel in 2 to increase performances
2017-09-21 12:23:33 +02:00
jsteube
036d4874c7
Update version numbers to v4.0.0-RC1
2017-09-20 16:06:27 +02:00
jsteube
f55446b6f3
HCdict File: Renamed file from hashcat.hcdict to hashcat.hcdict2 and add header because versions are incompatible
2017-09-20 10:22:18 +02:00
jsteube
2517292ac1
Removed option --weak-hash-check (zero-length password check) to increase startup time, it also causes many Trap 6 error on OSX
2017-09-19 12:04:05 +02:00
jsteube
617dbb97ba
Prepare migration -m 15800 into -m 2500
2017-09-18 13:21:00 +02:00
jsteube
7a278ef035
Fix overflow in out_push()
2017-09-17 12:14:52 +02:00
jsteube
5551337cf6
Show advice to use optimized kernels only if there's actually one for this hash-mode
2017-09-16 22:33:04 +02:00
Jens Steube
fcd20fbacb
OpenCL Runtime: Fall back to 64 threads default (from 256) on AMD GPU to prevent creating too many workitems
2017-08-29 17:36:50 +02:00
jsteube
a0be36d7b8
Fix compile error caused by __add3()
2017-08-27 19:46:17 +02:00
jsteube
688a580d6c
Fixed an integer overflow in innerloop_step and innerloop_cnt variables
2017-08-25 20:52:13 +02:00
jsteube
1d04de3a8e
Limit kernel-loops in straight-mode to 256, therefore allow rules to be stored in constant memory
2017-08-23 12:43:59 +02:00
jsteube
51372438fe
Allow OpenCL kernel inline assembly if ROCm drivers was detected
2017-08-22 18:47:53 +02:00
jsteube
12d95fd22c
Added option --example-hashes to show an example hash for each hash-mode
2017-08-22 11:09:46 +02:00
jsteube
6907981f08
Backport current state of optimized kernel rule engine to CPU
2017-08-20 12:50:24 +02:00
jsteube
f63df45fca
Backport current state of pure kernel rule engine to CPU
2017-08-20 12:27:19 +02:00
jsteube
58d1dedd1e
OpenCL Buffers: Do not allocate memory for amplifiers for fast hashes, it's simply not needed
2017-08-19 19:25:37 +02:00
jsteube
319799bbbf
Switch the datatypes of the variables responsible for work-item count and work-item size from u32 to u64
2017-08-19 16:39:22 +02:00
philsmd
e33e828bc6
replace all time_t/__time64_t with hc_time_t and all related functions
2017-08-16 19:43:41 +02:00
philsmd
1644ac30b5
use an overflow check instead of a hard coded value for ETA
2017-08-16 17:51:35 +02:00
jsteube
ac9bc55c9e
Fall back to 64 threads default (from 256) because modern GPU create too many workitems which then results in too less GPU memory available
2017-08-16 16:13:28 +02:00
philsmd
4a89172140
reformatting; replaced some tabs with spaces
2017-08-16 13:46:40 +02:00
jsteube
1cf6a078b0
Make tmp_size a real size_t as with latest GPU number can exceed 2^32
2017-08-16 13:03:52 +02:00
philsmd
bc1a101d2b
fixes #1321 : new option --wordlist-autohex-disable
2017-08-16 12:42:28 +02:00
jsteube
175931575c
Fixed the version number used in the restore file header
...
Fixes https://github.com/hashcat/hashcat/issues/1320
2017-08-14 12:10:42 +02:00
jsteube
0b0abb5c12
Prepare pure kernel rule engine for performance optimization
2017-08-12 13:04:52 +02:00
jsteube
e47506c610
Use pure kernel rule engine for --stdout
2017-08-12 12:11:48 +02:00
jsteube
f5ee3db5a6
Update cpu rule engine to support passwords up to length 256
2017-08-11 11:15:43 +02:00
jsteube
4f72c8bee6
Add pure kernels for SIP digest authentication (MD5)
2017-08-07 13:39:17 +02:00
jsteube
b847bbb274
Fix calculation of device_name_chksum; should be done for each iteration
2017-07-22 18:46:12 +02:00
jsteube
8f2cbb26de
Update some salt lengths in interface.h
2017-07-20 18:43:55 +02:00
jsteube
03bb234045
Preparation for WPA/WPA2 AES-CMAC: works till PMK
2017-07-20 12:46:18 +02:00
jsteube
f80d91aa94
Allow the skype parser to accept usernames of length SALT_MAX
2017-07-19 22:14:48 +02:00
jsteube
beb6ee2061
Add OPTI_TYPE_OPTIMIZED_KERNEL
...
Rename unconverted fast hash kernels to optimized kernels
Finalize some converted fast hashes to default kernels
2017-07-18 14:45:15 +02:00
jsteube
fbea72ebd6
Renamed default kernels to optimized kernels
...
Renamed pure kernels to default kernels
Replaced long option --length-limit-disable with --optimized-kernel-enable
Replaced short option -L with -O
Set --optimized-kernel-enable to unset by default
2017-07-18 13:23:42 +02:00
jsteube
f87ac21065
Some small corrections on salt length for MD5-ASA
2017-07-17 20:25:08 +02:00
jsteube
6c932e7ba1
Remove some unused macros
2017-07-14 17:35:53 +02:00
jsteube
967d7b9323
Rename SALT_TYPE_INTERN to SALT_TYPE_GENERIC
2017-07-14 14:57:31 +02:00
jsteube
f70da8a04c
Increase salt length for salt of generic hash types
...
Remove --hex-salt support for non-generic hash types
2017-07-13 11:03:57 +02:00
jsteube
af46a1560b
Vectorized Blockchain, My Wallet and added support for long passwords
2017-07-07 23:32:41 +02:00
jsteube
d3e6ae42f0
Added long passwords support for 7-Zip
2017-07-07 16:48:18 +02:00
jsteube
8abd7ae9d1
Fix some old GCC compiler warnings
2017-07-06 10:35:25 +02:00
jsteube
819b53eb1d
Added long passwords support for sha256crypt $, SHA256 (Unix)
2017-07-05 13:43:14 +02:00
jsteube
907b065e00
Vectorized TrueCrypt PBKDF2-HMAC-SHA512 and added support for long passwords
2017-07-04 12:19:40 +02:00
jsteube
fc100a852b
Added hash-mode 2501 = WPA/WPA2 PMK
...
Fixes https://github.com/hashcat/hashcat/issues/1287
Limited hash-mode 2500 to max length 63
Fixes https://github.com/hashcat/hashcat/issues/1286
2017-07-03 16:11:57 +02:00
jsteube
b9b2112b64
Add pure kernel for -m 1800
2017-07-02 23:27:54 +02:00
jsteube
f7a8e7c54b
Multiple changes:
...
* Added more preparations to support to crack passwords and salts up to length 256
* Added option --length-limit-disable to disable optimization based on password- and salt-length
* Added option --self-test-disable to disable self-test functionality on startup
2017-06-29 12:19:05 +02:00
jsteube
c918173fcf
Get rid of comb_t which can be safely replace with pw_t now
2017-06-25 00:56:25 +02:00
jsteube
a993395f28
Add code to read LZMA compressed hashcat.hcstat2
2017-06-23 14:43:43 +02:00
jsteube
c59432a760
Add hcstat2 support to enable masks of length up to 256, also adds a filetype header
2017-06-23 12:13:51 +02:00
jsteube
83455817a7
Working example of password up to length 256 for mode 2100
2017-06-20 17:30:07 +02:00
jsteube
ad242c2f12
Working example of generic salt up to length 256 for mode 2100
2017-06-20 17:17:13 +02:00
jsteube
4174f06008
PoC using a length-independant MD4 hash processing in -m 2100
2017-06-18 23:31:40 +02:00
jsteube
a673aee037
Very hot commit, continue reading here:
...
This is a test commit using buffers large enough to handle both passwords and salts up to length 256.
It requires changes to the kernel code, which is not included in here.
It also requires some of the host code to be modified. Before we're going to modify kernel code to support the larger lengths I want to be
sure of:
1. Host code modification is ok (no overflows or underflows)
2. Passwords and Salts are printed correctly to status, outfile, show, left, etc.
3. Performance does not change (or only very minimal)
This is not a patch that supports actual cracking both passwords and salts up to length 256, but it can not fail anyway.
If if it does, there's no reason to continue to add support for both passwords and salts up to length 256.
2017-06-17 17:57:30 +02:00
jsteube
94a35ae50a
Add support for hooks in selftest function
2017-06-14 12:07:33 +02:00
Jens Steube
08fc0ec1fb
Added self-test funcionality for OpenCL kernels on startup
...
Fixed a parser error for mode -m 9820 = MS Office <= 2003 $3, SHA1 + RC4, collider #2
2017-06-13 19:07:08 +02:00
Jens Steube
7e5b8d3f25
Added hash-mode 15500 = JKS Java Key Store Private Keys (SHA1)
2017-06-09 09:56:06 +02:00
jsteube
b8ad89c529
Rename function and variables containing 'unicode' to 'utf16le' because that's what's meant actually
2017-06-05 12:15:28 +02:00
jsteube
018bb208d9
Refactor OPTS_TYPE_PT_UNICODE -> OPTS_TYPE_PT_UNICODE_LE and add OPTS_TYPE_PT_UNICODE_BE
2017-06-04 22:46:05 +02:00
Jens Steube
6345fb53f9
Add missing struct names
2017-06-04 21:23:55 +02:00
Jens Steube
2a1fe6962d
Move blake2_t and chacha20_t to interface.h
2017-06-04 21:21:18 +02:00
Jens Steube
b23ab71d5c
- Added hash-mode 15600 = Ethereum Wallet, PBKDF2-HMAC-SHA256
...
- Added hash-mode 15700 = Ethereum Wallet, PBKDF2-SCRYPT
Resolves https://github.com/hashcat/hashcat/issues/1227
Resolves https://github.com/hashcat/hashcat/issues/1228
2017-06-03 23:23:03 +02:00
jsteube
b5f149476d
Trim OpenCL device name whitespaces
2017-06-02 10:08:19 +02:00
jsteube
0cce17d268
Eventual fix for #1263
2017-05-30 12:15:55 +02:00
jsteube
ef33544bfa
Show time spent for dictionary cache building on startup
2017-05-23 10:07:04 +02:00
Jens Steube
5611d7f950
Merge pull request #1256 from 0xbsec/reject_unless_equal
...
Add support for rejection rule _N
2017-05-20 11:24:38 +02:00
Jens Steube
865d885c59
Merge pull request #1257 from DoZ10/master
...
Removed unused structure blake2params_t
2017-05-19 14:35:05 +02:00
DoZ10
62df9648d6
Removed unused structure
2017-05-19 08:28:30 -04:00
DoZ10
556e64ffe6
Revert "Removed unused structure"
...
This reverts commit e7dab5d210
.
2017-05-19 08:25:43 -04:00
DoZ10
e7dab5d210
Removed unused structure
2017-05-19 08:22:18 -04:00
mhasbini
1330424079
Add support for rejection rule _N
2017-05-19 15:13:07 +03:00
Christopher Schmitt
d24a6198e8
first pass at free'ing hashcat_status_t
2017-05-18 10:14:25 -04:00
Jens Steube
f2ad095191
Merge pull request #1237 from DoZ10/master
...
New algorithm: Chacha20
2017-05-18 13:51:47 +02:00
philsmd
af3619f3c5
-m 11600 = 7zip: do not allow truncated hashes anymore, but increase supported data length to ~320KB
2017-05-17 15:07:16 +02:00
philsmd
1f93d2060f
fixes #1239 : remove AES padding attack for 7zip since we can't guarantee that the padding is always zero
2017-05-17 13:53:55 +02:00
Jens Steube
974128bdce
Merge pull request #1245 from 0xbsec/rule-position-p
...
Add support for rule position 'p'
2017-05-17 10:55:08 +02:00
DoZ10
5683df2e17
Fixed conflicts
2017-05-16 20:36:55 -04:00
DoZ10
cfc3fa64c0
Implemented offset parameter to reach full ks block of 64 bytes
2017-05-15 08:47:40 -04:00
Fist0urs
a78dce94db
All remarks treated:
...
1) done + got rid of all u8 datatypes in shared struct
2) cf. previous
3) necessary as this is computed in _init then used in _comp
4) done
5) done
6) done => switch to 16
7) done
2017-05-14 19:45:35 +02:00
mhasbini
be0dec621a
Add support for rule position 'p' in host mode
2017-05-14 18:50:45 +03:00
DoZ10
9dee1d274d
Removed plain_length parameter and copied esalt buffer to salt ofr sorting mechanism.
2017-05-14 07:14:57 -04:00
DoZ10
0d3b5393ef
Swapped mode 670 -> 15400
2017-05-14 06:52:14 -04:00
Fist0urs
7ff09c6710
Preparing PR
2017-05-09 20:14:07 +02:00
DoZ10
c50e8bc486
Fixed position parameters. Tested all kernels. Ok.
2017-05-07 14:02:00 -04:00
DoZ10
3c67e0054c
Implemented Perl test and fixed issues. Now have a working base.
2017-05-06 20:40:10 -04:00
DoZ10
cd9dc989ce
Implemented Chacha20 crypto.
2017-05-06 14:24:50 -04:00
Fist0urs
40bbb0023c
Merge branch 'master' of https://github.com/hashcat/hashcat into DPAPImk
2017-05-06 17:00:17 +02:00
Fist0urs
d537712f27
Both DPAPImk v1 and v2 work for single hash, still a bug on multi-hash
...
Remaining this bug + tests.pl before PR
2017-05-06 16:55:36 +02:00
DoZ10
f6cd42352d
CPU parsing mostly done. Kernel showing good values.
2017-05-05 09:02:18 -04:00
DoZ10
152f0b5152
Init work on Chacha20
2017-05-04 22:34:52 -04:00
Jens Steube
b924901bb0
Merge pull request #1226 from DoZ10/master
...
Blake2b raw hash implementation
2017-05-03 16:38:03 +02:00
DoZ10
9d0855c02f
Fixed interface.c to remove XORing madness and blake2_t naming convention
2017-05-01 16:38:48 -04:00
Fist0urs
014278ab0e
Working:
...
- MD4/sha1
- hmac-sha1
- pbkdf2-hmac-sha1
- pbkdf2-hmac-sha512
Remaining:
- handling of long salt (SID)
- (AES256/DES3) + the end
2017-05-01 22:21:54 +02:00
DoZ10
87e0281237
Moved init params in CPU (interface.c). Fixed vector-type problem in kernel a0.
2017-04-30 20:34:01 -04:00
Fist0urs
73d48dcd26
Initial commit, new format DPAPImk, works till hmac-sha1
2017-05-01 00:48:09 +02:00
mhasbini
5734741392
Add support for rule: eX
2017-04-30 16:23:39 +03:00
DoZ10
58c1f46b19
Merge and conflict resolve.
2017-04-24 21:47:35 -04:00
DoZ10
a60cddc2cc
Added Blake2 signature according for JtR format.
2017-04-22 07:35:22 -04:00
Jens Steube
086a07264a
Switch from libiconv to win-iconv
2017-04-19 12:58:25 +02:00
Jens Steube
26a345334f
Added hash-mode 15200 = Blockchain, My Wallet, V2
...
Fixes https://github.com/hashcat/hashcat/issues/109
2017-04-16 13:19:23 +02:00
Jens Steube
5cc3b7807f
Test for target Endianness and abort if it's big-endian
2017-04-15 17:33:59 +02:00
Jens Steube
7cabb848d2
Wordlist encoding: Support added for internal convert from and to user-defined encoding during runtime
...
Wordlist encoding: Added parameters --encoding-from and --encoding-to to configure wordlist encoding handling
Dictstat: Structure for dictstat file changed as it has to include --encoding-from and --encoding-to parameter now
2017-04-14 16:36:28 +02:00
DoZ10
69dad31a29
fix: changed -m 6200 -> 600
2017-04-13 20:45:48 -04:00
DoZ10
0a8f17c24a
fix: g madness...
2017-04-13 17:33:08 -04:00
DoZ10
4e9bb8b093
init
2017-04-13 08:38:59 -04:00
sgroat
21efc80975
fix string
2017-04-10 13:35:01 -07:00
jsteube
26949a4fce
WPA cracking: Improved nonce-error-corrections mode to fix corrupt nonce generated on Big-Endian devices
...
WPA cracking: Reduced --nonce-error-corrections default from 16 to 8 to compensate speed drop caused due to Big-Endian fixes
Fixes https://github.com/hashcat/hashcat/issues/1221
2017-04-10 10:11:32 +02:00
jsteube
ac99df6618
Versions: Changed version naming convention from x.yz to x.y.z
2017-03-31 15:28:20 +02:00
jsteube
368f8b39bc
Add function to distinguish between warning and advice messages
2017-03-25 20:50:37 +01:00
jsteube
e933d12838
Rename Input.Mode, Input.Base, ... to Guess.Mode, Guess.Base, ...
2017-03-24 23:39:09 +01:00
jsteube
6d66ff96c1
Truncate longer hash format in status output
2017-03-24 10:45:40 +01:00
jsteube
d1b2fa0b31
Added hash-mode 15100 = Juniper/NetBSD sha1crypt
2017-03-23 16:44:32 +01:00
jsteube
378f852cec
Parameter: Detect and error when users try to use a non-digit where a digit is expected
...
Fixes https://github.com/hashcat/hashcat/issues/1189
2017-03-19 15:11:41 +01:00
jsteube
bea0e52cdb
Remove unused variable
2017-03-09 10:17:34 +01:00
jsteube
c04dd5c8b1
WPA cracking: Added support for WPA/WPA2 handshake AP nonce automatic error correction
...
WPA cracking: Added parameter --nonce-error-corrections to configure range of error correction
2017-03-07 14:41:58 +01:00
jsteube
33a043ec63
Refactored internal use of esalt from sync with number of salts to sync with number of digests
...
This enables a true N esalts per salt feature which is required for WPA/WPA2 handling
In case we need that for a future algorithm, just make sure to have a unique value in digest in hash parser.
Fixes https://github.com/hashcat/hashcat/issues/1158
2017-03-07 09:44:58 +01:00
Rosen Penev
bbdaf647f3
Add _FORTIFY_SOURCE to check for overflows
2017-03-04 19:11:28 -08:00
Rosen Penev
184d69f574
Adjust version level for the *time_r functions
2017-03-04 18:51:01 -08:00
Rosen Penev
fdc0bf913d
Remove unnecessary includes
2017-03-04 18:30:39 -08:00
Rosen Penev
84cbad2ba8
Only Apple has a different cl.h location. Simplify a bit
2017-03-04 18:28:50 -08:00
jsteube
54ad27da7d
Session Management: Automatically set dedicated session names for non-cracking parameters, for example: --stdout
2017-03-02 19:57:34 +01:00
philsmd
22d1129818
added -m 12001 = Atlassian (PBKDF2-HMAC-SHA1) #611
2017-02-28 14:22:03 +01:00