This is the page and DokuWiki namespace to upload unofficial JtR patches to (yes, the wiki supports file uploads). Please do. Links to external websites with JtR patches are also acceptable. Significant updates to this wiki page (such as newly added patches) are to be announced on the john-users mailing list (in addition to updating the wiki page, not instead of that).
NOTE, old patches are found at !!!OLD!!! Contributed patches for John the Ripper
Whatever way you choose to share your code with the community, please make sure you're generating your patches properly and licensing your code properly.
The difference from the “contributed resources” list on the JtR homepage and the contrib/ FTP directory is that patches and links found on the wiki become available to the community right away, without review by Openwall website and FTP server maintainers.
| Patch | Author | Description |
|---|---|---|
| generic crypt(3) support | Solar Designer | Status: separate patch, currently relevant. Normally, JtR uses its own optimized crypto code, but this patch lets it also use the underlying Unix-like system's crypt(3) function. This is particularly useful for cracking glibc 2.7+ "SHA-crypt" hashes (such as on recent Fedora and Ubuntu) until proper “native” support for that is implemented. Other uses are possible as well. |
| MySQL(323)-old fast algorithm for 1.7.2 | Balázs Bucsay | Status: integrated into jumbo patch |
| raw-MD5 fast algorithm for 1.7.2 | Balázs Bucsay | Status: integrated into jumbo patch |
| Oracle 11g for 1.7.2 | Alexandre Hamelin | Status: integrated into jumbo patch |
| Oracle 11g for 1.7.3.1 | Alexandre Hamelin | Status: integrated into jumbo patch |
| mpi10 patch for 1.7.3.1 | RB | Status: separate patch, currently relevant. Latest stripped version of bindshell.net MPI patch. |
| mpi10 patch for 1.7.5 | magnum | Status: separate patch, currently relevant. This is just the same as above after hand-editing the rejects |
| Extended MPI for 1.7.5 | magnum | Status: separate patch, currently relevant. This is version 3. Apply after jumbo-2 See mailing list announcement |
| JimF patch for 1.7.3.4-jumbo-2 | JimF | Status: integrated into 1.7.4-jumbo-2 and above. Rollup of all JimF's released patches, with a significant update to generic md5. This patch should be run on a clean 1.7.3.4 which has had the 1.7.3.4-jumbo-2.diff run. Included in the patch are: Performance Patch – Memory file – Larger hash tables – Less file IO MinGW and VC porting / #defines Many new options – Added an optional [=Section] to -single and -rules – Added an optional [=left] to -show (outputs the hashes uncracked) – Added an optional [MAX] to the -salt – Added new option -salt-list= – Added new option -pot=potfile – Added new option -nodupes – Added new option -subformat= (for md5-generic) – Added new option -field-separator-char=c (allows using a field sep char OTHER than the colon : char MD5 'Generic' processing – 17 builtin's and running as fast as 'native' formats – 'hooks' provided so other formats can become VERY thin, and use generic md5. — phpass format is now 'thin' and linked to gen-md5 code — PHPS format is now 'thin' and linked to gen-md5 code — there are others which could be linked, but right now, only these 2 – Formats CAN now be added, without changing john's code — new formats (over md5_gen(1000) are added to john.conf — there are many examples in the updated john.conf, along with FULL documentation — a new file doc\MD5_GENERIC documents how to use generic md5 the -v2 of this patch – 'fixes' a bug that did not allow MMX to work in generic md5 – Improves speed of md5_gen(12) and md5_gen(13) – fixes a compile warning in wordlist.c – fixes benchmark discrepancy in phpass |
| Test data for Generic MD5 | JimF | Status: currently relevant for testing of jumbo patch revisions. (v3, Oct 27, 2009) Test data, and pw.dic file containing all passwords for the test cases. There is a test case for raw-md5, and for md5_gen(0) to md5_gen(15). Each when run through john should find all 1320 passwords. The salted hashes only have 66 unique passwords (but multiple hashes). The non-salted hashes use all 1320 passwords out of the password list file (v2 test data added md5_gen(17) phpass, and 'native' phpass format. v3 added 1 salt md5_gen(6)) |
| Add filter support for markov mode | Bartavelle | Status: revised and merged into 1.7.5-jumbo-2 and above |
Yes, I'd like people to start using this wiki page to publish their patches. The above is just not enough, with most patches being submitted by other means (which is fine) and no mention on this page (which is not fine). - solar
Also, there's a page on existing efforts to introduce parallel processing and distributed processing into JtR.