找回密码
 立即注册
查看: 2212|回复: 22

程序安全问题

[复制链接]
  • 打卡等级:偶尔看看II
  • 打卡总天数:21
  • 最近打卡:2025-03-09 09:12:17

16

主题

69

回帖

414

积分

中级会员

积分
414
发表于 2023-12-13 11:34:33 | 显示全部楼层 |阅读模式
  我想咨询一下STC官方,数据手册上说的都是程序下载过程中进行加密传输,如果我给单片机下载的是未加密的HEX程序,那么客户拿到我的产品他可以通过手段拿到我的hex程序么,就是说通过成品产品读出我的程序,如果能,我该怎么防范,如果读不出来那就无所谓了,感谢。
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:32
  • 最近打卡:2025-04-30 10:59:33

25

主题

1154

回帖

2391

积分

超级版主

积分
2391
发表于 2023-12-13 16:22:58 | 显示全部楼层
如果是怕产品里的程序被读出来,增加ID号加密功能就行。我们STC的芯片只有写入接口,没有读取接口,烧录到芯片里的程序正常是无法读取的。增加ID号加密可以加一道保险。STC32G系列单片机内部的只读特殊功能寄存器CHIPID中保存有与芯片相关的一些特殊参数,包括:全球唯一ID号、32K掉电唤醒定时器的频率、内部1.19V参考信号源值(BGV)以及IRC参数。在用户程序中只能读取CHIPID中的内容,不可修改使用CHIPID中的数据对用户程序进行加密是STC官方推荐的最优方案
截图202312131613263396.jpg

【新提醒】CHIPID应用,STC32只读特殊功能寄存器中存储的十种高速时钟和唯一ID号等重要参数 - 电源/复位/省电模式/外部晶振/内部时钟/对外时钟输出/PLL-144MHz时钟 - 国芯论坛-STC全球32位8051爱好者互助交流社区 - STC全球32位8051爱好者互助交流社区  https://www.stcaimcu.com/forum.p ... mp;highlight=chipid

STC官网:https://www.stcai.com/
QQ:2593903262
微信号:18106296598
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:21
  • 最近打卡:2025-03-09 09:12:17

16

主题

69

回帖

414

积分

中级会员

积分
414
发表于 2023-12-14 09:23:35 | 显示全部楼层
STCAI-32*** 发表于 2023-12-13 16:22
如果是怕产品里的程序被读出来,增加ID号加密功能就行。我们STC的芯片只有写入接口,没有读取接口,烧录到 ...

我昨天也查看了手册没有找到相关的接口说明,如果是这样子那就很好了。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:441
  • 最近打卡:2025-05-03 08:12:12
已绑定手机

40

主题

371

回帖

847

积分

高级会员

积分
847
发表于 2023-12-16 10:50:05 | 显示全部楼层
Mr.*** 发表于 2023-12-14 09:23
我昨天也查看了手册没有找到相关的接口说明,如果是这样子那就很好了。 ...

手册搜唯 一ID,就能找到相关的材料,不过得看型 号,一些旧型号没有这功能。
纸上得到终觉浅,绝知此事要躬行。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:522
  • 最近打卡:2025-05-03 13:32:44

109

主题

1901

回帖

5220

积分

论坛元老

积分
5220
发表于 2023-12-16 11:53:29 | 显示全部楼层
通过唯一的芯片ID号来判断是否正常执行程序,一个HEX文件只能针对一个芯片,在批量上升级程序就无法一一实现,所以只能另找加密方案。

点评

你这个对生产的理解是错误的 !!! [attachimg]29877[/attachimg] 传统加密的笑话, STC对加密的延申发展,放心的【远程升级】,视频讲解 - 程序加密后传输/发布项目程序/USB-ISP下载/远程升级/ID号加密 - 国芯论  详情 回复 发表于 2023-12-16 12:22
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:56
  • 最近打卡:2025-05-03 10:05:34

718

主题

1万

回帖

1万

积分

管理员

