svn commit: r494952 - head/security/john/files
Alexey Dokuchaev
danfe at FreeBSD.org
Thu Mar 7 15:02:37 UTC 2019
Author: danfe
Date: Thu Mar 7 15:02:36 2019
New Revision: 494952
URL: https://svnweb.freebsd.org/changeset/ports/494952
Log:
Drop OpenSSL dependency from WPA-PSK format support code.
Obtained from: https://github.com/magnumripper/JohnTheRipper/commit/a286ca6
Added:
head/security/john/files/patch-wpapsk.h (contents, props changed)
Added: head/security/john/files/patch-wpapsk.h
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/security/john/files/patch-wpapsk.h Thu Mar 7 15:02:36 2019 (r494952)
@@ -0,0 +1,62 @@
+--- wpapsk.h.orig 2014-10-03 01:08:17 UTC
++++ wpapsk.h
+@@ -13,6 +13,9 @@
+ #include "arch.h"
+ #include "common.h"
+ #include "johnswap.h"
++#include "md5.h"
++#include "hmacmd5.h"
++#include "pbkdf2_hmac_sha1.h"
+ #include "stdint.h"
+
+ #include <assert.h>
+@@ -200,7 +203,6 @@ static int valid(char *ciphertext, struct fmt_main *se
+ #ifndef JOHN_OCL_WPAPSK
+ static MAYBE_INLINE void prf_512(uint32_t * key, uint8_t * data, uint32_t * ret)
+ {
+- HMAC_CTX ctx;
+ char *text = (char*)"Pairwise key expansion";
+ unsigned char buff[100];
+
+@@ -208,10 +210,7 @@ static MAYBE_INLINE void prf_512(uint32_t * key, uint8
+ memcpy(buff + 23, data, 76);
+ buff[22] = 0;
+ buff[76 + 23] = 0;
+- HMAC_Init(&ctx, key, 32, EVP_sha1());
+- HMAC_Update(&ctx, buff, 100);
+- HMAC_Final(&ctx, (unsigned char *) ret, NULL);
+- HMAC_CTX_cleanup(&ctx);
++ hmac_sha1((unsigned char*)key, 32, buff, 100, (unsigned char*)ret, 20);
+ }
+ #endif
+
+@@ -346,9 +345,12 @@ static void wpapsk_postprocess(int keys)
+ #endif
+ for (i = 0; i < keys; i++) {
+ uint32_t prf[20/4];
++ HMACMD5Context ctx;
++
+ prf_512(outbuffer[i].v, data, prf);
+- HMAC(EVP_md5(), prf, 16, hccap.eapol, hccap.eapol_size,
+- mic[i].keymic, NULL);
++ hmac_md5_init_K16((unsigned char*)prf, &ctx);
++ hmac_md5_update(hccap.eapol, hccap.eapol_size, &ctx);
++ hmac_md5_final(mic[i].keymic, &ctx);
+ }
+ } else {
+ #ifdef _OPENMP
+@@ -356,11 +358,10 @@ static void wpapsk_postprocess(int keys)
+ #endif
+ for (i = 0; i < keys; i++) {
+ uint32_t prf[20/4];
+- unsigned char keymic[20];
++
+ prf_512(outbuffer[i].v, data, prf);
+- HMAC(EVP_sha1(), prf, 16, hccap.eapol,
+- hccap.eapol_size, keymic, NULL);
+- memcpy(mic[i].keymic, keymic, 16);
++ hmac_sha1((unsigned char*)prf, 16, hccap.eapol,
++ hccap.eapol_size, mic[i].keymic, 16);
+ }
+ }
+ }
More information about the svn-ports-head
mailing list