Remix.run Logo
phinnaeus 2 days ago

Here is a hash function that does not have hash collisions:

  fn hash(data):
    return data
Charon77 2 days ago | parent | next [-]

Well it no longer constrains the data in a fixed output length.

dbdr 2 days ago | parent [-]

Sure, but if you constrain to fixed output length, you will definitely have collisions (Pigeon Hole Principle). There's no way around that.

hsbauauvhabzb 2 days ago | parent [-]

padding with zeroes to a fixed length and prepending the original length would suffice, but you’d have to have a fixed length of double infinity to account for both the length information and the hash information, and the hash is less efficient than the original information.

tux3 2 days ago | parent | prev | next [-]

That is a function, but not a hash function!

oliver236 2 days ago | parent | prev [-]

what programming language is this?