mardi 21 avril 2015

Infrastructure-less communication between iPhone and Windows PC

Vote count: -2

I’m researching how to wirelessly send data (without using any infrastructure such as a Wifi router) between an iOS app (that we want to publish on the App Store) and a Windows library that I might develop if this is possible. I need to send a few tens of kilobytes at a time and waiting a few seconds for the transmission each time would be acceptable.

Here a a few obvious ideas, and why we can’t use them:

  • Bluetooth Low Energy: BLE is not be available on all PCs that we need to support and it’s not practical to send Bluetooth USB sticks to all our users.

  • Open hotspot on PC, connect iPhone to it: There are PCs with an old Wifi chipset that doesn’t allow this.

  • Open hotspot on iPhone, connect PC to it: When there is no cell coverage, the hotspot is automatically disabled by iOS and there is no way to re-open it programmatically without using private APIs (which we can’t use). Please correct me if I’m wrong about this.

Regarding the wireless, electromagnetic communication methods, basically the only thing that we can rely on is that the PC can connect to a Wifi hotspot.

This led to the idea that the PC could connect to the iPhone on the infrastructure Wifi access point that is opened to support the peer-to-peer features that some of the iOS frameworks use to communicate between devices. I’m aware of these: GameKit and Multipeer Connectivity (please let me know if you know of additional infrastructure-less peer-to-peer communication methods). From what I’ve read and tried (in the case of Multipeer Connectivity), both frameworks can function without bluetooth and since they are supported on iPhones that don’t have a Wifi chipset that supports P2P-Wifi, at least one side must open an infrastructure access point.

I read on Engadget that Apple has made it really difficult to reverse engineer and develop an independent implementation of the GameKit protocol:

How the Multipeer Connectivity communication works hasn’t been documented by Apple, but I’ve found this presentation from a security researcher that explains who the connection is established:

The question is now if it is possible (and how much time it would take) to further reverse-engineer and re-implement the required parts of one of those protocols. Maybe you know about someone who has started such a project? (I couldn’t find anything on Google.)

Please reply with any additional ideas for a solution, or if I’m wrong about any of my assumptions why certain things can’t work.

asked 1 min ago

Infrastructure-less communication between iPhone and Windows PC

1 commentaire: