# Are there any practical implementation of a homomorphic hashing or signature scheme?

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?

-
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
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