|
|
Message-ID: <20150506164109.GA2886@openwall.com>
Date: Wed, 6 May 2015 19:41:09 +0300
From: Aleksey Cherepanov <lyosha@...nwall.com>
To: john-dev@...ts.openwall.com
Subject: bare tag test works only if the first test hash contains format tag
(was: Generic parsing functions -- prototype)
On Mon, May 04, 2015 at 11:04:35PM +0300, Aleksey Cherepanov wrote:
> The code works for good bare hashes. But it will work wrong for
> shorter hashes. It fails self tests because $SHA512$ without hex
> part is tried:
> FAILED (promiscuous valid ($SHA512$))
>
> Interestingly format tag is not part of fmt_main, the tag is extracted
> from self tests matching $ (so the test will not be applied if the tag
> is not in $).
I think the check of bare format tag is performed only if the first
test hash has the tag. So current raw-sha512 does not get the check.
I added
printf(" valid(): %s\n", ciphertext);
to sha512_common_valid() in rawSHA512_common_plug.c .
With the following test vector:
static struct fmt_tests tests[] = {
{"f342aae82952db35b8e02c30115e3deed3d80fdfdadacab336f0ba51ac54e297291fa1d6b201d69a2bd77e2535280f17a54fa1e527abc6e2eddba79ad3be11c0", "epixoip"},
{FORMAT_TAG "f342aae82952db35b8e02c30115e3deed3d80fdfdadacab336f0ba51ac54e297291fa1d6b201d69a2bd77e2535280f17a54fa1e527abc6e2eddba79ad3be11c0", "epixoip"},
{NULL}
};
in rawSHA512_common.h , I don't get the test of bare format tag:
Benchmarking: Raw-SHA512 [SHA512 128/128 SSE4.1 2x]... valid(): f342aae82952db35b8e02c30115e3deed3d80fdfdadacab336f0ba51ac54e297291fa1d6b201d69a2bd77e2535280f17a54fa1e527abc6e2eddba79ad3be11c0
valid(): *
valid(): f342aae82952db35b8e02c30115e3deed3d80fdfdadacab336f0ba51ac54e297291fa1d6b201d69a2bd77e2535280f17a54fa1e527abc6e2eddba79ad3be11c0
valid(): $SHA512$f342aae82952db35b8e02c30115e3deed3d80fdfdadacab336f0ba51ac54e297291fa1d6b201d69a2bd77e2535280f17a54fa1e527abc6e2eddba79ad3be11c0
With other order of tests
static struct fmt_tests sha512_common_tests[] = {
{FORMAT_TAG "f342aae82952db35b8e02c30115e3deed3d80fdfdadacab336f0ba51ac54e297291fa1d6b201d69a2bd77e2535280f17a54fa1e527abc6e2eddba79ad3be11c0", "epixoip"},
{"f342aae82952db35b8e02c30115e3deed3d80fdfdadacab336f0ba51ac54e297291fa1d6b201d69a2bd77e2535280f17a54fa1e527abc6e2eddba79ad3be11c0", "epixoip"},
{NULL}
};
I get the check
Benchmarking: Raw-SHA512 [SHA512 128/128 SSE4.1 2x]... valid(): $SHA512$f342aae82952db35b8e02c30115e3deed3d80fdfdadacab336f0ba51ac54e297291fa1d6b201d69a2bd77e2535280f17a54fa1e527abc6e2eddba79ad3be11c0
valid(): *
valid(): $SHA512$f342aae82952db35b8e02c30115e3deed3d80fdfdadacab336f0ba51ac54e297291fa1d6b201d69a2bd77e2535280f17a54fa1e527abc6e2eddba79ad3be11c0
valid(): $SHA512$
valid(): $SHA512$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
valid(): f342aae82952db35b8e02c30115e3deed3d80fdfdadacab336f0ba51ac54e297291fa1d6b201d69a2bd77e2535280f17a54fa1e527abc6e2eddba79ad3be11c0
I think it's a problem.
Thanks!
--
Regards,
Aleksey Cherepanov
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.