第五期:守住单片机的小秘密,你知道哪些骚操作
今天讨论一个在产品量产时需要十分关注的问题:产品信息安全。一般这块分为三类:产品自身的固件信息安全,产品与外部通信协议的信息安全,产品采集存储用户数据的信息安全。
现在无论是生产商还是用户,都十分在意一个产品量产出去了,给别人使用信息保密到底有没有问题。最简单的来说,如果产品的程序直接被人破解了,那问题就大了,第二天可能市面上就会出现大批量的克隆产品。严重一点的,比如pos刷卡机,那就涉及到现金交易问题了。
信息加密,这个手段就很多了,比如常见的就有:
根据芯片独一无二的UID对芯片进行程序加密;
暴力点的,直接打磨或更改芯片型号丝印;
有些单片机可以开启Flash保护;
量产时禁闭调试口等;
如果是协议加密,那就更为复杂了,可以用主流的加密算法加密数据,或者自定义编解码的算法。
最近新出的基于arm v8架构的CM23和CM33核,也是专注于信息安全的。
未来是物联网的时代,与此对应的,也是关注信息安全的时代,对于研发生产过程中的信息安全问题,不知各位网友你们有什么样的”骚操作“呢?不限于理论,想法,经验,方法,欢迎各位畅所欲言!
/************************************个人分享************************************/
我最近正在看CM33核的相关安全模块。不得不说,越是网络发达的时代,信息安全就越是重要,arm新推出的CM33核就是专注信息安全领域。ST发布STM32L5系列就是属于CM33核的,旨在加强物联网安全防御能力。我现在正在看CM33里面的TrustZone部分。我先起个头,说一下这个TrustZone到底是个什么东西:
TrustZone是ARM针对消费电子设备设计的一种硬件架构,其目的是为消费电子产品构建一个安全框架来抵御各种可能的攻击。
TrustZone在概念上将SoC的硬件和软件资源划分为安全(Secure World)和非安全(Normal World)两个世界,所有需要保密的操作在安全世界执行(密码核对,数据解码等),其余操作在非安全世界执行(界面操作),安全世界和非安全世界通过一个名为Monitor Mode的模式进行转换。
处理器架构上,TrustZone将每个物理核虚拟为两个核,一个非安全核,运行非安全世界的代码;和另一个安全核,运行安全世界的代码。两个虚拟的核以基于时间片的方式运行,根据需要实时占用物理核,并通过Monitor Mode在安全世界和非安全世界之间切换,类似同一CPU下的多应用程序环境,不同的是多应用程序环境下操作系统实现的是进程间切换,而Trustzone下的Monitor Mode实现了同一CPU上两个操作系统间的切换。
如果目标是用控制芯片做出来的产品不被别人模仿,这个不现实。
只要有产品的市场反馈好,哪怕用别的实现方式绕过专利保护也能给你快速山寨出来。只是代价大小区别而已,毕竟市场经济就是这样。
大家想一想,PS4为例的各代游戏主机用的不是自己定制的芯片吗?只要有决心不是都能破解出来吗?更别说M32、M33这种架构都知道的产品。
我觉得与其讨论怎么加密,不如讨论怎么让自己的产品做出来能有别人抄袭的价值。:lol 我听说过的最嚣张的做法是一个不差钱的主,找芯片厂专门定制一批芯片,不对外销售的那种:lol 给力奥 信息安全这块属实很流弊,之前瑞萨有款单片机就是双flash,还有校验功能,如果口令不对 程序下载不进去,里面的程序也复制不出来。 stm1024 发表于 2018-11-7 09:29
我听说过的最嚣张的做法是一个不差钱的主,找芯片厂专门定制一批芯片,不对外销售的那种 ...
这确实是财大气粗的做法,芯片丝印都不用打磨了,直接摆给别人看。 yangjiaxu 发表于 2018-11-7 09:30
给力奥 信息安全这块属实很流弊,之前瑞萨有款单片机就是双flash,还有校验功能,如果口令不对 程序下载不 ...
双flash是为了防止单片机程序的篡改和非正常读取吗 我见过有大神这样操作过,板子上挂二个单片机,一个用来运行项目应用程序,一个用来加密。 信息安全确实重要,不然现今这种环境下分分钟给你仿出来。 ST今年也是主推系统安全,但是我在目前的工作中还没那么高的保密级别,所以也不好乱说。
就说说我自己用得比较多的Flash加密措施吧
第一种,直接使用STM32自带的读保护功能,使能之后,Flash中的内容不可以通过调试端口读出来。这种方法比较简单,保密级别不高,只需要在烧写程序时勾选就可以。
第二种,通过STM32的自身唯一的UID来做加密。这种方法需要程序中实现,把UID备份在Flash中的某个区域,初次烧写程序时,其实这个区域是空的,这时备份UID,以后每次运行,都判断UID与Flash中备份的是否一致,一致才可运行,不一致的话,你想干啥都行,死机啊重启啊自毁等等。。。
附上两份官方文档,也是主要讲安全的,比较全面。
有那种专用加密芯片的,然后做一个随时在线激活机制。
页:
[1]
2