Nowadays most information is exchanged in electronic form. This warrants several cryptographic functions such as confidentiality, integrity, authentication, and availability. In order to perform these functions, various cryptographic operations--such as encryption and hashing--are required. Encryption is the commonly used operation for providing cryptographic applications. Homomorphic encryption is a special type through which users can perform operations on the encrypted text that are similar to performing the operations on plain text. Since large numbers of applications are in the cloud, this type of encryption is the need of the hour.
This brief, 126-page book comprehensively presents various homomorphic encryption algorithms and their applications nicely. Though it is a brief book, it has an excellent introductory chapter, which provides a quick and decent overview of various classical encryption algorithms. I like the way the authors present these algorithms--compact, yet complete! They are illustrated with numerical examples to offer better clarity to readers. Hats off to the authors for neatly presenting these classical algorithms within 24 pages.
This book contains six chapters. The second and third chapters provide various homomorphic encryption algorithms, brilliantly using numerical examples. In addition to that, the authors have analyzed security and implementation aspects of these algorithms. These two chapters help the readers choose homomorphic encryption algorithms based on their requirements.
The last three chapters have three applications:(1) a remote end-to-end voting scheme, (2) nearest neighbor queries with location privacy, and (3) private searching on streaming data. All three applications are presented with suitable algorithms, and their performances are also analyzed neatly.
I would recommend this book as a reference for senior undergraduate and graduate students. Researchers and practitioners working in cryptography will also find it useful.