Version Tomorrow is the first day of the rest of your life
lecture: Olmogo - because it's your data!
A cryptographically secure social network platform
We present “olmogo”, a novel cryptographic, distributed data storage system and end user application that could – within a single platform – replace today’s cloud storage, messaging / chat and social networks with a cryptographically secure alternative in which users can trustfully share their data while the infrastructure itself has no access to the content.
The internet community is currently split in at least two groups: those who cherish the benefits of messaging systems and social networks and share without any concerns their content on services such as dropbox, facebook or whatsapp; and others who fear the loss of governance and adverse usage of their data and thus refrain from using any non-protected/-encrypted service. While the first group is currently significantly larger than the second one, the amount of those who raise concerns about the safety and privacy of their data is increasing steadily not only due to information leaks or nude pictures of celebrities floating around. However, alternative applications for those who would still like to share and enjoy content in a private and safe way, are nearly not present. Although tools such as PGP and OpenPG have been around for years, the quota of users is still low, presumably due to usability issues. Even Google recently withdrew their plans of providing an end-to-end-protected version of their mailing system.
As an alternative we present a platform -- called olmogo -- which provides cloud-, sharing- and messaging-functionality in one. Olmogo consists of a front end application and back end system. As front end a mobile app gives access to the data elements, called mogos, stored in the back end structure consisting of several independent servers, which can also be maintained outside of Olmogo. All mogos are encrypted with state-of-the-art hybrid encryption algorithms. Mogos, however, are not stand-alone elements; they can be linked together to form a directed graph. This metastructure facilitates use cases such as cloud storage, messaging (i.e., chat) systems, social networks, or even email.
The design emphasizes the fact that neither an intruder nor the service provider itself – olmogo itself - has access to the information without the users consent.
The IT infrastructure is generally set up in the following way:
1. Servers and their purposes are distributed. There are at least three independent server components required:
• an authorization server
• a data storage server storing in the actual data / content of a mogo, and
• a directory server storing encrypted mogo metadata and outgoing links, as well as the information how to retrieve data from the storage system.
2. The private keys are distributed between end user device and infrastructure. The loss of an end user device will neither result in the loss of a key nor will it compromise the security of the system.
3. Data stored on storage servers will not only be encrypted but also scrambled into pieces of random ID.
4. User accounts for actual data storage and for storing directory information are completely separated and even have different lifecycles. Thus, without knowing the decryption key, an attacker of the storage system will render unable to reconstruct even the number of files stored for each user, and their size, which could be used to determine file type or even content. A hacker of the directory server, on the other hand, would not even know on which data server to look for data, as this information is encrypted.
5. All encryption and decryption is performed on the user end device. No cleartext information is passed to the servers.
With these properties, it can be expected that attackers need to gain full access to a particular user end device. On the server side, however, care needs to be taken only that data is not lost or manipulated; however, even manipulation would be detected as this would render the stored data useless or at least invalid if appropriate message signing methods are employed.
Data can be shared by sharing the required symmetric key for the hybrid encryption with a third party. Only if this information has been shared, a third party can download and decrypt the according mogo.
To enable and if desired automate complex user actions like data mining or even automated sharing and posting a concept of technical users, so called agents, has been implemented with whom data can be shared as well.
We implemented a first version of olmogo and will launch a mobile App to present its use cases. As the graph structure of mogos allows the mapping of classical filesystems onto olmogo just as well as typical post-response-messages of social networks, or even chronologically ordered messages from chatrooms, access to the olmogo space can be offered in different views that resemble either classical cloud storage, social network pages, or chats, but all within a single, secure space.