Closed mc-sammer closed 11 years ago
Patch for sboxes-s.c
[patch truncated by GitHub, see http://www.openwall.com/lists/john-users/2012/12/10/5 -- magnum]
Error from DES_bs_b.c
DES_bs_b.c: In function 'DES_bs_crypt_25':
DES_bs_b.c:1180:4: error: invalid parameter combination for AltiVec intrinsic
DES_bs_b.c:1180:4: error: invalid parameter combination for AltiVec intrinsic
DES_bs_b.c:1180:4: error: invalid parameter combination for AltiVec intrinsic
...
DES_bs_b.c: In function 'DES_bs_crypt':
DES_bs_b.c:1312:4: error: invalid parameter combination for AltiVec intrinsic
DES_bs_b.c:1312:4: error: invalid parameter combination for AltiVec intrinsic
DES_bs_b.c:1312:4: error: invalid parameter combination for AltiVec intrinsic
...
DES_bs_b.c: In function 'DES_bs_crypt_LM':
DES_bs_b.c:1473:4: error: invalid parameter combination for AltiVec intrinsic
DES_bs_b.c:1473:4: error: invalid parameter combination for AltiVec intrinsic
DES_bs_b.c:1473:4: error: invalid parameter combination for AltiVec intrinsic
...
make[1]: *** [DES_bs_b.o] Error 1
make: *** [macosx-ppc32-altivec] Error 2
The patch was all about casting the last parameter in vsel to (vector bool int) because no version of the extension could handle four signed ints.
Also I'm not super familiar with C and most of my knowledge from it comes from trying to fix things that don't compile so I apologize in advanced if my terminology is dead wrong.
Could you please bring this patch and description to john-dev, at lists.openwall.com? While this git repo of mine is the de-facto official one, Solar does not actually use GitHub. And I believe he can help out.
Also, perhaps you can fork my repo (preferably the 1.7.9-jumbo-6-fixes branch) here on GitHub and apply your patch to your fork. This way we can pull from that, and test or merge.
Alright I sent them an email with my patch and the DES errors.
I used clang to see if I could get it to compile with that (v3.2) and it actually gave me some help.
DES_bs_b.c:1180:4: error: no matching function for call to 'vec_st'
DES_bs_clear_block
^~~~~~~~~~~~~~~~~~
DES_bs_b.c:1125:2: note: expanded from macro 'DES_bs_clear_block'
DES_bs_clear_block_8(0); \
^
DES_bs_b.c:1114:3: note: expanded from macro 'DES_bs_clear_block_8'
vst(b[i] bd, 0, zero); \
^
DES_bs_b.c:33:2: note: expanded from macro 'vst'
vec_st((src), (ofs) * sizeof(DES_bs_vector), &(dst))
^~~~~~
/opt/local/libexec/llvm-3.2/bin/../lib/clang/3.2/include/altivec.h:6810:1: note: candidate function not viable: no known conversion from
'DES_bs_vector *' (aka 'int (*)[4]') to 'int *' for 3rd argument; remove &
vec_st(vector int a, int b, int *c)
helpfully I'll be able to figure out a workaround in the near future.
I figured it out
index 684ac94..0f91c3c 100644
--- a/src/DES_bs_b.c
+++ b/src/DES_bs_b.c
@@ -30,7 +30,7 @@
typedef vector signed int vtype;
#define vst(dst, ofs, src) \
- vec_st((src), (ofs) * sizeof(DES_bs_vector), &(dst))
+ vec_st((src), (ofs) * sizeof(DES_bs_vector), (dst))
#define vxorf(a, b) \
vec_xor((a), (b))
After removing that & I was able to compile and run it without errors (besides the ones that normally fail)
And actually there are some other patches I made just to get it to compile
wpapsk.h patch
diff --git a/src/wpapsk.h b/src/wpapsk.h
index 02c6255..9a50d78 100644
--- a/src/wpapsk.h
+++ b/src/wpapsk.h
@@ -156,7 +156,7 @@ static int valid(char *ciphertext, struct fmt_main *self)
return 0;
hccap = decode_hccap(ciphertext);
#if !ARCH_LITTLE_ENDIAN
- hccap.eapol_size = JOHNSWAP(hccap->eapol_size);
+ hccap->eapol_size = JOHNSWAP(hccap->eapol_size);
#endif
if(hccap->eapol_size > 256)
return 0;
sunmd5 patch
diff --git a/src/sunmd5_fmt_plug.c b/src/sunmd5_fmt_plug.c
index 09ed530..6d02f4f 100644
--- a/src/sunmd5_fmt_plug.c
+++ b/src/sunmd5_fmt_plug.c
@@ -237,7 +237,7 @@ static void init(struct fmt_main *self)
saved_key = mem_calloc_tiny(sizeof(*saved_key) * self->params.max_keys_per_crypt, MEM_ALIGN_NONE);
saved_salt = mem_calloc_tiny(SALT_SIZE+1, MEM_ALIGN_NONE);
crypt_out = mem_calloc_tiny(sizeof(*crypt_out) * self->params.max_keys_per_crypt, MEM_ALIGN_WORD);
-
+ int i;
for (i = 0; i < 0x100; i++)
mod5[i] = i % 5;
}
And here are all of my results (I haven't modified the john.conf and I'm compiling the bleeding-jumbo branch)
Benchmarking: Traditional DES [128/128 BS AltiVec]... DONE
Many salts: 1353K c/s real, 1467K c/s virtual
Only one salt: 1212K c/s real, 1317K c/s virtual
Benchmarking: BSDI DES (x725) [128/128 BS AltiVec]... DONE
Many salts: 40396 c/s real, 44005 c/s virtual
Only one salt: 40162 c/s real, 42811 c/s virtual
Benchmarking: FreeBSD MD5 [32/32 X2]... DONE
Raw: 5384 c/s real, 5937 c/s virtual
Benchmarking: OpenBSD Blowfish (x32) [32/32]... DONE
Raw: 267 c/s real, 298 c/s virtual
Benchmarking: Kerberos AFS DES [24/32 4K]... DONE
Short: 175513 c/s real, 223869 c/s virtual
Long: 385587 c/s real, 465685 c/s virtual
Benchmarking: LM DES [128/128 BS AltiVec]... DONE
Raw: 10735K c/s real, 12339K c/s virtual
Benchmarking: dynamic_0: md5($p) (raw-md5) [32/32 64x2 (MD5_body)]... DONE
Raw: 2334K c/s real, 2689K c/s virtual
Benchmarking: dynamic_1: md5($p.$s) (joomla) [32/32 64x2 (MD5_body)]... DONE
Many salts: 2554K c/s real, 3360K c/s virtual
Only one salt: 2154K c/s real, 2596K c/s virtual
Benchmarking: dynamic_2: md5(md5($p)) (e107) [32/32 64x2 (MD5_body)]... DONE
Raw: 1338K c/s real, 1644K c/s virtual
Benchmarking: dynamic_3: md5(md5(md5($p))) [32/32 64x2 (MD5_body)]... DONE
Raw: 994124 c/s real, 1194K c/s virtual
Benchmarking: dynamic_4: md5($s.$p) (OSC) [32/32 64x2 (MD5_body)]... DONE
Many salts: 2615K c/s real, 3469K c/s virtual
Only one salt: 2080K c/s real, 2562K c/s virtual
Benchmarking: dynamic_5: md5($s.$p.$s) [32/32 64x2 (MD5_body)]... DONE
Many salts: 2952K c/s real, 3229K c/s virtual
Only one salt: 2184K c/s real, 2416K c/s virtual
Benchmarking: dynamic_6: md5(md5($p).$s) [32/32 64x2 (MD5_body)]... DONE
Many salts: 3185K c/s real, 3570K c/s virtual
Only one salt: 1315K c/s real, 1405K c/s virtual
Benchmarking: dynamic_8: md5(md5($s).$p) [32/32 64x2 (MD5_body)]... DONE
Many salts: 3030K c/s real, 3301K c/s virtual
Only one salt: 2259K c/s real, 2482K c/s virtual
Benchmarking: dynamic_9: md5($s.md5($p)) [32/32 64x2 (MD5_body)]... DONE
Many salts: 3379K c/s real, 3587K c/s virtual
Only one salt: 1316K c/s real, 1397K c/s virtual
Benchmarking: dynamic_10: md5($s.md5($s.$p)) [32/32 64x2 (MD5_body)]... DONE
Many salts: 1687K c/s real, 1787K c/s virtual
Only one salt: 1453K c/s real, 1520K c/s virtual
Benchmarking: dynamic_11: md5($s.md5($p.$s)) [32/32 64x2 (MD5_body)]... DONE
Many salts: 1211K c/s real, 1797K c/s virtual
Only one salt: 979020 c/s real, 1520K c/s virtual
Benchmarking: dynamic_12: md5(md5($s).md5($p)) (IPB) [32/32 64x2 (MD5_body)]... DONE
Many salts: 731622 c/s real, 1172K c/s virtual
Only one salt: 528256 c/s real, 770052 c/s virtual
Benchmarking: dynamic_13: md5(md5($p).md5($s)) [32/32 64x2 (MD5_body)]... DONE
Many salts: 731315 c/s real, 1160K c/s virtual
Only one salt: 477081 c/s real, 769486 c/s virtual
Benchmarking: dynamic_14: md5($s.md5($p).$s) [32/32 64x2 (MD5_body)]... DONE
Many salts: 2261K c/s real, 3202K c/s virtual
Only one salt: 931507 c/s real, 1342K c/s virtual
Benchmarking: dynamic_15: md5($u.md5($p).$s) [32/32 64x2 (MD5_body)]... DONE
Many salts: 2953K c/s real, 3203K c/s virtual
Only one salt: 1131K c/s real, 1341K c/s virtual
Benchmarking: dynamic_16: md5(md5(md5($p).$s).$s2) [32/32 64x2 (MD5_body)]... DONE
Many salts: 1200K c/s real, 1770K c/s virtual
Only one salt: 680601 c/s real, 992130 c/s virtual
Benchmarking: dynamic_17: phpass ($P$ or $H$) [32/32 X2 (MD5_body)]... DONE
Raw: 2034 c/s real, 2991 c/s virtual
Benchmarking: dynamic_18: md5($s.Y.$p.0xF7.$s)(Post.Office MD5) [32/32 64x2 (MD5_body)]... DONE
Many salts: 756352 c/s real, 1170K c/s virtual
Only one salt: 709452 c/s real, 1065K c/s virtual
Benchmarking: dynamic_19: Cisco PIX (MD5) [32/32 64x2 (MD5_body)]... DONE
Raw: 1873K c/s real, 2761K c/s virtual
Benchmarking: dynamic_20: Cisco PIX (MD5 salted) [32/32 64x2 (MD5_body)]... DONE
Many salts: 2168K c/s real, 3265K c/s virtual
Only one salt: 1627K c/s real, 2465K c/s virtual
Benchmarking: dynamic_21: HTTP Digest Access Auth [32/32 64x2 (MD5_body)]... DONE
Many salts: 399590 c/s real, 628286 c/s virtual
Only one salt: 393095 c/s real, 602265 c/s virtual
Benchmarking: dynamic_22: md5(sha1($p)) [32/32 128x1]... DONE
Raw: 861132 c/s real, 1300K c/s virtual
Benchmarking: dynamic_23: sha1(md5($p)) [32/32 128x1]... DONE
Raw: 766288 c/s real, 1184K c/s virtual
Benchmarking: dynamic_24: sha1($p.$s) [32/32 128x1]... DONE
Many salts: 1207K c/s real, 1897K c/s virtual
Only one salt: 1106K c/s real, 1598K c/s virtual
Benchmarking: dynamic_25: sha1($s.$p) [32/32 128x1]... DONE
Many salts: 1455K c/s real, 1895K c/s virtual
Only one salt: 1354K c/s real, 1593K c/s virtual
Benchmarking: dynamic_26: sha1($p) raw-sha1 [32/32 128x1]... DONE
Raw: 1271K c/s real, 1915K c/s virtual
Benchmarking: dynamic_29: md5(unicode($p)) [32/32 64x2 (MD5_body)]... DONE
Raw: 2084K c/s real, 3129K c/s virtual
Benchmarking: dynamic_30: md4($p) (raw-md4) [32/32 128x1]... DONE
Raw: 1250K c/s real, 1855K c/s virtual
Benchmarking: dynamic_31: md4($s.$p) [32/32 128x1]... DONE
Many salts: 1366K c/s real, 2128K c/s virtual
Only one salt: 1081K c/s real, 1755K c/s virtual
Benchmarking: dynamic_32: md4($p.$s) [32/32 128x1]... DONE
Many salts: 1363K c/s real, 2128K c/s virtual
Only one salt: 1109K c/s real, 1749K c/s virtual
Benchmarking: dynamic_33: md4(unicode($p)) [32/32 128x1]... DONE
Raw: 1255K c/s real, 1943K c/s virtual
Benchmarking: dynamic_34: md5(md4($p)) [32/32 128x1]... DONE
Raw: 953345 c/s real, 1293K c/s virtual
Benchmarking: dynamic_35: sha1(uc($u).:.$p) (ManGOS) [32/32 128x1]... DONE
Many salts: 1205K c/s real, 1783K c/s virtual
Only one salt: 1170K c/s real, 1531K c/s virtual
Benchmarking: dynamic_36: sha1($u.:.$p) (ManGOS2) [32/32 128x1]... DONE
Many salts: 1407K c/s real, 1768K c/s virtual
Only one salt: 1298K c/s real, 1524K c/s virtual
Benchmarking: dynamic_37: sha1(lc($u).$p) (SMF) [32/32 128x1]... DONE
Many salts: 1570K c/s real, 1878K c/s virtual
Only one salt: 1473K c/s real, 1601K c/s virtual
Benchmarking: dynamic_38: sha1($s.sha1($s.sha1($p))) (Wolt3BB) [32/32 128x1]... DONE
Many salts: 448537 c/s real, 478185 c/s virtual
Only one salt: 417100 c/s real, 448495 c/s virtual
Benchmarking: dynamic_50: sha224($p) [32/32 128x1 sha2-OpenSSL]... DONE
Raw: 1062K c/s real, 1160K c/s virtual
Benchmarking: dynamic_51: sha224($s.$p) [32/32 128x1 sha2-OpenSSL]... DONE
Many salts: 1164K c/s real, 1246K c/s virtual
Only one salt: 922521 c/s real, 1103K c/s virtual
Benchmarking: dynamic_52: sha224($p.$s) [32/32 128x1 sha2-OpenSSL]... DONE
Many salts: 762752 c/s real, 1258K c/s virtual
Only one salt: 685721 c/s real, 1113K c/s virtual
Benchmarking: dynamic_60: sha256($p) [32/32 128x1 sha2-OpenSSL]... DONE
Raw: 600603 c/s real, 1148K c/s virtual
Benchmarking: dynamic_61: sha256($s.$p) [32/32 128x1 sha2-OpenSSL]... DONE
Many salts: 782131 c/s real, 1245K c/s virtual
Only one salt: 721740 c/s real, 1110K c/s virtual
Benchmarking: dynamic_62: sha256($p.$s) [32/32 128x1 sha2-OpenSSL]... DONE
Many salts: 783980 c/s real, 1251K c/s virtual
Only one salt: 708087 c/s real, 1112K c/s virtual
Benchmarking: dynamic_70: sha384($p) [32/32 128x1 sha2-OpenSSL]... DONE
Raw: 567321 c/s real, 903378 c/s virtual
Benchmarking: dynamic_71: sha384($s.$p) [32/32 128x1 sha2-OpenSSL]... DONE
Many salts: 624921 c/s real, 976440 c/s virtual
Only one salt: 528460 c/s real, 880768 c/s virtual
Benchmarking: dynamic_72: sha384($p.$s) [32/32 128x1 sha2-OpenSSL]... DONE
Many salts: 649344 c/s real, 969170 c/s virtual
Only one salt: 572595 c/s real, 886370 c/s virtual
Benchmarking: dynamic_80: sha512($p) [32/32 128x1 sha2-OpenSSL]... DONE
Raw: 580249 c/s real, 884526 c/s virtual
Benchmarking: dynamic_81: sha512($s.$p) [32/32 128x1 sha2-OpenSSL]... DONE
Many salts: 622310 c/s real, 945760 c/s virtual
Only one salt: 581043 c/s real, 864647 c/s virtual
Benchmarking: dynamic_82: sha512($p.$s) [32/32 128x1 sha2-OpenSSL]... DONE
Many salts: 610312 c/s real, 940819 c/s virtual
Only one salt: 564044 c/s real, 854613 c/s virtual
Benchmarking: dynamic_90: GOST($p) [32/32 64x2 (MD5_body)]... DONE
Raw: 168499 c/s real, 266612 c/s virtual
Benchmarking: dynamic_91: GOST($s.$p) [32/32 64x2 (MD5_body)]... DONE
Many salts: 184883 c/s real, 274307 c/s virtual
Only one salt: 174617 c/s real, 265376 c/s virtual
Benchmarking: dynamic_92: GOST($p.$s) [32/32 64x2 (MD5_body)]... DONE
Many salts: 173491 c/s real, 271929 c/s virtual
Only one salt: 171520 c/s real, 264691 c/s virtual
Benchmarking: dynamic_100: WHIRLPOOL($p) [32/32 64x2 (MD5_body)]... DONE
Raw: 177794 c/s real, 266692 c/s virtual
Benchmarking: dynamic_101: WHIRLPOOL($s.$p) [32/32 64x2 (MD5_body)]... DONE
Many salts: 171648 c/s real, 269886 c/s virtual
Only one salt: 169318 c/s real, 263735 c/s virtual
Benchmarking: dynamic_102: WHIRLPOOL($p.$s) [32/32 64x2 (MD5_body)]... DONE
Many salts: 173132 c/s real, 271368 c/s virtual
Only one salt: 175590 c/s real, 264443 c/s virtual
Benchmarking: dynamic_1001 md5(md5(md5(md5($p)))) [32/32 64x2 (MD5_body)]... DONE
Raw: 565452 c/s real, 897544 c/s virtual
Benchmarking: dynamic_1002 md5(md5(md5(md5(md5($p))))) [32/32 64x2 (MD5_body)]... DONE
Raw: 469529 c/s real, 740582 c/s virtual
Benchmarking: dynamic_1003 md5(md5($p).md5($p)) [32/32 64x2 (MD5_body)]... DONE
Raw: 514227 c/s real, 788692 c/s virtual
Benchmarking: dynamic_1004 md5(md5(md5(md5(md5(md5($p)))))) [32/32 64x2 (MD5_body)]... DONE
Raw: 419968 c/s real, 630582 c/s virtual
Benchmarking: dynamic_1005 md5(md5(md5(md5(md5(md5(md5($p))))))) [32/32 64x2 (MD5_body)]... DONE
Raw: 365056 c/s real, 549783 c/s virtual
Benchmarking: dynamic_1006 md5(md5(md5(md5(md5(md5(md5(md5($p)))))))) [32/32 64x2 (MD5_body)]... DONE
Raw: 311142 c/s real, 486160 c/s virtual
Benchmarking: dynamic_1007 md5(md5($p).$s) (vBulletin) [32/32 64x2 (MD5_body)]... DONE
Many salts: 1248K c/s real, 1864K c/s virtual
Only one salt: 715059 c/s real, 1106K c/s virtual
Benchmarking: dynamic_1008 md5($p.$s) (RADIUS User-Password) [32/32 64x2 (MD5_body)]... DONE
Many salts: 2358K c/s real, 3662K c/s virtual
Only one salt: 1927K c/s real, 2792K c/s virtual
Benchmarking: dynamic_1009 md5($s.$p) (RADIUS Responses) [32/32 64x2 (MD5_body)]... DONE
Many salts: 2431K c/s real, 3740K c/s virtual
Only one salt: 1867K c/s real, 2829K c/s virtual
Benchmarking: dynamic_1010 md5($p null_padded_to_len_100) RAdmin v2.x MD5 [32/32 64x2 (MD5_body)]... DONE
Raw: 671411 c/s real, 1023K c/s virtual
Benchmarking: Eggdrop Blowfish [32/32]... DONE
Raw: 9467 c/s real, 14700 c/s virtual
Benchmarking: DIGEST-MD5 C/R [32/32]... DONE
Raw: 334879 c/s real, 502821 c/s virtual
Benchmarking: Lotus Notes/Domino 6 More Secure Internet Password [8/32]... DONE
Many salts: 50005 c/s real, 70829 c/s virtual
Only one salt: 27406 c/s real, 41777 c/s virtual
Benchmarking: EPiServer SID salted SHA-1 [32/32]... DONE
Many salts: 1230K c/s real, 1904K c/s virtual
Only one salt: 1059K c/s real, 1581K c/s virtual
Benchmarking: HTTP Digest access authentication MD5 [32/32]... DONE
Many salts: 373004 c/s real, 556723 c/s virtual
Only one salt: 327180 c/s real, 532867 c/s virtual
Benchmarking: Invision Power Board 2.x salted MD5 [32/32]... DONE
Many salts: 719667 c/s real, 1211K c/s virtual
Only one salt: 408678 c/s real, 707056 c/s virtual
Benchmarking: Kerberos v4 TGT DES [32/32]... DONE
Raw: 915568 c/s real, 1476K c/s virtual
Benchmarking: Kerberos v5 TGT 3DES [32/32]... DONE
Raw: 12546 c/s real, 21050 c/s virtual
Benchmarking: MSCHAPv2 C/R MD4 DES [32/32]... DONE
Many salts: 1056K c/s real, 1732K c/s virtual
Only one salt: 532172 c/s real, 872414 c/s virtual
Benchmarking: LM C/R DES [32/32]... DONE
Many salts: 1046K c/s real, 1721K c/s virtual
Only one salt: 337664 c/s real, 549941 c/s virtual
Benchmarking: LMv2 C/R MD4 HMAC-MD5 [32/32]... DONE
Many salts: 189952 c/s real, 309368 c/s virtual
Only one salt: 135155 c/s real, 230640 c/s virtual
Benchmarking: NTLMv1 C/R MD4 DES (ESS MD5) [32/32]... DONE
Many salts: 1021K c/s real, 1731K c/s virtual
Only one salt: 534118 c/s real, 845124 c/s virtual
Benchmarking: NTLMv2 C/R MD4 HMAC-MD5 [32/32]... DONE
Many salts: 164534 c/s real, 279430 c/s virtual
Only one salt: 129379 c/s real, 216786 c/s virtual
Benchmarking: HalfLM C/R DES [32/32]... DONE
Many salts: 1016K c/s real, 1740K c/s virtual
Only one salt: 473088 c/s real, 821333 c/s virtual
Benchmarking: Netscreen MD5 [32/32]... DONE
Raw: 958527 c/s real, 1479K c/s virtual
Benchmarking: NT MD4 [32/32]... DONE
Raw: 6519K c/s real, 9837K c/s virtual
Benchmarking: PHPS md5(md5($pass).$salt) [32/32 64x2 (MD5_body)]... DONE
Many salts: 2391K c/s real, 3537K c/s virtual
Only one salt: 893670 c/s real, 1400K c/s virtual
Benchmarking: Post.Office MD5 [32/32]... DONE
Many salts: 865936 c/s real, 1383K c/s virtual
Only one salt: 745624 c/s real, 1191K c/s virtual
Benchmarking: Sybase ASE salted SHA-256 [32/32 OpenSSL]... DONE
Many salts: 138270 c/s real, 210558 c/s virtual
Only one salt: 135052 c/s real, 204625 c/s virtual
Benchmarking: Mac OS X 10.7+ salted SHA-512 [32/32 OpenSSL]... DONE
Many salts: 647577 c/s real, 1011K c/s virtual
Only one salt: 609484 c/s real, 934792 c/s virtual
Benchmarking: Mac OS X 10.4 - 10.6 salted SHA-1 [32/32]... DONE
Many salts: 1513K c/s real, 2425K c/s virtual
Only one salt: 1296K c/s real, 2044K c/s virtual
Benchmarking: 1Password Agile Keychain PBKDF2-HMAC-SHA-1 AES [32/32]... FAILED (cmp_all(1))
Benchmarking: CRC-32 [32/32]... DONE
Many salts: 19506K c/s real, 31462K c/s virtual
Only one salt: 7934K c/s real, 12022K c/s virtual
Benchmarking: sha256crypt (rounds=5000) [32/32 OpenSSL]... DONE
Raw: 165 c/s real, 248 c/s virtual
Benchmarking: sha512crypt (rounds=5000) [32/32 OpenSSL]... DONE
Raw: 118 c/s real, 191 c/s virtual
Benchmarking: Apple DMG PBKDF2-HMAC-SHA-1 3DES / AES [32/32]... FAILED (cmp_all(1))
Benchmarking: DragonFly BSD $3$ SHA-256 w/ bug, 32-bit [32/32 OpenSSL]... DONE
Many salts: 898918 c/s real, 1370K c/s virtual
Only one salt: 799027 c/s real, 1221K c/s virtual
Benchmarking: DragonFly BSD $3$ SHA-256 w/ bug, 64-bit [32/32 OpenSSL]... DONE
Many salts: 862208 c/s real, 1368K c/s virtual
Only one salt: 714598 c/s real, 1232K c/s virtual
Benchmarking: DragonFly BSD $4$ SHA-512 w/ bugs, 32-bit [32/32 OpenSSL]... DONE
Many salts: 572262 c/s real, 1003K c/s virtual
Only one salt: 528076 c/s real, 919994 c/s virtual
Benchmarking: DragonFly BSD $4$ SHA-512 w/ bugs, 64-bit [32/32 OpenSSL]... DONE
Many salts: 571596 c/s real, 999295 c/s virtual
Only one salt: 549376 c/s real, 924875 c/s virtual
Benchmarking: Drupal 7 $S$ SHA-512 (x16385) [32/32 OpenSSL]... DONE
Raw: 39.6 c/s real, 65.7 c/s virtual
Benchmarking: EncFS PBKDF2 AES / Blowfish [32/32]... FAILED (cmp_all(1))
Benchmarking: EPiServer salted SHA-1/SHA-256 [32/32 OpenSSL]... DONE
Many salts: 1000K c/s real, 1777K c/s virtual
Only one salt: 969715 c/s real, 1649K c/s virtual
Benchmarking: FormSpring sha256($salt.$pass) [32/32 128x1 sha2-OpenSSL]... DONE
Raw: 780851 c/s real, 1301K c/s virtual
Benchmarking: GOST R 34.11-94 [32/32]... DONE
Raw: 150643 c/s real, 275903 c/s virtual
Benchmarking: OpenPGP / GnuPG Secret Key [32/32]... DONE
Many salts: 2256 c/s real, 3933 c/s virtual
Only one salt: 2205 c/s real, 3934 c/s virtual
Benchmarking: HMAC SHA-224 [32/32 OpenSSL]... DONE
Many salts: 272729 c/s real, 399896 c/s virtual
Only one salt: 173405 c/s real, 302100 c/s virtual
Benchmarking: HMAC SHA-256 [32/32 OpenSSL]... DONE
Many salts: 221428 c/s real, 394001 c/s virtual
Only one salt: 183000 c/s real, 321053 c/s virtual
Benchmarking: HMAC SHA-384 [32/32 OpenSSL]... DONE
Many salts: 166290 c/s real, 283772 c/s virtual
Only one salt: 143828 c/s real, 259618 c/s virtual
Benchmarking: HMAC SHA-512 [32/32 OpenSSL]... DONE
Many salts: 158632 c/s real, 280268 c/s virtual
Only one salt: 154949 c/s real, 263520 c/s virtual
Benchmarking: hMailServer salted SHA-256 [32/32 OpenSSL]... DONE
Many salts: 691479 c/s real, 1213K c/s virtual
Only one salt: 597908 c/s real, 1097K c/s virtual
Benchmarking: IKE PSK HMAC-MD5 / HMAC-SHA1 [32/32]... DONE
Raw: 119262 c/s real, 214159 c/s virtual
Benchmarking: KeePass SHA-256 AES [32/32 OpenSSL]... DONE
Raw: 30.8 c/s real, 53.6 c/s virtual
Benchmarking: Mac OS X Keychain PBKDF2-HMAC-SHA-1 3DES [32/32]... FAILED (cmp_all(1))
Benchmarking: GNOME Keyring iterated-SHA256 AES [32/32]... DONE
Raw: 314 c/s real, 529 c/s virtual
Benchmarking: Lotus Notes/Domino 5 [8/32]... DONE
Raw: 156211 c/s real, 238126 c/s virtual
Benchmarking: Generic salted MD4 [32/32]... DONE
Many salts: 1087K c/s real, 1701K c/s virtual
Only one salt: 980018 c/s real, 1622K c/s virtual
Benchmarking: MediaWiki md5($s.'-'.md5($p)) [32/32 64x2 (MD5_body)]... DONE
Many salts: 2245K c/s real, 3531K c/s virtual
Only one salt: 955264 c/s real, 1430K c/s virtual
Benchmarking: M$ Cache Hash MD4 [32/32]... DONE
Many salts: 5571K c/s real, 8441K c/s virtual
Only one salt: 2081K c/s real, 3143K c/s virtual
Benchmarking: M$ Cache Hash 2 (DCC2) PBKDF2-HMAC-SHA-1 [32/32]... DONE
Raw: 91.2 c/s real, 137 c/s virtual
Benchmarking: MS Kerberos 5 AS-REQ Pre-Auth MD4 MD5 RC4 [32/32]... DONE
Many salts: 256921 c/s real, 398946 c/s virtual
Only one salt: 119040 c/s real, 184844 c/s virtual
Benchmarking: MS SQL SHA-1 [32/32]... DONE
Many salts: 1321K c/s real, 2045K c/s virtual
Only one salt: 1020K c/s real, 1551K c/s virtual
Benchmarking: MS SQL 2005 SHA-1 [32/32]... FAILED (get_hash[0](0))
Benchmarking: MS SQL 2012 SHA512 [ms-sql12]... FAILED (get_hash[0](0))
Benchmarking: MySQL 4.1 double-SHA-1 [32/32]... DONE
Raw: 594163 c/s real, 928379 c/s virtual
Benchmarking: MySQL [32/32]... DONE
Raw: 3280K c/s real, 4955K c/s virtual
Benchmarking: MySQL Network Authentication SHA1 [32/32]... DONE
Raw: 456153 c/s real, 706120 c/s virtual
Benchmarking: PDF MD5 SHA-2 RC4 / AES [32/32]... DONE
Many salts: 17254 c/s real, 27829 c/s virtual
Only one salt: 17356 c/s real, 27726 c/s virtual
Benchmarking: Netscape LDAP SHA-1 [32/32]... DONE
Raw: 1089K c/s real, 1614K c/s virtual
Benchmarking: NT MD4 [32/32]... DONE
Raw: 1267K c/s real, 1944K c/s virtual
Benchmarking: Nuked-Klan CMS SHA1 MD5 [32/32]... DONE
Raw: 441075 c/s real, 656361 c/s virtual
Benchmarking: ODF SHA-1 Blowfish / SHA-256 AES [32/32]... DONE
Raw: 249 c/s real, 380 c/s virtual
Benchmarking: Office 2007/2010 (SHA-1) / 2013 (SHA-512), with AES [32/32]... FAILED (cmp_all(1))
Benchmarking: Office <= 2003 RC4 MD5 [32/32]... FAILED (get_key(0))
Benchmarking: Oracle 11g SHA-1 [32/32]... DONE
Many salts: 1323K c/s real, 1981K c/s virtual
Only one salt: 1076K c/s real, 1620K c/s virtual
Benchmarking: Oracle 10 DES [32/32]... DONE
Raw: 260425 c/s real, 410764 c/s virtual
Benchmarking: osCommerce md5($salt.$pass) [32/32 64x2 (MD5_body)]... DONE
Raw: 2339K c/s real, 3725K c/s virtual
Benchmarking: GRUB2 / OS X 10.8 pbkdf2-hmac-sha512 [PBKDF2-SHA512 CPU]... FAILED (get_hash[0](0))
Benchmarking: phpass MD5 ($P$9) [32/32 X2 (MD5_body)]... DONE
Raw: 1972 c/s real, 2987 c/s virtual
Benchmarking: PIX MD5 [32/32 64x2 (MD5_body)]... DONE
Many salts: 1848K c/s real, 2751K c/s virtual
Only one salt: 1828K c/s real, 2770K c/s virtual
Benchmarking: PKZIP [32/32]... DONE
Many salts: 3457K c/s real, 5254K c/s virtual
Only one salt: 2074K c/s real, 3114K c/s virtual
Benchmarking: PST custom CRC-32 [32/32]... DONE
Raw: 7294K c/s real, 10844K c/s virtual
Benchmarking: PuTTY Private Key SHA-1 / AES [32/32]... DONE
Many salts: 33216 c/s real, 50634 c/s virtual
Only one salt: 48704 c/s real, 71623 c/s virtual
Benchmarking: Password Safe SHA-256 [32/32 OpenSSL]... DONE
Raw: 474 c/s real, 734 c/s virtual
Benchmarking: RACF DES [32/32]... DONE
Many salts: 1045K c/s real, 1568K c/s virtual
Only one salt: 938675 c/s real, 1422K c/s virtual
Benchmarking: RAdmin v2.x MD5 [32/32]... DONE
Raw: 721446 c/s real, 1106K c/s virtual
Benchmarking: Raw MD4 [32/32]... DONE
Raw: 1133K c/s real, 1722K c/s virtual
Benchmarking: Raw MD5 [32/32]... DONE
Raw: 1029K c/s real, 1555K c/s virtual
Benchmarking: Raw SHA-1 [32/32]... DONE
Raw: 1062K c/s real, 1612K c/s virtual
Benchmarking: Raw SHA-1 LinkedIn [32/32]... DONE
Raw: 988974 c/s real, 1521K c/s virtual
Benchmarking: Raw SHA-224 [32/32 OpenSSL]... DONE
Raw: 914636 c/s real, 1314K c/s virtual
Benchmarking: Raw SHA-256 [32/32 OpenSSL]... DONE
Raw: 832307 c/s real, 1308K c/s virtual
Benchmarking: Raw SHA-384 [32/32 OpenSSL]... DONE
Raw: 646348 c/s real, 988300 c/s virtual
Benchmarking: Raw SHA-512 [32/32 OpenSSL]... DONE
Raw: 606617 c/s real, 962885 c/s virtual
Benchmarking: md5(unicode($p)) [32/32]... DONE
Raw: 1032K c/s real, 1573K c/s virtual
Benchmarking: Salted SHA-1 [32/32]... DONE
Many salts: 1154K c/s real, 1809K c/s virtual
Only one salt: 1008K c/s real, 1519K c/s virtual
Benchmarking: SAP CODVN B (BCODE) [32/32]... DONE
Many salts: 561561 c/s real, 863940 c/s virtual
Only one salt: 523468 c/s real, 800411 c/s virtual
Benchmarking: SAP CODVN F/G (PASSCODE) [32/32]... DONE
Many salts: 450150 c/s real, 692539 c/s virtual
Only one salt: 419819 c/s real, 647168 c/s virtual
Benchmarking: Generic salted SHA-1 [32/32]... DONE
Many salts: 1099K c/s real, 1650K c/s virtual
Only one salt: 1031K c/s real, 1539K c/s virtual
Benchmarking: SIP MD5 [32/32]... DONE
Raw: 406470 c/s real, 595443 c/s virtual
Benchmarking: STRIP Password Manager PBKDF2-SHA1 [32/32]... FAILED (cmp_all(1))
Benchmarking: SunMD5 [32/32]... DONE
Raw: 32.2 c/s real, 46.5 c/s virtual
Benchmarking: SXC SHA-1 Blowfish [32/32]... DONE
Raw: 369 c/s real, 563 c/s virtual
Benchmarking: VNC DES [32/32]... DONE
Raw: 763362 c/s real, 1169K c/s virtual
Benchmarking: WoltLab BB3 salted SHA-1 [32/32]... DONE
Raw: 309811 c/s real, 475170 c/s virtual
Benchmarking: WoW (Battlenet) SRP sha1 [32/32 GMP-exp]... DONE
Raw: 6349 c/s real, 10000 c/s virtual
Benchmarking: HMAC MD5 [32/32]... DONE
Many salts: 369247 c/s real, 543011 c/s virtual
Only one salt: 300710 c/s real, 459802 c/s virtual
Benchmarking: HMAC SHA-1 [32/32]... DONE
Many salts: 455366 c/s real, 687865 c/s virtual
Only one salt: 352732 c/s real, 539346 c/s virtual
Benchmarking: Raw SHA-0 [32/32]... DONE
Raw: 945225 c/s real, 1381K c/s virtual
Benchmarking: Django PBKDF2-HMAC-SHA-256 (x10000) [32/32]... DONE
Raw: 52.3 c/s real, 79.2 c/s virtual
Benchmarking: TrueCrypt [RIPEMD160 AES256_XTS]... DONE
Many salts: 7.8 c/s real, 11.8 c/s virtual
Only one salt: 7.2 c/s real, 11.9 c/s virtual
Benchmarking: TrueCrypt [SHA512 AES256_XTS]... DONE
Many salts: 40.6 c/s real, 59.5 c/s virtual
Only one salt: 40.7 c/s real, 59.9 c/s virtual
Benchmarking: TrueCrypt [WHIRLPOOL AES256_XTS]... DONE
Many salts: 10.3 c/s real, 13.8 c/s virtual
Only one salt: 10.2 c/s real, 13.8 c/s virtual
Benchmarking: Mozilla SHA-1 3DES [32/32]... FAILED (cmp_all(1))
Benchmarking: KRB5 arcfour-hmac [32/32]... FAILED (cmp_all(1))
Benchmarking: KRB5 aes256-cts-hmac-sha1-96 [32/32]... FAILED (cmp_all(1))
Benchmarking: Tripcode DES [128/128 BS AltiVec]... DONE
Raw: 876315 c/s real, 1218K c/s virtual
Benchmarking: SSH RSA/DSA (one 2048-bit RSA and one 1024-bit DSA key) [32/32]... DONE
Raw: 12340 c/s real, 16984 c/s virtual
Benchmarking: pfx [32/32]... DONE
Raw: 2950 c/s real, 3870 c/s virtual
Benchmarking: PDF MD5 RC4 [32/32]... DONE
Many salts: 26021 c/s real, 35330 c/s virtual
Only one salt: 24806 c/s real, 35437 c/s virtual
Benchmarking: WPA-PSK PBKDF2-HMAC-SHA-1 [32/32]... FAILED (valid)
Benchmarking: RAR3 SHA-1 AES (4 characters) [32/32]... FAILED (cmp_all(1))
Benchmarking: WinZip PBKDF2-HMAC-SHA-1 [32/32]... DONE
Raw: 149 c/s real, 202 c/s virtual
Benchmarking: dummy [N/A]... DONE
Raw: 15915K c/s real, 21507K c/s virtual
15 out of 184 tests have FAILED
That's great. I will merge the endian patches soon. Solar seemed to want me to wait with the Altivec stuff (they'd better be in core CVS anyway and he wanted to double-check against Linux/PPC first), we'll see about that. If nothing else we should post them as a separate git-style patch on the Openwall wiki.
BTW we have little resources for fixing endian bugs so just in case you do more fixes, please post them to john-dev mailing list!
Thanks! magnum
Reopening as this is still not fixed in core. We have reports of the patch working on Linux/PPC.
Fixed in 5f03064.
I'm not sure if Apple just used different altivec extensions or what but you cannot compile jtr with powerpc when using a newer compiler.
I've been working on a patch and managed to fix compiler errors for sboxes-s.c but compiler errors exist in DES_bs_b.c and I can't figure out where they are.