Regarding cryptography and the issue of collisions, I posed a question as to whether it was ever possible to store every single possible combination of a bit array of a particular size, in a bit array that was at least one bit smaller, with apodictic certainty that no collision would occur.
The answer given to me by one fellow was no, and he used the following example:
Given 4 bits
0000
It has 16 possible combinations
Try storing 16 possible combinations in 3 bits:
000
As an aside, I imagined that if "Qubits" ever took off, that this could perhaps be done.
In any case, whileWhile this was seemingly obvious on the smaller scale, I wonder that if you scaled up, whether this would remain true, given that more bits will offer far more flexibility and options ( and yet conversely you requiring more combinations to account for ). I have a hard time imagining it NOT remaining true, however perhaps there is something I am overlooking.
So againWorking under the presumption that this is not possible; Why is it that md5 is reprimanded for generating collisions: https://en.wikipedia.org/wiki/MD5#Collision_vulnerabilities
Is it possible to store N bits of unique combinationsWhen frankly given the principle, in N-1 bits? Unique meaning that you guarantee with apodictic certainty that literally no collision is possiblehash should be immune to this problem?
Thanks.