Encrypted Image Tool
Computer science major investigated searchable encryption techniques that culminated in an online secure image cloud application.
About the Project
Overview
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.
Student
Dan Sullivan ’20, Computer Science
Instructor
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