飞豹客 · 课能看,资料也能带走
飞豹客后端开发 会员免费

尚硅谷嵌入式技术之STM32加密技术

STM32 的固件一旦出货,就躺在别人的板子上。抄板、读 Flash、抓升级包,对有点硬件基础的人来说门槛并不高。这门课要处理的正是这个场景:当你已经能把程序烧进 STM32 跑起来之后,怎么让固件不那么容易被复制、被篡改、被白嫖。它不教你写业务逻辑,讲的是产品出厂前后那层保护怎么做。 先搞清楚它解

单课价¥29.90新品 上架
会员价 会员免费开通会员后本篇可直接下载套餐详情
231 人关注 更新于 2026-08-31 永久有效
发货

网盘链接 · 支付成功后自动发货

保障

永久有效 · 链接失效免费补发

客服

每日 9:00-21:00 在线客服 联系客服

会员可免费下载本篇月会员、年会员、永久会员可免费领取。

开通会员 ›
购买本课销量 0 · 永久有效
会员价 · 单课标价 ¥29.90

会员 · 按档位

永久免费可领
年免费可领
月免费可领

游客按标价购买,不享受上表折扣。

支付成功后自动发放网盘链接,链接失效可找客服免费补

正版保障 极速发货 售后无忧

STM32 的固件一旦出货,就躺在别人的板子上。抄板、读 Flash、抓升级包,对有点硬件基础的人来说门槛并不高。这门课要处理的正是这个场景:当你已经能把程序烧进 STM32 跑起来之后,怎么让固件不那么容易被复制、被篡改、被白嫖。它不教你写业务逻辑,讲的是产品出厂前后那层保护怎么做。

先搞清楚它解决的是哪类问题

课程开头没有直接上代码,而是先讲加密场景和技术分类。这一步值得认真看,因为它决定了后面所有操作的取舍。常见的需求无非几种:防止别人用编程器直接读出 Flash 里的固件;防止固件被替换成改过的版本;让同一份固件只能在自己授权的板子上运行;以及升级包在传输途中不被截获篡改。不同需求对应的手段完全不同,有的靠芯片自带的读保护,有的要动到密钥和校验,有的需要配合外部安全芯片。先分清自己面对的是哪一种,再往下学,否则很容易学了一堆手法却用错地方。

适合什么基础,先看哪几块

这门课不是零基础入门。你至少得能用 STM32 跑通一个点灯或串口工程,知道什么是烧录、什么是启动地址、会用调试器连上芯片,否则环境搭建那一部分就会卡住。课程前面花了篇幅讲工具选择和开发环境,包括用 VS Code 搭软件环境,这部分对已经习惯 Keil 或 IAR 的人也有参考价值,因为加密相关的操作经常要在命令行和脚本里完成,纯靠 IDE 点按钮不够用。建议的顺序是:先看场景和技术介绍,建立判断标准;再跟着把开发环境和工具链配好,确保能编译、能烧录、能读回;最后才进入具体的加密实现。跳过前两块直接抄代码,遇到报错很难定位是配置问题还是思路问题。

学完能独立做什么,资料怎么用

跟完之后,你应该能独立完成一件具体的事:针对一款 STM32 芯片,判断它自带哪些保护能力,选一套组合方案,把固件保护配置做出来并验证效果——比如开启读保护后确认调试器读不出内容,或者让一份固件换到另一块板子上无法正常运行。这是可以拿去做产品预研的程度,不是停留在概念层面。资料以视频为主,配合环境搭建的操作演示。看的时候别只跟着敲,每做完一步就自己验证一次:保护开了没有、读回的数据对不对、改一个字节程序还跑不跑。练习的重点不是把代码抄完,而是养成"改完就验证"的习惯,加密这件事最怕的就是以为配好了其实没生效。如果手头正好有项目要出货,边学边往自己的板子上套,效果比单纯跟课好得多。

课程目录

