Storing files in the cloud has many advantages. We can access them from anywhere and from any kind of device, but we also become dependent on the service providers. This can be fixed by manually storing the files on different cloud storages, but this way we lose a major benefit of the cloud, the easy data storing.
Similarly to the cloud services the solution of the problem should be hidden from the user which can be achieved by creating a multiple cloud platform aggregator client application. In this thesis such a program is presented that decreases the dependency towards the cloud providers.
The network coding technology is used for handling multiple cloud storage which in addition to providing redundancy it also gives encryption to some degree and increases the downloading speed. The application can also use standard encryption on the files. With this and the secure communication the application prevents unauthorized accesses to the user's data. Every external library and the application are open source so the users can confirm that the software doesn't contain any malicious code.
I chose the application to be a native multiplatform fat client to provide the best possible user experience. Between the cloud and the local file system we can use drag and drop to move files easily and the program also contains GPU acceleration for the network coding calculations.