April 26th, 2011, 07:38 AM

Hash Function with special properties
hey guys
i am currently working on a project for developing a secure authentication platform and am in sorta need for a special type of function.
i need something that could satisfy the following mathematical properties:
if
hash(file1+x_1 )⊚hash(file2+x_1 )⊚hash(file3+x_1 )⊚hash(file4+x_1 )⊚hash(file5+x_1 )=password_1
then
hash(file1+x_2 )⊚hash(file2+x_2 )⊚hash(file3+x_2 )⊚hash(file4+x_2 )⊚hash(file5+x_2 )=hash(password_1⨀Y)=password_2,where Y= F(x_2)
 Y=F(x),ideally Y=x_2,but can be anything that works the maths
 ⊚is the joining function operator,this can be anything like addition,multiplication,etc
 ⨀ this can also be any operator.
i am hopeing that there might be some unconventional hash function that can enable this property.
please contat me if you need further explanation.
thanks
April 26th, 2011, 05:05 PM

It would be helpful if you described the problem you're trying to solve rather than a set of equations you want it to conform to. It's easier (for me at least) to think of the algorithms that way. Also it's likely that there exists a better solution than this special hash function that we could recommend if we knew what you're trying to accomplish.
sub{*{$::{$_}}{CODE}==$_[0]&& print for(%:: )}>(\&Meh);
April 27th, 2011, 06:32 AM

well the thing i'm working on has to do with some pictures. what i do mostly is binary read some pictures and compute the hash value. the computed values are then combined and used to create a password. i have also managed to stenographicaly change the files in order to change the hash values.
now what i want to do is, by knowing how i modify the files, to somehow derive a value (or directly apply the value) that i can apply to the password and hash again and still have a valid password.
April 27th, 2011, 05:13 PM

What I meant was What type of reallife problem are you trying to solve. What are you trying to protect? What type of attack are you trying to protect it from? Forget all about hashes and files for a moment and describe what you want to guarantee by using crypto.
As you've described it you're asking for a hash function which doesn't provide the guarantees a cryptographic hash shouldwhich I can't really help you with. If you describe what it is that you want to do there might be another way to do it.
sub{*{$::{$_}}{CODE}==$_[0]&& print for(%:: )}>(\&Meh);