积分
15648
发表于 2023-12-16 12:22:58 | 显示全部楼层
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:56
  • 最近打卡:2025-05-03 10:05:34

718

主题

1万

回帖

1万

积分

管理员

积分
15648
发表于 2023-12-16 12:24:46 | 显示全部楼层
截图202312161224269443.jpg


ID号加密是根据用户所设定的算法对ID号的7个字节进行分别运算,每种加密算法最多可以进行4次
不同的运算,运算符不分优先级,从前到后依次进行4次运算,对于同一个加密算法,ID号的7个字节是
分别使用此算法进行运算,运算完成后会得到加密后的7个字节,在下载用户代码时,加密后的7个字节
会自动写入到用户所指定的FLASH中
例如:
  当前芯片内部的ID号为 : 01H 02H 03H 04H 05H 06H 07H
  选择的加密算法为         : <<1, +2, *3, ^4
  设定的存储地址为         : 0x1000
  经加密运算后的ID号为  :  08H 16H 1CH 1AH 20H 2EH 34H
  下载程序过程中,加密的ID号会被写入到FLASH的0x1000~0x1006地址中
  08H写入到0x1000, 16H写入到0x1001, 1CH写入到0x1002, 1AH写入到0x1003, 20H写入到0x1004,
  2EH写入到0x1005, 34H写入到0x1006

目前版本提供两种加密方式,可将ID号使用两种不同的方式加密后写入到不同的地址中每种加密方式
中可进行4步运算,每一步运算可选择下面的7种运算方法:
+ : 加法运算  - : 减法运算  * : 乘法运算  / : 除法运算  
<<: 左移运算  >>: 右移运算  ^ : 异或运算

对于运算操作数,只接受10进制数的输入,有效的数据为0~255,超出范围的数,高位会被自动舍弃.
例如输入257(102H),则实际参加运算的术为2(02H)
所有的运算都是基于单字节的,高低字节之间不会产生进位和借位,即低字节运算后如果产生进位
或借位将直接舍弃,而不参与高字节的运算

例如:
  如果ID号为       : 01 02 03 04 ff fe fd
  加密方式为       : "+255, +0, +0, +0"
  则加密后的数据为 : 00 01 02 03 fe fd fc

注意事项:
  若是将ID号加密程序加密后传输两种功能结合起来同时使用时,则必须在原代码加密前,将需
  要写入加密ID号的地址空间预留为FF,然后在对程序文件进行加密(若下载时需要将HEX空白区域
  填充为00时,也需要执行此操作将区域保留)
  例如:
    我现在需要将ID号加密后写入到程序空间1000H开始的地址,那么我必须在我的源代码中,
    将1000H~1006H这7个字节保留,并定义为FFH(不能为00H)


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:522
  • 最近打卡:2025-05-03 13:32:44

109

主题

1901

回帖

5220

积分

论坛元老

积分
5220
发表于 2023-12-16 12:43:51 | 显示全部楼层
神*** 发表于 2023-12-16 12:22
你这个对生产的理解是错误的 !!!

这种思路的加密没有弄过,有时间研究一下。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:21
  • 最近打卡:2025-03-09 09:12:17

16

主题

69

回帖

414

积分

中级会员

积分
414
发表于 2023-12-23 11:10:29 | 显示全部楼层
神*** 发表于 2023-12-16 12:24
ID号加密是根据用户所设定的算法对ID号的7个字节进行分别运算,每种加密算法最多可以进行4次
不同的运算, ...

这个值得我深入了解一下。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:522
  • 最近打卡:2025-05-03 13:32:44

109

主题

1901

回帖

5220

积分

论坛元老

积分
5220
发表于 2024-7-17 12:40:46 | 显示全部楼层
神*** 发表于 2023-12-16 12:24
ID号加密是根据用户所设定的算法对ID号的7个字节进行分别运算,每种加密算法最多可以进行4次
不同的运算, ...

请问如何将1000H~1006H这7个字节保留,并定义为FFH?
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-4 05:56 , Processed in 0.134936 second(s), 112 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表