Homomorphic Encryption Explained

American Scientist has an article that (finally!) explains homomorphic encryption in simple enough terms that even I understand.

Homomorphic encryption permits me to send you encrypted data that you can manipulate but never know the contents. You send it back to me, I decrypt it, and see the result. Imagine if a web-based wordprocessor could store your document, edit your document, but never know what your document says. Yes, it sounds crazy but it is theoretically possible. In the last 4 years that theory has been getting closer and closer to reality.

I think sysadmins should read this article to get an idea of what crypto might be like in the future.

Alice and Bob in Cipherspace: A new form of encryption allows you to compute with data you cannot read

Posted by Tom Limoncelli in Random thoughts or ideas

1 Comment

Hmm. I'm afraid I suffered the inverse problem; the linked article isn't sufficiently mathematical for me to understand. :-/

Fortunately, I can get the gist of it from the name: basically, encrypt the data using a scheme that ends up with, e.g., an homomorphism between groups or rings or whatever, but so that computing the inverse requires some secret knowledge. Then a recipient can manipulate the result of the automorphism. For example, suppose the object to be encrypted were some kind of regular polygon rooted at some point in the plane. The recipient may be tasked with finding some rigid transformation of that polygon. The homomorphism in this case could be translation, or projection into 3-space or something similar. This would obscure the original vertex coordinates, but still allow a recipient to manipulate the object.