开发人员一般设计软件加密方法:读id---复杂算法计算---对比之前存储的对应数据(与id相关)---判断芯片是否合法。由于读id时很多人直接用id起始地址,例如0x1FFFF7E8,破解的人只要把这个数据改成0x8000020,并且0x8000020程序区域填上母片的id,不管你的算法有多复杂,这时你的程序就被破解了,改这种软件加密一分钟就改好了。所以千万注意程序里面不要出现id起始地址。用以下
目前常见的STM32及GD32系列的MCU芯片都具有唯一UIDUID是唯一标识符(unique identifier),在STM32系列微控制器的每一颗芯片都具有全球唯一的标识符,该标识符为128位二进制序列。因此我们可以利用芯片UID的唯一性对程序进行加密,使每一个产品中的程序也具有唯一性,即使非法使用者获取了MCU中的程序复制到其他芯片中也是不能正常运行的,从而达到保护开发者的知识产权不被侵犯
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号