I have come across a few Android apps that provide various features for communicating with a desktop machine (sending text or typing in one direction or another, controlling the desktop pointer with the mobile device, sending mobile notifications to the desktop, etc).
Most of them rely on both machines being on the same network, running a small server application on the desktop, which opens a port for communication (or the other way round if you're controlling the mobile device from the desktop). Generally they have no provisions for authentication. The obvious security flaws are:
- No authentication. Anyone else can easily hop onto the open device/desktop via the open port and control it just as you can.
- No encryption. Anyone can read the stream between the two computers.
Most of the open source apps are up-front about this, an simply advise that you only use them on a trusted network. Some also offer USB access via adb.
I am looking for apps that do not have these flaws (or, potentially, suggesting a new mechanism to an existing app). What existing mechanisms are there for communicating over-the-air between an Android device and an Ubuntu desktop? Bluetooth?
(If the mechanism is generalisable to other platforms, that's also great. If it's more theoretical - like a protocol that needs to be implemented on Android - that's valid too, as there are people doing things like implementing mosh for Android.)