STM32/STM8技术论坛
直播中

陈伟

7年用户 1491经验值
私信 关注
[问答]

STM32 96位序列号可以被改写吗?

今天逛赛格买芯片的时候,看见一个芯片解密的牌子于是好奇上去问问ST能否解密,果然听说STM32的芯片ID可以被改写!朕立马就被震撼了,因为朕的产品几乎都是靠这个96bit的支撑着不被解密的。。。
卿等说说,到底怎么回事?朕是不是被无良奸商给坑了?朕好歹也干了好几年电子了,这事真糊涂乐

回帖(13)

王娟

2018-10-26 17:13:23
似乎听说是可以被改写的.......
举报

李杰

2018-10-26 17:13:36
不要问是怎么弄的....我不知道.
举报

刘洋

2018-10-26 17:13:48
靠这种方式加密是不可靠的,把你的文件读出来通过修改你的文件,JMP一下就跳到后面的去了,这叫暴力破解,还读你的ID做什么。
举报

王鹏

2018-10-26 17:14:05
这不好说....
某个产品, 也许会依赖唯一ID才正常运行.
如果只是克隆了代码, 还不能够正常运行, 但同时克隆了ID, 就可以了....
举报

李勇

2018-10-26 17:14:16
暴力破解也需要分析代码的.
而克隆了ID连暴力破解都不需要了......
举报

张玲

2018-10-26 17:14:29
听说是能修改,就是不知道哪里能搞到方法
举报

陈伟

2018-10-26 17:15:32
当然不是在程序固定的一个地方判断了。。。多次判断比较有效
举报

刘军

2018-10-26 17:15:44
这个问题 2年前 就讨论过了!! 唯一 ID 就是在  BOOT 区!  BOOT去 本来就是 FLASH ! 只有知道怎么写 BOOT 就可以拿一个 新的MCU 从新写 BOOT ,包括 ID  就一起被复制了!!
举报

王斌

2018-10-26 17:15:58
请问大侠们,使用 CPLD 配合进行伪随机加密,可以破解吗?
举报

h1654155275.5748

2018-10-26 17:16:11
对于一个芯片,只有制造者最清楚。谁知道了。
举报

刘丹

2018-10-26 17:16:24
在中国,没有不可能发生的事情,只是值得不值得去做罢了!
举报

陈伟

2018-10-26 17:16:46
BOOT我知道是FLASH的,但是这个序列号寄存器据说是只读的,不知道是否能改哦。难道某大神已经刷了这个寄存器使得能写了吗?
举报

meifan2010

2020-5-20 08:52:54
1,如果板子上有外部存储器,可以先编写一个程序,利用算法把id计算得到一些值存入外部存储器,然后再烧写真正的程序,真正的程序去校验外部存储器的数据是否合法即可

2,利用板子上按键组合,或是上电按住某些键,程序在这个时候利用算法把id计算得到一些值存入程序区(stm8为EE区),程序运行时去验证程序区数据是否正确

3,轩微编程器有软件加密的功能,编程器会读芯片id,根据算法直接改写缓冲区,达到软件加密的作用

4,读出的id通过一定算法,例如异或加上一个数,得到的数据存入flash(只运行一次,运行后标志位也存入flash),下次读到这个标志位,就不运行这个程序。//Q9272078

四、做软件加密时注意
1,不要在程序中直接出现id地址,例如STM32:1FFFF7E8 1FFFF7EC 1FFFF7F0   STM8: 0x4865~0x4870
2, 利用校验和或是crc对程序区进行校验,防止改程序
举报

更多回帖

发帖
×
20
完善资料,
赚取积分