7837|18

87

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

问个很简单的问题stm32怎样加密啊? [复制链接]

                                 rt!还有现在大陆有stm32f103xcde销售吗,价位怎样?谢谢!
此帖出自stm32/stm8论坛

最新回复

1,如果板子上有外部存储器,可以先编写一个程序,利用算法把id计算得到一些值存入外部存储器,然后再烧写真正的程序,真正的程序去校验外部存储器的数据是否合法即可   2,利用板子上按键组合,或是上电按住某些键,程序在这个时候利用算法把id计算得到一些值存入程序区(stm8为EE区),程序运行时去验证程序区数据是否正确   3,轩微编程器有软件加密的功能,编程器会读芯片id,根据算法直接改写缓冲区,达到软件加密的作用   4,读出的id通过一定算法,例如异或加上一个数,得到的数据存入flash(只运行一次,运行后标志位也存入flash),下次读到这个标志位,就不运行这个程序。   四、做软件加密时注意 1,不要在程序中直接出现id地址,例如STM32:1FFFF7E8 1FFFF7EC 1FFFF7F0   STM8: 0x4865~0x4870 2, 利用校验和或是crc对程序区进行校验,防止改程序   详情 回复 发表于 2020-4-15 10:04
点赞 关注
 

回复
举报

80

帖子

0

TA的资源

一粒金砂(初级)

沙发
 

还有usb能不能读写u盘

                                  
此帖出自stm32/stm8论坛
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

板凳
 

stm32不支持USB主机,所以不能读写U盘

                                  
此帖出自stm32/stm8论坛
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

4
 

谢谢!资料上介绍是超强加密,我用MDK怎样加密啊

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

5
 

ST有个文档

PM0042
Programming manual
STM32F10xxx Flash programming

这里介绍的非常详细,可以到ST的网站上下载。
此帖出自stm32/stm8论坛
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

6
 

严格地说楼主说的是上锁,不是加密

5楼给出了上锁所需的信息来源。


你也可以做加密,因为每个STM32芯片都有一个唯一的编号,也就是说全球没有2个STM32芯片是相同的。你可以用这个唯一的编号进行你需要的加密。
此帖出自stm32/stm8论坛
 
 
 

回复

88

帖子

0

TA的资源

一粒金砂(初级)

7
 

谢谢

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

8
 

老大,“唯一的编号”哪个文档有说明?

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

9
 

STM32的隐藏资源

据我所知,STM32还有不少不为人知的未公开资源,例如唯一ID,硬件CRC32模块等。
看来这些是面向高级客户的,一般客户不容易拿到。
此帖出自stm32/stm8论坛
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

10
 

STM32技术参考手册——RM0008

 
 
 

回复

59

帖子

0

TA的资源

一粒金砂(初级)

11
 

硬件CRC模块的说明在RM0008的第3章

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

12
 

不错不错

                                 看到官方文档的确是个好消息!
此帖出自stm32/stm8论坛
 
 
 

回复

95

帖子

0

TA的资源

一粒金砂(初级)

13
 

是所有的STM32都有CRC功能吗?

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

14
 

YES

文档中写的很清楚:

3 CRC calculation unit
Medium-density devices are STM32F101xx and STM32F103xx microcontrollers wherethe Flash memory density ranges between 32 and 128 Kbytes.

High-density devices are STM32F101xx and STM32F103xx microcontrollers where theFlash memory density ranges between 256 and 512 Kbytes.

This Section applies to the whole STM32F10xxx family, unless otherwise specified.
此帖出自stm32/stm8论坛
 
 
 

回复

55

帖子

0

TA的资源

一粒金砂(中级)

15
 

用ISP软件读出的 PID:06410041

用ISP软件读出的 PID:06410041
是32的的唯一ID吗,资料上好象说96位来着
此帖出自stm32/stm8论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

16
 

那个好像是JTAG ID的后边的部分

Info:    52 266 jtag.c:1396 jtag_examine_chain(): JTAG device found: 0x3ba00477 (Manufacturer: 0x23b, Part: 0xba00, Version: 0x3)
Info:    53 266 jtag.c:1396 jtag_examine_chain(): JTAG device found: 0x16410041 (Manufacturer: 0x020, Part: 0x6410, Version: 0x1)

那个不是0x16410041吗?

UID见:https://bbs.eeworld.com.cn/club/bbs/list.asp?boardid=49&page=3&t=3005813&tp=%u72EC%u5BB6%u62AB%u9732%uFF1ASTM32%20SYSTM%20MEMORY%u5185%u5BB9%u8BE6%u89E3
位于System Memory的后边部分
此帖出自stm32/stm8论坛
 
 
 

回复

58

帖子

0

TA的资源

一粒金砂(初级)

17
 

我的确实是PID:06410041

                                 我的确实是PID:06410041,不是:16410041
此帖出自stm32/stm8论坛
 
 
 

回复

32

帖子

0

TA的资源

一粒金砂(中级)

18
 

1,如果板子上有外部存储器,可以先编写一个程序,利用算法把id计算得到一些值存入外部存储器,然后再烧写真正的程序,真正的程序去校验外部存储器的数据是否合法即可

 

2,利用板子上按键组合,或是上电按住某些键,程序在这个时候利用算法把id计算得到一些值存入程序区(stm8为EE区),程序运行时去验证程序区数据是否正确

 

3,轩微编程器有软件加密的功能,编程器会读芯片id,根据算法直接改写缓冲区,达到软件加密的作用

 

4,读出的id通过一定算法,例如异或加上一个数,得到的数据存入flash(只运行一次,运行后标志位也存入flash),下次读到这个标志位,就不运行这个程序。//QQ9272078

 

四、做软件加密时注意

1,不要在程序中直接出现id地址,例如STM32:1FFFF7E8 1FFFF7EC 1FFFF7F0   STM8: 0x4865~0x4870

2, 利用校验和或是crc对程序区进行校验,防止改程序

此帖出自stm32/stm8论坛
 
 
 

回复

32

帖子

0

TA的资源

一粒金砂(中级)

19
 

1,如果板子上有外部存储器,可以先编写一个程序,利用算法把id计算得到一些值存入外部存储器,然后再烧写真正的程序,真正的程序去校验外部存储器的数据是否合法即可

 

2,利用板子上按键组合,或是上电按住某些键,程序在这个时候利用算法把id计算得到一些值存入程序区(stm8为EE区),程序运行时去验证程序区数据是否正确

 

3,轩微编程器有软件加密的功能,编程器会读芯片id,根据算法直接改写缓冲区,达到软件加密的作用

 

4,读出的id通过一定算法,例如异或加上一个数,得到的数据存入flash(只运行一次,运行后标志位也存入flash),下次读到这个标志位,就不运行这个程序。

 

四、做软件加密时注意

1,不要在程序中直接出现id地址,例如STM32:1FFFF7E8 1FFFF7EC 1FFFF7F0   STM8: 0x4865~0x4870

2, 利用校验和或是crc对程序区进行校验,防止改程序

此帖出自stm32/stm8论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表