Today Emanuele and I defended our thesis (but the graduation ceremony will be on Friday)!
The topic of the thesis was the Telekinesis project, a system to easily transfer files on a LAN without having to configure a Samba share or something similar. The project is based on the Telepathy framework, Empathy and telepathy-salut, a connection manager for serverless instant messaging in local networks which discovers automatically available contacts using Avahi. Despite being based on instant messaging programs you don’t have to rely on the chat to send/receive files thanks to nautilus-sendto and to the modularity of Telepathy.
An important requirement for the thesis was to develop a secure system: other users should not be able to intercept the files you are sending and they should not be able to pretend to be someone else. This is hard to achieve without relying on a certification authority or something similar, so we decided to use an SSH-like system where it is the user’s responsibility to decide whether to trust or not the other contact.
This means that contacts that support secure chats and file transfers will be considered untrusted and identified in the user interface with the “security-medium” icon. When the user decide that a contact’s identity can be trusted (by chatting online or directly as you are in a local area network and maybe you’re both sitting in the same room) he marks him as trusted and, from that moment on, the system will check the contact’s credentials (i.e. auto-generated X.509 certificates) to verify they didn’t change. This is not the best level of security you can reach but it’s the best you can have without something like a certification authority and without requiring any extra efforts for users.
Note that the file transfer part of the thesis will be merged soon with upstream programs but the security part is a proof of concept and cannot be merged as-is, so don’t criticise the user interface too much!
We would like to thank all the Collabora guys who worked with us, in particular Sjoerd and Xavier. And, of course, our supervisors fog and gg!