你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32等单片机程序加密的方法

[复制链接]
STMCU小助手 发布时间:2021-7-27 10:49
  为了防止大家的程序不被剽窃,本文给大家分享单片机加密的方法。: s& E7 i8 \( H) D
11.jpg ! @! {1 p- M+ e- s8 a8 |. u8 [6 A! f

9 I9 l* G9 Z# i* i
4 d6 K! w# T3 [: s1 g7 s
常见加密方法# z* [& ^5 v5 M, q! Z  i
1. 程序写保护
# U- T6 }) X( w9 V    这种方法是最常见,也是最简单的一种。现在的MUC基本都有写保护功能,但是这种容易被人破解。
/ Y- F: w7 j7 ?
* s( X% Z$ b/ n$ Z  ]
2. 烧断数据总线" j( \# \6 F& `5 {5 f
    这个方法听起来不错,但有损坏的风险,同样也能破解。
5 h4 l0 i/ A. @, r9 f  R+ N3 ]( ]- L. I+ C
, p3 s; K& w  f' T# g! J
3. 软件加密
7 _0 ]6 n5 F: g& w! }- u    是一些防止别人读懂程序的方法,单一的这种方法不能防止别人全盘复制,须配合其他的加密算法。# `# q* [7 m  g  D/ @5 G

2 M  f# s% D( a5 K/ y6 W% i. ^
! J2 o$ Y" W/ [6 h% }- l
4. 添加外部硬件电路的加密方法4 E3 h( S, s0 ]$ x* j: f0 ^
    这个方法效果看起来比较好,但会增加成本。! w- d! ^: F4 O2 _, ^
3 j' t+ \% u. M% V5 w' u
+ U- e0 L1 o8 F2 I9 O
5. 芯片打磨改型% @* }! a; I3 ^7 |: h9 l% l0 d
    这个方法改了型号能误导,但同时也增加成本,解密者一般也能分析出来。) v8 J- Q; x9 i3 G4 x4 N
. r* W8 i) t7 |. }7 q* ?

. J' d  s' N, H- o4 S6. 通过通过联网加序列号加密
" e# j5 r2 b6 W3 ]2 d+ F7 F2 k2 }    通过连接网络,在你的MCU中生成一个唯一的随机长序列号,并加入复杂的特种算法,或加入你们重新编码的企业信息在里面,每个芯片内不同,复制者只能复制到一个序列号。9 }& X2 x  A+ |
# N) I3 q# n* ^1 i2 X. J: n

+ A3 y% |! V6 c5 I# n7 ?- D* M- E7. 通过MCU唯一的标识加密4 R0 ^2 f+ `9 e$ g
    以前很多MCU没有唯一标识码,现在的很多MCU都具有唯一标识码了。# o" e' `4 ?4 w! F$ B! y
    这个方法比较好,简单省事,能很好的防止复制。
: Q5 s1 O% m0 q: n$ x- o) h/ ?7 w! b6 Q% C3 t/ E- w3 t% Z

8 J. X9 X/ N/ m, I, i8. 读保护 + 唯一ID加密9 ]( Z$ h% b: G9 a# J* c5 P
    使用读保护 + 唯一ID的加密是最常用的一种方法,也是推荐大家使用的一种方法。1 S1 `& Z$ \" E

$ ^3 Z; c, y% m/ ~" [: k

, v  Y- D% v" d5 ?% Y) Y) \9. 唯一ID/ [5 l/ I: {9 D0 ^0 N
    现在正规的芯片,每颗出厂的时候都带了一个唯一标识码,这个号码是唯一不重复的,比如STM32的就使用96位作为唯一ID。: Y) t1 \3 F9 i9 G
    和我们每个人的身份证号码一样,现在刚出生的婴儿,上户的时候就给他一个身份证号,那么每个芯片一生产出来,也就具备了这个身份证号。
1 G7 B4 c+ q% _& v
5 D4 S" b; Z8 Q- _8 M" L

( W" N, V, \: [: Z加密原理
! t# v. f4 F6 ~* N8 l: G4 g: o( m    读保护就不用说了,增加被破解难度。
+ p  I" z+ x8 C9 i9 N2 _# [7 i    使用唯一ID加密的方法很多,这里说一种简单的方法:出厂时程序读取唯一ID并保存在一个位置,以后程序执行之前,要读取并匹配这个唯一ID,一致才执行程序。/ |, v7 d- r# i! H" ~, v/ Y
    当然,这种方法是最基础的原理,但也存在被破解的风险。所以,存储的数据,以及读取验证这两个地方需要进一步添加一些算法。
" b- C, Q* a# z- s' z    这样操作之后,即使别人读取了你的程序,也是无法正常执行。( [7 O9 O6 d- y, a9 m& K. L2 i

0 |" E- q4 i% h" K6 S# }/ k4 G8 ]2 W6 G
收藏 1 评论0 发布时间:2021-7-27 10:49

举报

0个回答
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版