zntsbkhhhh

MCU防盗版之编程注意事项

0
阅读(354) 评论(20)

       嵌入式通用MCU多数不具备安全防护机制,因此越来越多的人采用MCU + 加密芯片的方案来实现对MCU中代码的保护。这里有个误区,使用加密芯片并不会直接对MCU中代码做加密防护,只是多了一道防破解的功能,而加密芯片中的加密二字是个概念,主要因为其在产品中起到了防护作用,且自身有加密功能,故简称加密芯片。

      本次针对已经使用了加密芯片的用户做特别说明,要想达到更安全的效果,一定不能忽略MCU端的编程细节。加密芯片作为从设备,会接收MCU发出的指令并返回相应的数据。不论加密芯片返回的数据是否进行了线路加密,但在MCU端处理后最终都将以“明文”形态出现,这就要求编程者小心使用该“明文”。应注意以下细节:

     1、“明文”不要存储在连续的内存地址上

     2、“明文”尽量参与更多的程序处理环节

     3、   如果可以,“明文”要做到每次变化

     4、“明文”使用完成后要马上销毁,不在内存中存留。销毁的方法有很多种,例如将“明文”重新赋值,变成新的干扰数据,或者重新置零。否则容易被跟踪窃取。有很多盗版人员都是通过这种方法对MCU进行带电分析,从ram中获取到很多重要数据,从而实现了对MCU的破解。


  1. 明文不存在连续的空间中,有没有实际的例子呢?

  2. 明文 这里指的是传输数据吧,做个就加密传输比较稳妥


  3. 加密芯片中的加密二字只是个概念请问加密芯片其原理?


  4. 明文肯定关键啊,是MCU中代码或者要用的数据,没有这个程序就没法运行


  5. 看来,“明文”好象起到很关键的作用