OK so pre shared key is my best option I guess.

What I don't understand is, if is possible to have pre-shared key, that is
accesible through the cloud, why I cannot generate a key on the cloud and
access it doing a request, from both the app and the device (through GPRS).

Maybe is not a OOB pairing in the strict Bluetooth protocol definition of
the word, but what I want to do is encrypt the BLE communication with a key
that is not exchange via Bluetooth.

2016-12-02 11:59 GMT+01:00 Tim Hutt <[email protected]>:

> On 2 Dec 2016 10:52 a.m., "Rodrigo Lorenzo Leal" <[email protected]>
> wrote:
> >
> > Tim.
> >
> > Thanks for the reply! So there's no way for the BLE library on iOS and
> > Android to get the key from an external source? (like a server request)
> and
> > use that?
>
> Correct.
>
> > Also, how does an in house developed crypto will work and how could be
> > implemented?
>
> With difficulty! The simplest way is to use a Notify characteristic and a
> Write Without Response characteristic to form a normal TCP-like channel
> (there are supposed to be native Channel-Oriented Connections coming but I
> wouldn't hold my breath). Then you can use any crypto, e.g. (D)TLS or QUIC
> or whatever. Maybe use DTLS as it is more designed for this sort of thing.
> For key exchange I would use ECJPAKE.
>
> All of that uses a ton of flash and ram so it may not be possible on a
> small micro.
>



-- 
Rodrigo Lorenzo Leal

Reply via email to