Encrypted Image Tool

Encrypted Image Tool

Computer science major investigated searchable encryption techniques that culminated in an online secure image cloud application.

About the Project


As a semester-long independent project, Dan Sullivan investigated the power and limits of searchable encryption. Searchable encryption is a cryptographic primitive that allows a user to outsource an encrypted collection of data to a third party, but still retain the ability to execute searches over that data in such a way that the server doesn’t learn the user’s search query.

This project resulted in an implementation of a dynamic webpage that allowed users to store encrypted images to be stored on the server while still allowing the user to search over the images without revealing what they are looking for. Beyond simple searching, the searchable encryption primitive was applied to the resizing of images with some success.


Dan Sullivan ’20, Computer Science 


Zach Kissel ’05, Associate Professor, Computer Science

Assignment Type

Independent study project

Languages/Code/Programs/Technology Used
  • The server side code was implemented in Java using Spring
  • The client side was implemented in JavaScript (using SJCL: Stanford JavaScript Crypto Library) and HTML