当前位置: 首页 > news >正文

欢乐熊大话蓝牙知识24:LE Secure Connections 是 BLE 的安全升级术

🔐《LE Secure Connections 是 BLE 的安全升级术》

还在用 Just Works?你家智能锁可能比你家门还容易被打开。

今天我们来聊聊 BLE 中的“防身绝技”——LE Secure Connections(LESC),它到底有多安全?又该怎么用?


🕶 一、LE Secure Connections 是啥?一句话解释:

LE Secure Connections 是 BLE 自 4.2 版本引入的“升级配对方式”,

它不再是“小打小闹的 TK & STK”,而是用上了椭圆曲线密码学(ECDH),实现更安全、更抗破解的密钥协商。
在这里插入图片描述

简单点说:以前用“数字锁”,现在上“指纹+密码+监控”。


🔍 二、LE Secure Connections 到底改了啥?

比较维度传统配对(Legacy Pairing)LE Secure Connections(LESC)
加密算法TK(Temporary Key) → STKECDH(Elliptic Curve Diffie-Hellman)
安全等级容易被 MITM、中间人攻击强抗 MITM、防窃听
BLE版本支持BLE 4.0 / 4.1BLE 4.2+
性能要求略高(需要 ECC 运算)

🔐 LESC 的核心思路是:我不直接发密钥,我用 ECDH 让你自己算出来。


🧠 三、ECDH 是啥?

ECDH(Elliptic Curve Diffie-Hellman) 是一种加密算法,用来做——

👉 安全的密钥协商:设备 A 和设备 B 各自有一个密钥对(公钥 + 私钥),他们交换公钥后,双方各自计算出相同的共享密钥

而这个共享密钥,黑客就算全程监听也推不出来

就像这样👇:

设备A:私钥A + 公钥B = 会话密钥K
设备B:私钥B + 公钥A = 会话密钥K

是不是感觉像魔术?但这是数学的魔法。
在这里插入图片描述


🧰 四、配对模式支持对比(有图有真相)

配对方式是否支持 LESC是否抗 MITM是否用户友好
Just Works
Passkey Entry❌(需人工输入)
Numeric Comparison
Out of Band(OOB)❌(需额外设备)

📌 也就是说,只要 BLE 设备支持 4.2+,就可以通过这些模式使用 LESC!


💡 五、开发者角度:我该怎么开启它?

✅ 对于 EFR32:

// 开启 LESC 和 MITM 保护
sl_bt_sm_configure(SL_BT_SM_bonding | SL_BT_SM_mitm_required | SL_BT_SM_secure_connections, sm_io_capability_display_yesno);// 设置为可配对
sl_bt_sm_set_bondable_mode(1);

✅ 对于 nRF52:

ble_gap_sec_params_t sec_params = {0};sec_params.bond = 1;
sec_params.mitm = 1;
sec_params.lesc = 1;  // 启用 LE Secure Connections
sec_params.io_caps = BLE_GAP_IO_CAPS_DISPLAY_YESNO;sd_ble_gap_authenticate(conn_handle, &sec_params);

🎯 关键是启用 lesc = 1,并配合支持用户交互的 IO Capabilities(比如显示 + 输入)。


🧪 六、用 LESC 会带来什么“副作用”?

优点缺点
安全性高,防窃听、防 MITM对性能要求高一点(ECC计算)
公钥交换更安全部分老设备不兼容
适合智能门锁、支付设备初次配对可能略慢一点点

但是!只要你设备够新,完全值得开启!
在这里插入图片描述


📋 七、总结一句话:

LE Secure Connections 是 BLE 世界的“HTTPS”!

如果你的蓝牙项目涉及安全敏感数据(支付、门锁、身份认证),不启用 LESC,就像明文传密码一样危险!


🚀 八、延伸阅读推荐:

  • 《BLE 安全机制是摆设还是真保护?MITM、防窃听你了解吗?》
  • 《蓝牙设备配对和加密原理,你真的搞懂了吗?》
  • 《你知道蓝牙连接里也有“临时会话密钥”吗?》

写在最后

BLE 安全这回事儿,不是“能用就行”,而是“用得对才行”。

LE Secure Connections 就像你租房时不再用123456,而是改用带防盗门的门禁卡+人脸识别。

别再问“LESC 有没有必要开”,你现在该问的是:你还敢不开?


📣 如果觉得本文对你有帮助,记得点赞+收藏+转发。
下次我们聊聊 BLE 的“签名机制 CSRK” —— 给通信内容打上“电子签章”的高级玩法。

需要 BLE 安全配置模板?留言:“我想要配置速查表 🔐”


http://www.dtcms.com/a/263690.html

相关文章:

  • HarmonyOS应用开发高级认证知识点梳理 (一) 布局与样式
  • 微信小程序使用秋云ucharts echarts
  • 利用springEvent,进行服务内部领域事件处理
  • 安卓接入百度定位和地图SDK
  • Go并发模式精要:掌握Goroutine与Channel的实战艺术
  • 开篇:GORM入门——Go语言的ORM王者
  • 物联网数据洪流下,TDengine 如何助 ThingLinks 实现 SaaS 平台毫秒级响应?
  • LabVIEW调用Excel宏实现数据可视化
  • 4D 毫米波雷达
  • 21、鸿蒙学习——使用App Linking实现应用间跳转
  • SQL Server 进阶:递归 CTE+CASE WHEN 实现复杂树形统计(第二课)
  • 【Python基础】12 闲谈分享:Python用于无人驾驶的未来
  • 借助飞算AI新手小白快速入门Java实操记录
  • 嵌入式编程-使用AI查找BUG的启发
  • AG32调试bug集合
  • [论文阅读] 人工智能 + 软件工程 | 从软件工程视角看大语言模型:挑战与未来之路
  • 基于 Vue + RuoYi 架构设计的商城Web/小程序实训课程
  • 企业级应用技术-ELK日志分析系统
  • java生成word文档
  • 11年考研作文真题大数据
  • 边缘人工智能与医疗AI融合发展路径:技术融合与应用前景(下)
  • SpringBoot计时一次请求耗时
  • mac python3.13 selenium安装使用
  • [特殊字符] 分享裂变新姿势:用 UniApp + Vue3 玩转小程序页面分享跳转!
  • IntelliJ IDEA 2025- 下载安装教程图文版详细教程(附激活码)
  • Python 库 包 nltk (Natural Language Toolkit)
  • 类加载生命周期与内存区域详解
  • 【FR801xH】富芮坤FR801xH之UART
  • npm list的使用方法详细介绍
  • 基于 Three.js 与 WebGL 的商场全景 VR 导航系统源码级解析