|
我想到一个STM32加密方法, 分3步: 第1步,level1, 第2步,用UID+自定义加密, 第3步,对整个程序区个CRC校验,把CRC结果与某个数异或多次,再把异或后的结果存在xx地址, 然后程序在“多处”“多花样判断”xx地址的是否合法? 程序思路:前2种方法很容易被破解,加了第3种方法后, 破解者破解前两种方法后,必定要修改程序内容, 修改程序内容后,CRC值必定会改变, CRC值改变了,数值就不合法了,从而且达到程序防篡改的目的。 现在遇到一个问题,怎么在程序编译前知道CRC校验值? 可否先编译第一次,PC读取HEX校验CRC值, 再把计算机后的值填内程序中重新编译, 但编译后CRC值又变了, 不知道PC的EXE是怎么实现防篡改的? |
微信公众号
手机版