查看完整版本: 加密方法:CRC16 HEX文件自动修改生成器

hdzl 发表于 2011-7-1 11:27:25

加密方法:CRC16 HEX文件自动修改生成器

作者: plc_avr 烈火狂龙
共享近段时间研究防止HEX被修改的成果,CRC16 HEX文件自动修改生成器,使产品上每个HEX文件的内容均不一样,在单片机内部运算CRC16,若结果不对,程序会工作不正常.......

CRC16 HEX文件自动修改生成器使用说明:

    用VB做了个自用的CRC16工具,该软件本意是为个人用于一个项目上,有的地方图省事直接写在源码上面了。感觉还是搞成通用的比较好,更方便有此需要的网友,现已初步完成,奉献给大家。可以随意传播,但请不要更改版权信息。

软件功能及工作流程说明:
1、输入指定的HEX或BIN文件
2、指定输出文件位置
3、根据需要可选择设置随机数地址,最多有6项可选,可在任意位置生成随机数(随机数有三种格式可选:填充00、FF、随机数),存储于指定的FLASH 地址。START:表示起始地址,END:表示结束地址
4、根据需要可选择设置CRC16地址,最多有6项可选,可在任意位置计算HEX或BIN文件的CRC16值,存储于指定的FLASH 地址。START:表示起始地址,END:表示结束地址
5、设置CRC16多项式权值以适用不同计算。
6、根据需要可选择设置在指定位置加入唯一ID识别号
7、根据需要可选择设置在指定位置加入编号,编号可以自动加一,减一或保持不变,人工输入。
8、指定CRC16的多项式,及权值,一般常用的为:0xA0010x10210x80050x8048等
9、指定文件的输出格式可以为HEX或BIN文件
10、根据上面10项设置,点“执行”自动生成新的HEX或BIN文件至指定输出目录。
11、点“计算”,是计算CRC部分的结果。注意CRC结果指定,地址设置。
12、用烧写工具直接烧写新生成的文件。这样每个芯片的HEX内容均不完全一样,防止多片同时被破_解,用多个HEX作比对。
13、如果可选框全部不选,可以完成输入HEX 输出BIN或输入BIN输出HEX文件格式的转换
http://cache.ourdev.cn/bbs_upload603362/files_42/ourdev_653599F5OY3H.jpg
(原文件名:1.jpg) 引用图片
注意:点“计算”仅是计算输入文件指定地址的CRC16值,“执行”是计算输出指定地址的CRC16值。

用雁塔菜农的hotwc3做校验,检测结果的正确性,
Hotwc3地址: http://www.hotpower.org/HotAjax/HotPower_HotAjax.html
如下图:
选CRC16多项式权值A001,明文ID及本机编号的HEX值:”010203040506070809000A0B0C0100”    点“运算”,CRC结果为0x8A7C,表明结果计算正确。

http://cache.ourdev.cn/bbs_upload603362/files_42/ourdev_653600K4C4P1.jpg
(原文件名:2.jpg) 引用图片
生成文件目录索检:
http://cache.ourdev.cn/bbs_upload603362/files_42/ourdev_653601E64WKW.jpg
(原文件名:3.jpg) 引用图片
在此特别感谢雁塔菜农和John Lee老师的指点,谢谢!
欢迎各位提出任何意见和建议.......

作者:烈火狂龙    2011年6月30日

点击此处下载
原网址:http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4841408&bbs_id=1000
原网址有讨论的话题。

liyf 发表于 2011-7-1 15:16:58

辛苦了,这个得慢慢研究一下:lol

ijnyj888 发表于 2012-5-22 13:09:56

先玩玩谢谢。

李剑 发表于 2012-6-11 09:12:21

辛苦了,这个得慢慢研究一下

cmjx 发表于 2017-3-18 01:15:01

我是来骗银子的:loveliness:

lance_ma 发表于 2017-3-19 12:29:51

:lol:lol:lol:lol:lol:lol

tuzibaibai 发表于 2018-10-30 11:10:08

辛苦了,这个得慢慢研究一下

yiqiuccc 发表于 2024-6-16 12:47:29

谢谢分享 学习学习
页: [1]
查看完整版本: 加密方法:CRC16 HEX文件自动修改生成器