Computer security has been in the news for many reasons lately. In today's world, numerous security tactics exist, but hackers are often finding ways around them. Companies for these reasons are going to great lengths to protect their user's data, but is it enough.
What it does
Secure Galaxy is a tool that allows users to protect their files on the cloud from hackers and cloud storage companies themselves. By linking together numerous cloud storage accounts, it creates a secure "galaxy" in the sky with unique and clever security properties. The galaxy is meant to resemble the structure of the Google File System.
How I built it
Secure Galaxy uses three main algorithms to secure data. First, the file contents are scrambled using a pseudo-random number generator to generate indices that swap characters (similar to the modern Fisher-Yates Shuffle Algorithm). Storing the seed used to initialize the generator allows the results to be reproducible/reversible. Next, the data is split evenly, and then each piece is encrypted with EAS authentication encryption. Lastly, each piece is sent to a Dropbox account (typically a lot of accounts). This scheme means that a breach on any Dropbox account will reveal at most 1/n part of the file, and that part is scrambled with no information on where each byte goes. Tampering is detected by the authentication encryption, and data repairs occur through stored parity data similar to RAID. Encryption keys and metadata are stored locally and encrypted on a Mongo database.
Challenges I ran into
Making sure everything is synced was tricky. Byte data was hard to debug at times, and managing multiple cloud accounts and testing various types of data corruption was difficult. Finding the proper libraries to use was also time consuming and cumbersome.
Accomplishments that I'm proud of
Data can be fully stored and retrieved successfully. I'm glad to be finished on time.
What I learned
This was a great experience to apply algorithms that are common in computer science. We learned a lot about data storage and how encryption works.
What's next for Secure Galaxy
Hopefully a better user interface.