Introduction

In this project, you will implement a secure client application for a system that allows users to upload, access, modify, delete, and share files. This project will give you experience not only with writing secure software, but equally importantly, experience with designing, planning, and critically analyzing secure software.

The handout on the course website covers the basic logistics for the assignment. This documentation wiki covers the technical specification and requirements for each of the functions you have to implement. You should treat this wiki as the canonical source of documentation and specification information for the project.

Tip

To get started, we recommend that you read this project documentation by reading each section sequentially, using the “Next” button at the bottom of each page.