MCU防盗版之编程注意事项

2019年11月20日 14:15    发布者:zntsbkhhh
       嵌入式通用MCU多数不具备安全防护机制,因此越来越多的人采用MCU + 加密芯片的方案来实现对MCU中代码的保护。这里有个误区,使用加密芯片并不会直接对MCU中代码做加密防护,只是多了一道防破解的功能,而加密芯片中的加密二字是个概念,主要因为其在产品中起到了防护作用,且自身有加密功能,故简称加密芯片。       本次针对已经使用了加密芯片的用户做特别说明,要想达到更安全的效果,一定不能忽略MCU端的编程细节。加密芯片作为从设备,会接收MCU发出的指令并返回相应的数据。不论加密芯片返回的数据是否进行了线路加密,但在MCU端处理后最终都将以“明文”形态出现,这就要求编程者小心使用该“明文”。应注意以下细节:       1、“明文”不要存储在连续的内存地址上       2、“明文”尽量参与更多的程序处理环节       3、 如果可以,“明文”要做到每次变化       4、“明文”使用完成后要马上销毁,不在内存中存留。销毁的方法有很多种,例如将“明文”重新赋值,变成新的干扰数据,或者重新置零。否则容易被跟踪窃取。有很多盗版人员都是通过这种方法对MCU进行带电分析,从ram中获取到很多重要数据,从而实现了对MCU的破解。

网友评论

?-о 2019年11月21日
看来,“明文”好象起到很关键的作用
zntsbkhhh 2019年11月21日
明文肯定关键啊,是MCU中代码或者要用的数据,没有这个程序就没法运行
Test_wf 2019年11月21日
加密芯片中的加密二字只是个概念请问加密芯片其原理?
陌小凯 2019年11月21日
明文 这里指的是传输数据吧,做个就加密传输比较稳妥
mingmei123 2019年11月22日
明文不存在连续的空间中,有没有实际的例子呢?
kessy1 2019年11月22日
ram里面的数据掉电就丢失了,所以别人根本没法分析的
QL87 2019年11月22日
那可不是,ram带电也能分析的,如果不销毁,一直放在那,CPU可能确实就不去动它,就有可能读出来。 
tyl20100 2019年11月22日
加密芯片?是不是他们常说的加密狗?如果不是那两者又是什么关系有什么区别呢?
miniminimini 2019年11月22日
两者的功能应该差不多 封装形式不一样
明亮的光 2019年11月25日
加密芯片?是不是他们常说的加密狗?如果不是那两者又是什么关系有什么区别呢?
wang0327 2019年11月25日
加密传输听着很高端,有具体方法吗,哪位大神给讲解一下?
Test_wf 2019年11月25日
通用的MCU根本不能防盗版,难道还有研发工程师们没用加密芯片吗?
陌小凯 2019年11月25日
我听说那个凌科芯安家的加密芯片挺好的,大家可以试试
mingmei123 2019年11月25日
专业性好强的文章,当做技术储备,希望楼主能够详细的再具体介绍一些
mingmei123 2019年11月25日
专业性好强的文章,当做技术储备,希望楼主能够详细的再具体介绍一些
明亮的光 2019年11月25日
就是将明文分散存储在不连续的地址空间中,使用时再临时拼凑
kessy1 2019年11月26日
专业性太强了,看不懂,还是请大神来白话一下吧

wang0327 2019年11月26日
加强安全的方法很多,往往是1+1>2。
tyl2010 2019年11月26日
加密传输就是将待传输的数据按某种规则混入一些随机数,而后再使用加密算法将数据进行加密,是传输数据是变化的密文
QL87 2019年11月27日
受教了,以后我还是用加密芯片才会更安全啊,幸亏看到这个帖子
miniminimini 2019年11月27日
正好在做一款产品的加密,看到楼主的的文章,,又有了新的思路,感谢楼主的分享,这样的好文章楼主要多发表一点。真是雪中送炭啊!
kessy1 2019年12月27日
专业性好强的文章,当做技术储备,希望楼主能够详细的再具体介绍一些