File Sharing
File Sharing involves creating a secure file sharing program in Go, focusing on confidentiality and integrity of shared data.
Overview
File Sharing involves creating a secure file sharing program in Go, focusing on confidentiality and integrity of shared data.
Description
- Implementation of a file sharing application ensuring secure sharing of files among users
- Utilizes various data structures like User, File, FileCollab, Invitation, DoublyLinkedList, Node, MacVerify, FileChildrenList, and FileParentList
- Incorporates encryption and decryption techniques to safeguard file contents during storage and retrieval
- Implements user authentication mechanisms including password hashing and key generation for secure access
- Features file sharing functionalities such as invitation creation, acceptance, and revocation, with encrypted data transmission
- Enables efficient management of file access and collaboration through updates to relationship lists and key regeneration
Skills
- Proficiency in Go programming language
- Understanding of cryptographic principles for data security
- Experience in system design and architecture for building secure and scalable applications