打印

怎么防止USB DFU程序读出来

[复制链接]
6639|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lattice1|  楼主 | 2011-3-17 13:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1.ST的DFU软件,在哪里可以读MCU 的DFU程序?
2.怎么防止读。
3.如果给用户.DFU文件,那程序岂不是完全暴路了?
沙发
香水城| | 2011-3-17 17:44 | 只看该作者
1) 请说再详细些,不明白你的问题
2)不知道理解对不对,可以开启STM32的读保护
3)你自己要想办法加密

使用特权

评论回复
板凳
lattice1|  楼主 | 2011-3-18 09:44 | 只看该作者
1.我安装了ST提供的DfuSe的软件,通过这个软件下载.dfu程序,我看见网上说可以通过St的DfuSe软件读取MCU中的程序,我不知道在哪里可以读?

3.不知道有什么方法,怎么样加密?可以提示一点吧,谢

使用特权

评论回复
地板
香水城| | 2011-3-18 10:22 | 只看该作者
1)你在程序中找找,有没有读的命令?

3)对给用户的.DFU文件加密,再在MCU端接收后解密。

使用特权

评论回复
5
hsbjb| | 2011-3-18 11:11 | 只看该作者
这个就涉及到加密问题了

使用特权

评论回复
6
lattice1|  楼主 | 2011-3-18 15:14 | 只看该作者
1.我看见有个帖子,是去除u8 *MAL_Read (u32 SectorAddress, u32 DataLength) 中 读Falsh 部分,我去了,并且返回0xff,就出错了,不知道具体是修改什么地方?

2.貌似加密有的麻烦。

使用特权

评论回复
7
香水城| | 2011-3-18 15:43 | 只看该作者
把usb_prop.c打开,在函数DFU_Data_Setup中去掉下面蓝色语句,就可以去掉读的命令。

RESULT DFU_Data_Setup(uint8_t RequestNo)
{
  uint8_t *(*CopyRoutine)(uint16_t);
  CopyRoutine = NULL;
  if (Type_Recipient == (CLASS_REQUEST | INTERFACE_RECIPIENT))
  {
    if (RequestNo == DFU_UPLOAD && (DeviceState == STATE_dfuIDLE
                                    || DeviceState == STATE_dfuUPLOAD_IDLE ))
    {
      CopyRoutine = UPLOAD;
    }

   else if (RequestNo == DFU_DNLOAD && (DeviceState == STATE_dfuIDLE
                                         || DeviceState == STATE_dfuDNLOAD_IDLE))
    {
      DeviceState = STATE_dfuDNLOAD_SYNC;
      CopyRoutine = DNLOAD;
    }

使用特权

评论回复
8
lattice1|  楼主 | 2011-3-18 17:44 | 只看该作者
file:///C:/Users/Administrator/Desktop/无标题.jpg 首先说声谢谢。
问题是下载时会出错。[img][/img]

使用特权

评论回复
9
香水城| | 2011-3-18 18:11 | 只看该作者
出什么错?

使用特权

评论回复
10
lattice1|  楼主 | 2011-3-19 09:49 | 只看该作者
为什么图片也上传不了,奇怪了。

在下载时,我选择了校验,就出现 error code : Bad state machine in firmware
operation : upload
transfer size : 1024

使用特权

评论回复
11
lattice1|  楼主 | 2011-3-21 09:32 | 只看该作者
没人关心,自己顶下

使用特权

评论回复
12
香水城| | 2011-3-21 10:16 | 只看该作者
要通过读回写入的数据才能进行校验,你不允许UPLOAD,就不能再选择校验了,除非自己修改协议。

使用特权

评论回复
13
lattice1|  楼主 | 2011-3-21 15:41 | 只看该作者
OK,谢谢

使用特权

评论回复
14
yang4469| | 2014-2-8 16:25 | 只看该作者
香水城 发表于 2011-3-18 15:43
把usb_prop.c打开,在函数DFU_Data_Setup中去掉下面蓝色语句,就可以去掉读的命令。

RESULT DFU_Data_Setu ...

香主,请教下,如果我要对写入的dfu文件加了密,然后要在mcu中解密,请问是具体在什么位置进行解密

使用特权

评论回复
15
jjjkkk00| | 2015-11-7 23:57 | 只看该作者
mark,最近在学习USB  hal库的驱动

使用特权

评论回复
16
yjwerxx| | 2016-2-23 14:40 | 只看该作者
我也在艰难的学习USB 库开发。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

99

主题

300

帖子

3

粉丝