STC 上电修改ID区F1-F7地址会怎样?
假如别人拿到hex文件,在上电时修改F1-F7 ID号,再跳到我原来的程序运行,岂不是后面的加密都没用了,怎么解决这一问题? 你主程序里面判断芯片ID,不行就罢工 本帖最后由 ycheng2004 于 2013-5-17 10:35 编辑那几个ID就是RAM里几个值,别人改成原来的值,再判断ID也是对的.
如果这几个ID不能修改才好. 例如对所有代码做CRC就可以防修改 关键是所有的芯片下载都是同一个程序,怎么判断是否Hex在上电时被别人修改了ID呢,就是RAM里那7个数 STC里面的F1-F7 ID号是写死的,每片都不一样,不明白LZ说的修改是什么意思?
STC的ID其实就是RAM里F1-F7的内容,要是别人拿了我的Hex,在HEX里修改了这几个地址的值,就是说把所有的单片机这个值都改成一个可以用的ID chenchaoting 发表于 2013-5-17 15:04 static/image/common/back.gif
STC的ID其实就是RAM里F1-F7的内容,要是别人拿了我的Hex,在HEX里修改了这几个地址的值,就是说把 ...
楼主你的加密方法是什么,是读取F1-F7里面的值和你程序里面的值对比么?那你的同一个程序烧在另一片STC里面岂不是由于F1-F7不同而不能运行? 这的确是个问题。。。 是另一个主单片机通过串口跟这个有ID的STC通信,主单片机在通过算法计算一个ID,与STC的ID不一样,主机再输入密码才能运行,但是人家在HEx里改了STC的ID,并且有这唯一一个的密码,岂不是很容易破解 chenchaoting 发表于 2013-5-17 15:33 static/image/common/back.gif
是另一个主单片机通过串口跟这个有ID的STC通信,主单片机在通过算法计算一个ID,与STC的ID不一样,主机再输 ...
楼主,还是没描述清楚验证过程。无法解答楼主的问题。。。。。
按LZ的意思是被用来验证用的STC单片机换一片以后,内部ID不一样,就不能运行了是吗? 是的,就是依靠这个ID来的 靠这个ID来加密,,也不是好方法了,不要用51,换成目前破解难度大的就好了,就算他要去改,也不是这么容易了。51的反汇编很容易修改
页:
[1]