Among several proposed solutions for private processing in cloud computing, perhaps the most promising class of approaches is privacy-preserving computation. This thesis reviews existing approaches for private processing and demonstrates practical use of one such novel approach for privacy-preserving computation, fully homomorphic encryption (FHE). FHE allows arbitrary computations on ciphertexts and yields a result, which, when decrypted, is the same as if they were performed on corresponding plaintexts. We develop a simple web bank cloud application that uses FHE to preserve privacy of banking transactions. In order to support FHE client-side, we produce two architecturally different setups that can be used with the same web application. Furthermore, we evaluate and discuss their practical applicability in the cloud according to predefined metrics. Our results indicate that even for trivial use-cases, where performance of encrypted processing, encryption or decryption is not a limiting factor, the main factors preventing broader adoption of FHE at present are significant communication and initialization overheads both client and server-side, lack of support for several high level programmatic routines and lack of developer-friendly frameworks. To the best of our knowledge, some of these issues have not yet been addressed in the literature, as this thesis is one of the early attempts to bring FHE to the web.
|