Take the 2-minute tour ×
Cryptography Stack Exchange is a question and answer site for software developers, mathematicians and others interested in cryptography. It's 100% free, no registration required.

A homomorphic hash function is a function $H : A \to B$ between two sets with some algebraic structure $(A, *)$ and $(B, \star)$ such that

  • $H$ is collision resistant, i.e. it is hard to find $x \neq y$ such that $H(x) = H(y)$ and
  • $H$ is a homomorphism, i.e. $H(x * y) = H(x) \star H(y)$.

Are there any practical realizations of such a homomorphic hash function, or even a homomorphic signature scheme (i.e., where we can "add" valid signatures to get a signature of the "sum" of two messages)?

Even better, are there even any libraries implementing this?

share|improve this question
1  
As far as I know, there is yet no practically efficient implementation of fully homomorphic encryption on the horizon. So the answer to your question would evidently be negative, at least for a good hashing scheme, IMHO. –  Mok-Kong Shen Feb 27 '13 at 11:00
1  
FYI, I posted a question on Meta a while back about this type of question and whether we should allow them. Perhaps you would like to weigh in? –  mikeazo Feb 27 '13 at 12:31
    
sashank, I think you might need to specify more precisely exactly what you mean by homomorphic hashing. –  D.W. Feb 27 '13 at 15:45
    
@D.W., sashank: I edited the question to contain an explanation of what is searched here. –  Paŭlo Ebermann Feb 27 '13 at 20:16
    
You might want to add an additional constraint; the Identity function pedantically meets all the requirements listed; it is hard (impossible) to find $x \neq y$ with $I(x) = I(y)$, and for it homomorphic with any operation $\star$, that is, $I(A \star B) = I(A) \star I(B)$ –  poncho Feb 27 '13 at 22:20
show 5 more comments

1 Answer 1

There's plenty of research in this area. I'll give you just a small sampling:

Like I said, this is only a small subset of the available research in this area. I found most of these through about 5 minutes with Google Scholar. I recommend you start by doing a literature review to familiarize yourself with the research literature on this subject: search to find as many relevant papers as possible; read each such paper; for each paper you find, read the related work section and bibliography to try to identify other relevant papers, and also use Google Scholar or other sites to find other papers that cite that paper that might be relevant; for each additional relevant paper you find, repeat the process.

After you have done this process, you should be in a better position to ask a more narrowly targeted question with a particular set of requirements -- or, if you're lucky, you might have found a solution to your particular problem already described in the literature!

share|improve this answer
1  
I know i can do it myself if it was research references, i am not a noob , i have been good community player and good netizen while asking questions, my question was precisely on a library or platform which implemented these techniques , which got distorted by edits , i could not find myself the library through google . thts reason i have posted the question, am NOT looking for research references –  sashank Feb 28 '13 at 6:53
1  
@sashank: Note though that I had responded to your original (unedited) OP with a comment and given there a negative answer. –  Mok-Kong Shen Mar 2 '13 at 14:26
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.