The goal of this project is to build a Secure Vault service that allows organization members to store and share text files with authenticity, integrity, and confidentiality guarantees. Each user has a personal vault and can manage files, while groups can have shared vaults with restricted access. Users can create and manage groups. The system includes a server that maintains application state and interacts with clients, and a client application that connects securely to the server using a keystore for user authentication. The client functions as a command interpreter, while the server runs continuously until explicitly stopped, with only one instance active at a time.
Our system architecture can be summarized in the following diagram:
Our secure file access protocol can be summed up by this article. In the end and after talking to the teachers during the evaluation it was determined it was a bit overkill for a current use case but the group was still very happy with the result.
For a full report and project files check out this projects repository at https://github.com/luis25franca/Trabalho-SSI-2024_2025.