iOS Question BLE Chat issues

techknight

Well-Known Member
Licensed User
I started playing around with the BLE chat example, Mainly so I can do remote control from a phone "remotes" and an iOS Tablet (as a controller device). The Tablet is the peripheral because multiple remotes/phones can connect back into it.

It works fine, however, there is absolutely zero security. it doesn't ask for pairing, it will simply allow the connection. Any connection for that matter, without repercussion.

This is ok, but, on the Peripheral side (the device at which I am connecting to) there doesnt seem to be a way to boot a connection by CentralID, or even a connection at all.

Not being able to do Pairing, I am ok with. but I need to at least be able to negotiate a handshake within my own app if someone connects in and "subscribes". I want to challenge that person/connection, and if it doesn't reply or replies wrong, Boot it.

So any "rogue" person or device could connect in, subscribe and intercept/control the traffic between remote and tablet.

any help here would be appreciated. Thanks!
 

techknight

Well-Known Member
Licensed User
Only thing is, the map really isnt doing anything except keeping a list of IDs. because I do a Peripheral.Write(Null, XXXXX).

So I would have to modify the routine to use a For Each statement?

Also I noticed the centraID isnt sent with the newdata event, so I dont know who is sending what.

I maybe could send it in the payload, But, 20 bytes is precious space. Even then I dont know if the CentralID that shows up in the peripheral side during subscribe, is the same on the other end.
 
Last edited:

techknight

Well-Known Member
Licensed User
What is the connection limit on iOS?

Here is where I am going with this. My app will be used on devices that are in schools. And we all know how kids are, especially the nerdy ones. Why? Because I did things like this when I was that age. I would screw with teachers/coaches when doing goofball things with the PC.

Last thing I want is a kid and his friends sitting up in the bleachers trying to take control of a scorekeeping device during a game, (which I can solve by only accepting/sending data from authorized devices). Or having a bunch of people make and open connections to the active bluetooth device and causing the App to crash or killing off communication to the scoreboard which it too, is over BT.

So im just trying to think of ways to secure this.
 
Top