Secure File Storage and Sharing

Derek W

Backend Engineer
Fullstack Engineer
Software Engineer
Go
Python

Introduction

Designed and implemented a top-ranked secure file storage and sharing system using Go, achieving a Top 10 class rank for security. The project provides functionalities such as file saving, loading, overwriting, appending, sharing, and revocation of shared files.
Concepts: Go, Fuzz Testing, Data Structures, Cryptography, Design and Architecture

Key Features

User Authentication
File Storage and Retrieval
Secure File Sharing through UUID-generated Invitations
Access Revocation

Challenges and Learnings

Employed fuzz testing to rigorously validate the system’s security measures against various threat models, including Datastore adversaries. Engineered efficient data structures encapsulated as Go structs, ensuring both confidentiality and integrity of the stored data on Datastore.
Bandwidth and Append Efficiency: The total bandwidth used in a call to append should not scale with anything besides the appended content size
Retrieve Access Control The system should not allow a user that previous had access to a file but then lost the privilege to retrieve a file that they do not have access to
Session Management The system need to be able to handle multiple concurrent sessions for a single user
String Encoding The system should be able to handle arbitrary binary data. It need to properly handle edge cases like: “\x86” as hex-encoded string v.s. “\x86” as a string with 2 characters
Partner With Derek
View Services

More Projects by Derek