jsteube
97020f6521
Vectorized Ethereum Wallet + SCRYPT and added support for long passwords
7 years ago
jsteube
a91d048c04
Vectorized Ethereum Wallet, PBKDF2-HMAC-SHA256 and added support for long passwords
7 years ago
jsteube
25fba33901
Vectorized DPAPI masterkey file v1 and v2 and added support for long passwords
7 years ago
jsteube
32329cf3f4
Vectorized Juniper/NetBSD sha1crypt and added support for long passwords
7 years ago
jsteube
0da85fc1fd
Vectorized iTunes backup >= 10.0 and added support for long passwords
7 years ago
jsteube
de9d026bb0
Vectorized iTunes backup < 10.0 and added support for long passwords
7 years ago
jsteube
8f73d356f2
Vectorized LUKS and added support for long passwords
7 years ago
jsteube
b1a88da83e
Vectorized WinZip and added support for long passwords
7 years ago
jsteube
1049fa386a
Add OPTI_TYPE_SLOW_HASH_SIMD_LOOP in interface.c where it was missing
7 years ago
jsteube
3141c14b0f
Refactor OpenCL kernels to use normalized AES functions from inc_cipher_aes.cl
7 years ago
jsteube
709cfa2e91
Added long passwords support for KeePass 1 (AES/Twofish) and KeePass 2 (AES)
7 years ago
jsteube
837b5a31d1
Added long passwords support for AxCrypt
7 years ago
jsteube
dd14b798c3
Vectorized WPA/WPA2 PMK OpenCL kernel
7 years ago
jsteube
fc32b24236
Vectorized RAR5 and added support for long passwords
7 years ago
jsteube
da6bfc130e
Fix invalid const keyword in OpenCL kernel function header
7 years ago
jsteube
933fa47d21
Vectorized Android FDE (Samsung DEK) and added support for long passwords
7 years ago
jsteube
edf904f309
Vectorized MS-AzureSync PBKDF2-HMAC-SHA256 and added support for long passwords
7 years ago
jsteube
af46a1560b
Vectorized Blockchain, My Wallet and added support for long passwords
7 years ago
jsteube
a1321d2d64
Added long passwords support for BSDi Crypt, Extended DES
7 years ago
jsteube
02ce227ff1
Vectorized Oracle T: Type (Oracle 12+) and added support for long passwords
7 years ago
jsteube
6e57aa1c0f
Vectorized eCryptfs and added support for long passwords
7 years ago
jsteube
729c5f09bc
Vectorized PBKDF2-HMAC-SHA1 and added support for long passwords
7 years ago
jsteube
eda88e6c84
Vectorized PBKDF2-HMAC-MD5 and added support for long passwords
7 years ago
jsteube
d3e6ae42f0
Added long passwords support for 7-Zip
7 years ago
jsteube
27a57383f0
Vectorized Password Safe v3 and added support for long passwords
7 years ago
jsteube
0fae961111
Vectorized PBKDF2-HMAC-SHA256 and added support for long passwords
7 years ago
jsteube
e455561f77
Add -L support for -m 10800 in combination with -a 3
7 years ago
jsteube
5de48182b4
Fixed max password length limit in mode 10500
7 years ago
jsteube
bedc481390
Added long passwords support for SAP CODVN H (PWDSALTEDHASH) iSSHA-1
7 years ago
jsteube
f4301c9c22
Optimize use of AES128 and AES256 in Office 2007
7 years ago
jsteube
e2bc2a54c8
Optimize use of AES256 in Office 2013
7 years ago
jsteube
99dfdf466d
Optimize use of AES128 in Office 2010
7 years ago
jsteube
ced2608326
Optimize Office 2007 and 2010 OpenCL _loop kernel
7 years ago
jsteube
8916de538a
Vectorized MS Office 2013 and added support for long passwords
7 years ago
jsteube
51470b2b04
Vectorized MS Office 2010 and added support for long passwords
7 years ago
jsteube
61f39b37d2
Vectorized MS Office 2007 and added support for long passwords
7 years ago
jsteube
17b003b355
Vectorized Lotus Notes/Domino 8 and added support for long passwords
7 years ago
jsteube
df3890b49d
Added long passwords support for SCRYPT
7 years ago
jsteube
ccd85f345d
Vectorized 1Password, cloudkeychain and added support for long passwords
7 years ago
jsteube
d63e5f259f
Remove some old code from -m 7900
7 years ago
jsteube
6cbd2acd24
Added long passwords support for Drupal7
7 years ago
jsteube
819b53eb1d
Added long passwords support for sha256crypt $, SHA256 (Unix)
7 years ago
jsteube
7fec4f27d8
Vectorized OSX v10.8+ (PBKDF2-SHA512) and added support for long passwords
7 years ago
jsteube
b323682185
Merge branch 'master' of https://github.com/hashcat/hashcat
7 years ago
jsteube
f8cae33435
Fix some kernel headers
7 years ago
philsmd
03f4e2b3dc
minor typo fixed in comment for the new update() functions
7 years ago
jsteube
195e3c744c
Vectorized TrueCrypt PBKDF2-HMAC-Whirlpool and added support for long passwords
7 years ago
jsteube
81c9e3eb4f
Backport 1024 and 1536 bit kernel for refactored -m 6212
7 years ago
jsteube
5105bc95a7
Add missing -m 6100 pure kernel for -a 3
7 years ago
jsteube
3c2e2c505e
Add -L support for -m 6100 in combination with -a 3
7 years ago
jsteube
f2067d6962
Vectorized TrueCrypt PBKDF2-HMAC-RipeMD160 and added support for long passwords
7 years ago
jsteube
55874ec853
Vectorized VeraCrypt PBKDF2-HMAC-SHA256 and added support for long passwords
7 years ago
jsteube
907b065e00
Vectorized TrueCrypt PBKDF2-HMAC-SHA512 and added support for long passwords
7 years ago
jsteube
c9e98e48d3
Added long passwords support for Samsung Android Password/PIN
7 years ago
jsteube
5eb76ccdde
Vectorized Password Safe v3 and added support for long passwords
7 years ago
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
7 years ago
jsteube
91f7acbde3
Remove more unused functions after refactor of -m 6x00 kernels
7 years ago
jsteube
1dfdefae69
Vectorized LastPass + LastPass sniffed kernel and added support for long passwords
7 years ago
jsteube
c3f0bb77dd
Vectorized AIX {ssha1} kernel and added support for long passwords
7 years ago
jsteube
2e78cf1d58
Vectorized 1Password, agilekeychain kernel and added support for long passwords
7 years ago
jsteube
a8a1fe1b4f
Vectorized AIX {ssha512} kernel and added support for long passwords
7 years ago
jsteube
bb1341015f
Vectorized AIX {ssha256} kernel and added support for long passwords
7 years ago
jsteube
35e1ee6612
Functions append_0x02() no longer required after rewrite of -m 8800
7 years ago
jsteube
ccc9e46508
Vectorized Android FDE <= 4.3 kernel and added support for passwords up to length 256
7 years ago
jsteube
cbeb9c6e0c
Remove unused functions from -m 2500
7 years ago
jsteube
d806aab2c3
Remove some unused functions
7 years ago
jsteube
b03382b334
Get rid of old truncate_block()
7 years ago
jsteube
64704f36c2
Add pure kernel for -m 6300
7 years ago
jsteube
34c85a659d
Refactor -m 500 and -m 1600 to use new truncate_block() functions
7 years ago
jsteube
a22da36a00
Add different code generators for truncate_block(), add results to inc_common.cl and make use of them in m01800-pure.cl
7 years ago
jsteube
b9b2112b64
Add pure kernel for -m 1800
7 years ago
jsteube
8e1759650b
Add -L support for -m 1700 in combination with -a 3
7 years ago
jsteube
58a66cf31d
Fix function declaration of switch_buffer_by_offset_8x4_carry_be_S()
7 years ago
jsteube
a009f239d5
Backport generated scalar code to vector code
7 years ago
jsteube
fbfe81a0a1
Replace code in switch_buffer_by_offset_carry_be_S() with code generated with code generators
7 years ago
jsteube
b07b73f525
Add switch_buffer_by_offset_8x4_be_S() to inc_common.cl
7 years ago
jsteube
6feb0a1630
Rename switch_buffer_by_offset_64x1_le_S() to switch_buffer_by_offset_1x64_le_S()
7 years ago
jsteube
2a50c7ba61
Remove debugging line
7 years ago
jsteube
cd5223eb2f
Replace code in switch_buffer_by_offset_be_S() with code generated with code generators
7 years ago
jsteube
521ece537c
Replace code in switch_buffer_by_offset_64x1_le_S() in amp_a1.cl with generated code from code generators
7 years ago
jsteube
62d695d572
Rename switch_buffer_by_offset_le_S() to switch_buffer_by_offset_64x1_le_S() in amp_a1.cl
7 years ago
jsteube
48ce6cb71d
Add append_0x80_8x4_S() and replace code in switch_buffer_by_offset_le_S() with generated code from code generators
7 years ago
jsteube
f5dca399ad
Add -L support for -m 1600
7 years ago
jsteube
b0d5995689
Backport changes from inc_hash_md5.cl to inc_hash_md4.cl
7 years ago
Jens Steube
56dc8ae359
Add two functions md5_update_global_utf16le_swap() and md5_update_global_swap() for later use
7 years ago
jsteube
165380c454
Simplify WPA/WPA2 cracking kernel
7 years ago
jsteube
52c1e15f3f
Move kernel-code for -L to standalone files with -pure suffix
7 years ago
jsteube
194af74e91
Add support for maximum bcrypt password length
7 years ago
jsteube
7914e075f6
This patch is an example of how to modify a fast -a 3 kernel to support password lengths up to 256
7 years ago
jsteube
cefd2ddb94
Tune AMD unroll settings for AMD-GPU-PRO 17.40
7 years ago
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
7 years ago
jsteube
c918173fcf
Get rid of comb_t which can be safely replace with pw_t now
7 years ago
jsteube
045ac7d8e7
Modify amp_a1 to work with password length 256
7 years ago
Jens Steube
c2a770631f
Merge pull request #1284 from neheb/master
...
Fix signed overflow warnings
7 years ago
Rosen Penev
2f3171fd98
Fix signed overflow warnings
7 years ago
jsteube
c59432a760
Add hcstat2 support to enable masks of length up to 256, also adds a filetype header
7 years ago
jsteube
120cf1d1ba
Removed some unused functions, added -m 500 kernel with length 256 support but not activated because too slow
7 years ago
jsteube
71d4926afa
Converted -m 400 to password length 256 support
...
Something weird happend here, read on!
I've expected some performance drop because this algorithm is using the password data itself inside the iteration loop.
That is different to PBKDF2, which I've converted in mode 2100 before and which did not show any performance as expected.
So after I've finished converting this kernel and testing everything works using the unit test, I did some benchmarks to see how much the
performance drop is.
On my 750ti, the speed dropped (minimal) from 981kH/s -> 948kH/s, that's mostly because of the SIMD support i had to drop.
If I'd turn off the SIMD support in the original, the drop would be even less, that us 967kH/s -> 948kH/s which is a bit of a more reasable
comparison in case we just want to rate the drop that is actually caused by the code change itself.
The drop was acceptable for me, so I've decided to check on my GTX1080.Now the weird thing: The performance increased from 6619kH/s to
7134kH/s!!
When I gave it a second thought, it turned out that:
1. The GTX1080 is a scalar GPU so it wont suffer from the drop of the SIMD code as the 750ti did
2. There's a change in how the global data (password) is read into the registers, it reads only that amount of data it actually needs by using
the pw_len information
3. I've added a barrier for CLK_GLOBAL_MEM_FENCE as it turned out to increase the performance in the 750ti
Note that this kernel is now branched into password length < 40 and larger.
There's a large drop on performance where SIMD is really important, for example CPU.
We could workaround this issue by sticking to SIMD inside the length < 40 branch, but I don't know yet how this can be done efficiently.
7 years ago
Jens Steube
0787b91327
Merge branch 'master' of https://github.com/hashcat/hashcat
7 years ago
Jens Steube
45b14ebf1c
While not required now, it's better to use scalar functions in amplifier kernel in case it get's changed in the future
7 years ago
jsteube
cea78024bf
Fix -m 2100 cracking if (password length & 31) == 0
7 years ago
jsteube
ad242c2f12
Working example of generic salt up to length 256 for mode 2100
7 years ago
jsteube
2c92465036
Add HMAC functionality to inc_hash_md4.cl and make DCC2 use it, resulting in support for longer domain names
7 years ago
jsteube
4174f06008
PoC using a length-independant MD4 hash processing in -m 2100
7 years ago
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.
7 years ago
jsteube
c9caca2b0c
Increase max password length for DCC2 to 32
7 years ago
Jens Steube
bd01228ad5
Get rid of reqd_work_group_size(), no longer needed
7 years ago
jsteube
8a3ed7fe75
Small WPA improvement, do not check the same candidate twice for LE and BE
7 years ago
jsteube
cf57365e7c
Check hashes_shown[] whenever calling mark_hash directly.
...
Not really needed right now (because those algorithms to have a single digest per salt), but this can change in the future
7 years ago
jsteube
4b2d9f0f29
Fix for https://github.com/hashcat/hashcat/issues/1276
7 years ago
jsteube
e9c010115d
Fix some spacing
7 years ago
Jens Steube
e87fb31d3f
WPA cracking: Improved nonce-error-corrections mode to use a both positive and negative corrections
7 years ago
Jens Steube
7e5b8d3f25
Added hash-mode 15500 = JKS Java Key Store Private Keys (SHA1)
7 years ago
jsteube
b8ad89c529
Rename function and variables containing 'unicode' to 'utf16le' because that's what's meant actually
7 years ago
Royce Williams
3fc185a66b
tidy changes.txt and name normalizations
7 years ago
Jens Steube
542f73eb17
Move luks_tmp_t to correct position in inc_types.h
7 years ago
Jens Steube
9a1951d61c
synchronize host and opencl types
7 years ago
Jens Steube
ae5fdba20f
Add make_unicode and undo_unicode BE version
7 years ago
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
7 years ago
DoZ10
6ced398c3c
Addressed comments and added 15400 to benchmark.c and tab_completion
7 years ago
DoZ10
5683df2e17
Fixed conflicts
7 years ago
DoZ10
8b6120243d
Applied performance changes and fixed multi-mode bad implementation
7 years ago
DoZ10
f31f057113
Fixed minor error in offset calculation.
7 years ago
DoZ10
8dfd1bf066
Final. Implemented offset parameter to reach next keystream in kernels. Tested all kernels with scalar and vector modes
7 years ago
DoZ10
cfc3fa64c0
Implemented offset parameter to reach full ks block of 64 bytes
7 years ago
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
7 years ago
DoZ10
5ab5e6c7b6
Added salt section comment in kernels
7 years ago
DoZ10
9dee1d274d
Removed plain_length parameter and copied esalt buffer to salt ofr sorting mechanism.
7 years ago
DoZ10
0d3b5393ef
Swapped mode 670 -> 15400
7 years ago
Fist0urs
7ff09c6710
Preparing PR
7 years ago
DoZ10
c50e8bc486
Fixed position parameters. Tested all kernels. Ok.
7 years ago
DoZ10
2fd31ed89f
Completed kernel a3
7 years ago
DoZ10
dd1deb8ed3
Completed kernel a1
7 years ago
DoZ10
8511d9f047
Completed kernel a0.
7 years ago
DoZ10
3c67e0054c
Implemented Perl test and fixed issues. Now have a working base.
7 years ago
DoZ10
cd9dc989ce
Implemented Chacha20 crypto.
7 years ago
Fist0urs
40bbb0023c
Merge branch 'master' of https://github.com/hashcat/hashcat into DPAPImk
7 years ago
Fist0urs
d537712f27
Both DPAPImk v1 and v2 work for single hash, still a bug on multi-hash
...
Remaining this bug + tests.pl before PR
7 years ago
DoZ10
f6cd42352d
CPU parsing mostly done. Kernel showing good values.
7 years ago
DoZ10
152f0b5152
Init work on Chacha20
7 years ago
Jens Steube
b924901bb0
Merge pull request #1226 from DoZ10/master
...
Blake2b raw hash implementation
7 years ago
Fist0urs
29d331ee17
hmac-sha1 + SID almost working, padding problem
7 years ago
DoZ10
dcd8306b6f
Fixed naming convention for kernel blake2_t type
7 years ago
DoZ10
ee558c625d
Copied esalt buffer into kernel in the outer loop
7 years ago
DoZ10
8aa389b286
Fixed coding style convention for for() loops
7 years ago
Fist0urs
014278ab0e
Working:
...
- MD4/sha1
- hmac-sha1
- pbkdf2-hmac-sha1
- pbkdf2-hmac-sha512
Remaining:
- handling of long salt (SID)
- (AES256/DES3) + the end
7 years ago
DoZ10
22b9f80531
Inserted blake2b_sigma into kernel for perf gain. Standardized naming convention to blake2b_transform()
7 years ago
DoZ10
f0f96140b2
Fixed Attack modes 1 & 3
7 years ago
DoZ10
87e0281237
Moved init params in CPU (interface.c). Fixed vector-type problem in kernel a0.
7 years ago
Fist0urs
73d48dcd26
Initial commit, new format DPAPImk, works till hmac-sha1
7 years ago
mhasbini
5734741392
Add support for rule: eX
7 years ago
DoZ10
e71c68e0af
Fixed endianness to remove unecessary kernel swaps ops
7 years ago
Jens Steube
0fcf51dee3
Fixed a missing type specifier in a function declaration of the RACF kernel
7 years ago
DoZ10
c1f8204b06
Prepared transform routine
7 years ago
DoZ10
0e018c717d
Unrolled for() loops and removed S & P structs
7 years ago
DoZ10
76e3c0618e
Fixed for() loops coding style
8 years ago
DoZ10
903e716b9a
Swapped to outlen and tested. Okay. Still having problems with VECT_SIZE > 1
8 years ago
DoZ10
58c1f46b19
Merge and conflict resolve.
8 years ago
DoZ10
10629190e3
Now compiles for test.sh -m 600 -a 0 -V1 and -V2, but does not resolve on V2.
8 years ago
DoZ10
de477580a0
Code Cleanup and short doc additions
8 years ago
DoZ10
1386d0eecc
Added kernel m00600_a1.cl
8 years ago
DoZ10
bb61408e89
Added kernel m00600_a0
8 years ago
DoZ10
60afdc2a30
Added function m04 in attack mode 3
8 years ago
DoZ10
72724ccba4
Removed rotr64_w() function.
8 years ago
DoZ10
b61d74255b
Removed load64() and load64_reverse() functions.
8 years ago
DoZ10
ad305308bb
Remove useless loop.
8 years ago
DoZ10
5689892e46
Removed useless spaces.
8 years ago
DoZ10
976f50a56b
Code cleanup.
8 years ago
DoZ10
3ce9597685
Renamed load64_inv -> load64_reverse
8 years ago
DoZ10
afdef5ce1c
fix: Kernel m00600_a3.cl function s04.
8 years ago
Jens Steube
a93a143d1e
Use scalar swap32() version for scalar variable
8 years ago
DoZ10
d455c18d4b
saved.
8 years ago
DoZ10
c3b95db072
rm: cleanup files.
8 years ago
DoZ10
d5ca5d59db
add: lots of things....
8 years ago
DoZ10
69dad31a29
fix: changed -m 6200 -> 600
8 years ago
DoZ10
abb0f84985
fix: m number in cl file.
8 years ago
DoZ10
bf45f87d39
random work...
8 years ago
DoZ10
4e9bb8b093
init
8 years ago
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
8 years ago
jsteube
d1b2fa0b31
Added hash-mode 15100 = Juniper/NetBSD sha1crypt
8 years ago
jsteube
2bc65c2c4d
A bit a different _comp kernel iteration for WPA which can have lots of handshakes
8 years ago
jsteube
bea0e52cdb
Remove unused variable
8 years ago
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
8 years ago
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
8 years ago
jsteube
89f8739dde
Fixed overflow in bcrypt kernel in expand_key() function
8 years ago
philsmd
35c1f731b8
osx: some more volatile are required for luks/tc
8 years ago
philsmd
fbb1f92d2b
osx: -m 3200 = bcrypt needs a volatile variable
8 years ago
jsteube
72edd17481
Workaround -m 9100 to run on AMDGPU-Pro
8 years ago
jsteube
a5b8a91d58
Small -m 9100 cleanups
8 years ago
Jens Steube
e82ce9243d
Added support for filtering hccapx message pairs using --hccapx-message-pair
8 years ago
Jens Steube
0fc949ef69
Fixed cracking of PeopleSoft Token if salt length + password length is >= 128 byte
8 years ago
jsteube
2ece9742e1
Compress multiple newlines to one
8 years ago
jsteube
d0fa9d059d
Remove some unused macros
8 years ago
jsteube
22be61b20d
Remove aligned __constant datatypes from OpenCL kernel function declarations
8 years ago
jsteube
6401c58568
Align all the __constant buffers to workaround OpenCL JIT compiler errors in NV drivers 378.x
8 years ago
jsteube
3fb433de60
Remove __constant from OpenCL kernel function declarations
8 years ago
jsteube
ecb851ecda
Testwise workaround for -m 9100 on 378.x
8 years ago
jsteube
c094f3b511
Workaround added for NVidia OpenCL runtime: RACF kernel requires EBCDIC lookup to be done on shared memory
8 years ago
Jens Steube
2dd8018915
Fix -m 4520 for salt length exactly 15
8 years ago
jsteube
7aab78fb52
Fix broken SHA512 in LUKS due to union refactoring in tmps variable
8 years ago