Mathematicians, I need your help.
Stated simply, I speculate that combining the length of a message with a good digest (say MD5) of that message to produce a 192-bit signature, is more reliable (eg.unique and secure), and far faster, than calculating a 256-bit(+) digest alone.
I'll save you all the primitive logic(*) that leads me to this conclusion and simply ask those versed in logic and math to:
Just to spice things up a little, I'll make a prediction: At some point in the near future, <a digest> + <message length> will become defacto-standard for security purposes.
(*)Update: I've been told offline that I probably shouldn't have omitted my primitive logic, so here it is. Ignoring non-digest length messages for simplicity and using MD5 as my example, though any good digest would do.
There will (on average) be one 16-byte message that maps to each of the possible MD5s. And there will be one 32-byte message that maps to each of the MD5s. And one 48-byte message that maps to each of the MD5s. And so on.
So, for messages of length 0 .. 2^64, there will be (on average) 2^59 messages that will map to each of the MD5s. But if you combine the length with the MD5, you get just 1 message, per combined 192-bit signature, over the same message space. Which reduces the chance of collisions, accidental or deliberate, to a tiny percentage relative to the MD5 alone.
And does so more effectively, and far more economically than moving to a 256-bit digest?
In reply to (OT)Speculation: 128-bit digest + 64-bit length (192-bits) is more reliable and unique than a 256-digest alone. by BrowserUk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |