MCU固件加锁

概述

开发的终端产品如果不对固件进行加锁很容易被破解,导致开发的产品被山寨,尤其对于单片机类的产品

原理

加密算法(AES、DES以及自定义算法): Encrypt
唯一ID(芯片ID): ChipID
自定义加密密钥: Key
Password = Encrypt(ChipID, Key)

实现

3.1、上位机

  1. 读取MCU ChipID
  2. 通过Encrypt生成Password
  3. 写入Password 和 Key 到MCU Flash或者OTP
  4. 检测是否加密成功
    3.2、MCU
  5. 开机后读取Key和ChipID
  6. 通过Encrypt生成Password
  7. 读取上位机写入的Password,判断两个Password是否一致,如果相同则运行应用程序,否则等待加锁

注意

  1. MCU端要考虑加锁后不被重复加锁
  2. MCU端要考虑多个地方存储Password和Key,防止数据丢失
  3. 上位机要可以并行加锁多个MCU,提高工厂生产的效率

获取

关注公众号Chipcode,发送固件加密获取上位机以及下位机源码

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值