Inspiration

Inspired by security, driven by insomnia.

What it does

It allows an authenticated user to view private and highly confidential files in a public area on their PC by using a HoloLens. The data is obscured on their PC monitor but securely deciphered and displayed within the Hololens display.

How we built it

An Apache Tomcat server runs a Java application with RESTful APIs that securely manages encrypted user data in MySQL and AWS S3 buckets. An AngularJS client communicates with the server and gives the user a visual means of interacting with the application. The HoloLens runs a Unity application that detects visual ciphers on the client application and fetches the data from the server to be displayed as an overlay on the PC.

Challenges we ran into

We originally had an intricate solution where an application running on the computer would stream the visual content on the user's PC (similar to VNC or sharing screen features) to a secured remote server. The app would complete obscure the user's PC visually (displaying nothing but a cipher) but still allow for a interaction. The HoloLens could use this cipher to fetch the proper session information (from a secured DB) and connect to the remote server and view a live stream of the PC. We spent ~9 hours researching this solution only to have exhausted all possible technical implementations (it's really hard to stream the PC's screen and block it at the same time without affecting the stream) and had to default to a backup plan.

Accomplishments that we're proud of

The journey; we learned a lot and imparted strong development practises on each other. We're proud to have not given up (even if our original plan failed) and better yet to have persisted through technical and conceptually difficult challenges with little rest.

What we learned

How do use HoloLens, develop in unity, incorporating multiple technologies, lots of front-end (for some of us), that we should use ORMs next time!

What's next for For you eyes only

If we're not done by 9am, maybe getting it to work properly in the future and figuring out a way to develop with our original plan.

Share this project:

Updates