蓝牙BLE协议详解:什么是BLE主机和从机?如何提高BLE的安全性?
觉得有道理? 左侧有“公众号”、“微信号”、“头条号”,随便你想加哪个都行!还不过瘾,直接Call我们吧!
前面我们讲了蓝牙的几个冷知识
链接在此:经典蓝牙和BLE蓝牙,在应用上的4个冷知识,产品经理必看!
总结下来,就是:蓝牙BLE,是物联网低功耗近距离传输的最佳手段之一。
本文主要讲:蓝牙BLE协议的那些事
主机和从机的关系
BLE系统中,有主机(Central)和从机(Peripheral)。
从机负责发送广播,主机负责收听广播并发起连接。
主机不发广播,从机无法主动连接主机,只能由主机主动连接从机。
一个主机能够连接多个从机,一个从机只能被一个主机连接。
因此在各种物联网和智能硬件应用中,主要是以手机作为主机,外围设备做为从机。一般都是1主对1从或1主对多从的使用。例如一台手机挂了好几个手环。
反面案例:我们以前遇到一个特殊场景,充分体现了BLE连接的局限性:有一款智能锁,要求用手环能开锁,用手机也能开锁,但要求手环也能连接手机。
只实现前两个功能很容易,智能锁作为从机,手机作为主机,手环也作为主机。但是要实现手环连手机,双主机是无法连接的,就需要其中一个作为从机,这种情况下只能让手环的BLE做成双模的。最终因为不靠谱,放弃掉了这套设计方案。
广播,也能传数据
蓝牙BLE,主机和从机不连接,也能够发数据。这就是iBeacon、微信摇一摇蓝牙基站。
从机发送广播,广播内容中可以包含31字节的数据。这些数据可以被从机周围所有的BLE主机接收到。
BLE室内定位标签,用的也是这种方式,标签不断的发送广播,BLE基站收到广播信息,并根据信号强度判断所处的位置。
广播,可以理解为不断的向外发射电磁波,感觉是比较耗电的。但是BLE本身发射功率很低,每次广播只需要1mS的时间,广播间隔可以调大到10秒以上,所以实际上耗电量非常小。一个iBeacon的基站,靠纽扣电池都可以工作大半年。
连接
广播,只能做到从机到主机的单向小数据传输。
BLE连接之后,就可以做到双向传输了。虽然速度只有几K,但也足够传输控制指令和传感器信息这些简单数据了。
从机一旦被连接,就无法发送广播,也无法被其他设备连接。
从机这么容易被抢占,岂不是设备也很容易被入侵?从机可以和主机约定一个自己做的“握手协议”,如果握手不成功,就把主机给踢出去,然后继续广播等待其他主机。
像很多ofo和摩拜的共享单车,可以用BLE软件连上去,并且发送数据过去。只不过发了数据过去单车不会理你的。
BLE的安全性
从上面讲的特性来看,BLE的胜在低功耗和方便使用,但安全性不太好。
未加密的BLE数据,就是公开数据。如果要加密,必须对BLE上传输的明文做加密才行。BLE的智能锁,都需要在密钥算法上加密, 不能直接就发明文了。也要做到动态密钥,防止被截获之后仿造的密钥。
觉得有道理? 左侧有“公众号”、“微信号”、“头条号”,随便你想加哪个都行!还不过瘾,直接Call我们吧!
前期精彩内容回顾:
一种NB-IOT和BLE双模的蓝牙智能锁解决方案
物联网产品设计,选不选蓝牙?选经典蓝牙还是BLE?一文看懂
头条号:https://www.toutiao.com/i6543811495182991880/