Many people use personal cloud storage applications to keep all of their files accessible, backed up and secure. However, they generally are closed source, so they can't easily be viewed or modified. latus is a personal cloud storage application that is open source and written in Python. It provides flexible file sync across computers (nodes) and the cloud, as well as 'zero knowledge' encryption.
Personal cloud storage solutions are common and popular. Many companies provide this capability such as DropBox, Google Drive, Microsoft One Drive, Amazon Drive, etc. However, these applications are closed source, making it difficult for the community to innovate on top of them. latus is a client application written in Python for personal cloud storage. It is open source, and utilizes open source libraries/packages. latus uses 'zero knowledge' encryption so that files can be encrypted prior to being stored in the cloud, providing an additional level of security. It also provides the ability to control where files are stored long term - in the cloud, cold storage, or only on personal systems. latus performs file sync, so that all computers (or "nodes") contain the most current file versions, as well as a file version history. For the cloud storage itself, latus can use existing cloud storage vendors or AWS directly. In this talk I will discuss the major subsystems of latus, the Python packages used, testing, freezing/installing and lessons learned.
James Abel is a HW and SW engineering consultant in the Bay Area. In 2016 he retired from Intel Corporation, most recently as a Principal Engineer working on microprocessor performance architecture, simulation and design automation. He holds MSCS and BSEE degrees. His other interests are music recording, production and performance (bass/guitar).