课程目录25 集
  • ### 第1部分:课程介绍与环境搭建 | 序号 | 文件名 | 大小 | 日期 | |------|--------|------|------| | 01 | STM32加密课程介绍.mp4
  • | 277M | 2026-03-
  • 20 | | 02 | STM32加密场景介绍.mp4
  • | 54.6M | 2026-03-
  • 20 | | 03 | STM32加密技术介绍.mp4
  • | 70.6M | 2026-03-
  • 20 | | 04 | STM32使用工具介绍.mp4
  • | 84.4M | 2026-03-
  • 20 | | 05 | STM32开发软件选择.mp4
  • | 15.6M | 2026-03-
  • 20 | | 06 | 软件开发环境_keil_mdk安装.mp4
  • | 175.9M | 2026-03-
  • 20 | | 07 | 软件开发环境_keil_mdk配置.mp4
  • | 24M | 2026-03-
  • 20 | | 08 | 软件开发环境_keil注册机使用.mp4
  • | 17.2M | 2026-03-
  • 20 | | 09 | 软件开发环境_vsCode安装.mp4
  • | 39.8M | 2026-03-
  • 20 | | 10 | 软件开发环境_stm32cubemx安装.mp4
  • | 296.7M | 2026-03-
  • 20 | ### 第2部分:盗取代码演示(安全风险演示) | 序号 | 文件名 | 大小 | 日期 | |------|--------|------|------| | 11 | 盗取代码演示_cubeMX生成基础项目.mp4
  • | 67M | 2026-03-
  • 20 | | 12 | 盗取代码演示_完成基础项目的开发.mp4
  • | 146.3M | 2026-03-
  • 20 | | 13 | 盗取代码演示_具体操作演示.mp4
  • | 339.7M | 2026-03-
  • 20 | | 14 | 盗取代码演示_AI工具反编译二进制文件.mp4
  • | 78.1M | 2026-03-
  • 20 | ### 第3部分:秘钥构建演示 | 序号 | 文件名 | 大小 | 日期 | |------|--------|------|------| | 15 | 秘钥构建演示_获取芯片的UID.mp4
  • | 83M | 2026-03-
  • 20 | | 16 | 秘钥构建演示_使用md5生成秘钥.mp4
  • | 102.7M | 2026-03-
  • 20 | | 17 | 秘钥构建演示_使用随机数包装秘钥.mp4
  • | 493.9M | 2026-03-
  • 20 | | 18 | 秘钥构建演示_将秘钥写入到flash.mp4
  • | 87.7M | 2026-03-
  • 20 | | 19 | 秘钥构建演示_演示秘钥已经写入的情况.mp4
  • | 23.8M | 2026-03-
  • 20 | ### 第4部分:秘钥使用与加密扩展 | 序号 | 文件名 | 大小 | 日期 | |------|--------|------|------| | 20 | 秘钥使用演示_校验秘钥数据.mp4
  • | 396.5M | 2026-03-
  • 20 | | 21 | 完整加密演示_完成RDP等级设置和关闭调试.mp4
  • | 66.4M | 2026-03-
  • 20 | | 22 | 加密技术的使用_如何上锁解锁.mp4
  • | 69.5M | 2026-03-
  • 20 | | 23 | 加密技术的扩展_AES加密和base64字符串展示.mp4
  • | 56.9M | 2026-03-
  • 20 | --- ## 📊 课程统计 | 统计项 | 数据 | |--------|------| | **总视频数** |
  • 23 个 | | **总大小** | 约 **2.7 GB** | | **最大文件** | 17_秘钥构建演示_使用随机数包装秘钥.mp4
  • (493.9M) | | **最小文件** | 05_STM32开发软件选择.mp4
  • (15.6M) | | **更新时间** | 2026-03-20 20:
  • 15 | --- ## 📁 课程内容分类 | 模块 | 视频数量 | 主要内容 | |------|----------|----------| | 环境搭建 | 10个 | 开发工具安装与配置 | | 盗取代码演示 | 4个 | 代码被破解的风险演示 | | 秘钥构建 | 5个 | UID、MD5、随机数、Flash写入 | | 加密使用 | 4个 | RDP设置、上锁解锁、AES加密 | --- ## 🎯 课程主题总结 这是一门**STM32代码加密与防破解**的实战课程,主要内容包括: 1. **开发环境搭建**:Keil MDK、VS Code、STM32CubeMX的安装与配置 2. **安全风险演示**:展示如何通过AI工具反编译二进制文件,盗取代码 3. **加密方案实现**:   - 读取芯片唯一ID(UID)   - 使用MD5生成秘钥   - 随机数包装秘钥   - 将秘钥写入Flash存储 4. **完整加密流程**:RDP(读保护)等级设置、调试接口关闭、上锁解锁 5. **扩展加密技术**:AES加密、Base64编码