STM32修改ID方法解析


在日常使用STM32的过程中,很多人会遇到需要修改ID的情况,面对这一问题常常感到无从下手。为此,本文将为大家介绍一种有效的解决方法,希望能为遇到类似困扰的朋友提供一些帮助。

1、 首先,将影片ID通过MD5算法生成摘要,再使用RSA算法对摘要进行加密,生成密文并存储在外部EEPROM中,私钥由自己保管,公钥则存入单片机内。

2、 每次启动时,用公钥解密密文,将解得的明文与当前读取的单片机ID的MD5值进行比对,即便更改ID也无济于事。

3、 首先从指定地址读取STM32的ID号,再将获取的十六进制数据转换为所需格式,最终以六字节的形式输出表示结果。

4、 软件中,STM32的唯一ID基地址为0x1FFF F7E8,位于内存映射的系统内存区域,该区域同时还存放了boot loader。

5、 如果唯一ID存在被破解和修改的风险,可以考虑将其概念扩展,将从0x1FFF F000到0x1FFF FFFF的整个区域视为一个整体的唯一ID加以使用,从而有效解决问题。

6、 也可采用不同层级的安全方案,例如将唯一ID设为ID1,将0x1FFF F800~0x1FFF F80F(即选项字节)作为ID2,而0x1FFF F80F~0x1FFF FFFF(保留区域)则作为ID3。

            <!-- 非定向300*250按钮    17/09  wenjing  begin -->
            <!-- 非定向300*250按钮  end -->
        </div>



Source link

未经允许不得转载:紫竹林-程序员中文网 » STM32修改ID方法解析

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
关于我们 免责申明 意见反馈 隐私政策
程序员中文网:公益在线网站,帮助学习者快速成长!
关注微信 技术交流
推荐文章
每天精选资源文章推送
推荐文章
随时随地碎片化学习
推荐文章
发现有趣的