Ble - SMP 协议详解

SMP Overview

  • 蓝牙的配对过程中,加密是核心步骤,SMP关乎到蓝牙通信的安全。
  • 在固定信道0x0006中传输数据,0x0006 LE SMP(secure manager protocol)b
  • 整个smp过程根据是否支持ble security connection,设备IO capabilities,是否支持OOB(out of band)总共分为6种情况,最终协商确定1种方式实现smp flow。

SMP 命令格式

如果支持LE security connect , L2CAP MTU = 65
否则 L2CAP MTU = 23
在这里插入图片描述
在这里插入图片描述
所有的交互从pairing request 开始,如果设备不支持smp,需要回复一个pairing fail event, 携带的reason为not support

超时

开启smp 之前,会起一个timer,
每次完成一个command ,smp timer 会被重置,重新计时
smp 结束之后,这个timer 需要被关闭
如果timer =30s,smp 仍未完成,smp timeout

SMP 流程

smp 过程大概分为四个部分

  • step1. 交换信息
  • step2. 产生STK/LTK,(short term key,long term key)
  • step3. 在stk /ltk的基础上加密link
  • step4. 在加密的link中分发 特殊的key
    以下配图以LE legacy pairing为例说明:
    在这里插入图片描述

step1:pairing feature exchange

在这一步中,分两种情况,从master发起或者从slave 发起,后半段操作并无区别。
master 收到slave 的request 之后,会主动发起pairing request。
在这里插入图片描述
在这里插入图片描述

举个例子

在这里插入图片描述
在这里插入图片描述
根据Secure co

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值