On 03/12/16 11:54, Tim Hutt wrote:
Android and iOS don't allow you to specify the keys used by BLE's native
encryption, but there is nothing stopping you using BLE as an insecure
transport and implementing your own encryption on top of it (well apart
from time, skill, and flash & RAM constraints). If you did that you would
be able to use whatever keys you wanted because you implemented it.

This seems like something that would be nice to have as a proof of concept demo in the core repo. I'm always interested in security, but it's far enough outside my own core area of competence (HW design, RF and sensors) that I know trying to roll my own code would do more harm than good and give a false sense of security. If there are people on the dev list with up to date experience in the field, I suspect a decent number of end users would benefit from a basic starting point to encrypt BLE communication across a simple service and characteristic set. The nRF52 isn't 'fast' in terms of clock speed but it's still a reasonably capable chip with on board AES and single precision HW floating point acceleration, and there is a decent amount of flash and SRAM available.

Reply via email to