Privacy-preserving price-sensitive ranking system for online service - Ho, Yi Le (2016)
When it comes to purchasing items online, ranking the items by the price is common function used by users. However, there are cases when the price of the goods and services is sensitive and showing the price straight online is not recommended. While ranking the price of goods without encryption is common, there hasn’t been a research done on ranking the price in its encrypted form. Hence, the purpose of this project is to design a suitable cryptosystem that allows privacy-preserving price-sensitive ranking system. This report first analyses the advantages and disadvantages of different types of cryptosystems, and then determines the best cryptosystem to be implemented for this project. Paillier cryptosystem was chosen for the implementation of the price-sensitive ranking system, because it is simple to implement, offers better efficiency, security and allow computations in its encrypted form. Paillier cryptosystem is an asymmetric partially-homomorphic encryption that uses public key for encryption and private key for decryption. Its homomorphic properties allow arbitrary number of addition computations. The method used in the implementation of price-sensitive ranking system on Java is to first encrypt the prices using Paillier algorithms. Then, using the subtractive properties derived from its algorithms of Paillier, the difference between two prices can be calculated in its encrypted form. Finally, the user who has access to the private key would be able to decrypt the results and perform ranking of price using the scoring system. The implementation of this method fulfills the requirement that it has to be price-sensitive as no users, except the one who encrypt the price has access to the actual price. The results using Java has shown that proposed method used in this project is able to perform ranking of price without accessing the actual price. This shows that the implementation of privacy-preserving price-sensitive ranking system using Paillier cryptosystem is possible.