带主动防御功能的功能模块的MCU设计方法技术

技术编号:26376940 阅读:31 留言:0更新日期:2020-11-19 23:45
本发明专利技术公开了一种带主动防御功能的功能模块的MCU设计方法,MCU各个功能模块在启动之前均通过主动防御机制所认证,包括步骤S1:MCU上电启动;步骤S2:MCU对在高级MCU总线矩阵上的各个功能模块进行可信度量;步骤S3:MCU在对外围电路总线矩阵上的各个功能模块进行可信度量。本发明专利技术公开的一种带主动防御功能的功能模块的MCU设计方法,其各个功能模块在启动之前都通过可信MCU附带的主动防御机制所认证,达到整体系统安全可控的目的。

【技术实现步骤摘要】
带主动防御功能的功能模块的MCU设计方法
本专利技术属于MCU安全防御
,具体涉及一种带主动防御功能的功能模块的MCU设计方法。
技术介绍
现在的通用MCU启动时缺失信息安全确认,无主动防御功能的弊端,容易被黑客入侵系统,系统容易出现无法自主可控的风险。我国金融、电信、能源、物联网等关键领域的对于MCU的依赖度非常高,一旦出现安全问题,甚至会直接威胁到社会安全。通用MCU在启动时,硬件POR电路发现上电之后,会产生一个复位信号,然后时钟启动,CPU就开始读取flash的数据,并执行程序,系统开始运行。期间硬件不会对启动电路,Flash,RAM,以及嵌入式程序进行可信度量,一旦发生嵌入式程序已被破坏或者嵌入了木马,CPU会无差别执行木马程序当成正常程序,系统处于不可控状态。授权公告号为:CN104777761B,主题名称为实现MCU安全性的方法及电路的专利技术专利,其技术方案公开了“MCU上电后,利用电源监测电路把MCU芯片内部的总复位信号置位“1”,然后,启动MCU芯片内部的RC振荡电路,同时启动上电复位自适应电路;该上电复位自适应电路立即读取存放于Flash安全位置的128位安全密钥;并将该安全密钥存放在密码匹配电路,之后释放所述总复位信号;JTAG调试接口默认是关闭状态;当MCU芯片工作后,所述密码匹配电路开始工作;当外部输入密码时,所述密码匹配电路对该密码与其保存的安全密钥进行匹配确认,当匹配确认为正确后,所述JTAG调试接口打开,否则进行全MCU芯片的擦除;在所述上电复位自适应电路的控制下,根据所述RC振荡电路输出的时钟,每经过1024个时钟进行flash的读操作,读取flash内的flash校验码;如果无法读取到正确的flash校验码,则再经过1024个时钟之后,继续读取flash校验码,直到能够正常读取到正确的flash检测码,之后读取128位安全密钥”。以上述专利技术专利为例,其虽然也提及了MCU的安全保护,但是其技术方案更多涉及的是硬件本质上对MCU进行安全保护,而本专利技术不仅仅在硬件本质上进行安全保护,还通过主动防御电路使之具有主动性、智能化和安全可控性。因此,针对上述问题,予以进一步改进。
技术实现思路
本专利技术的主要目的在于提供一种带主动防御功能的功能模块的MCU设计方法,其各个功能模块在启动之前都通过可信MCU附带的主动防御机制所认证,达到整体系统安全可控的目的,在启动每一个新功能模块之前,都会对于这个功能模块进行可信度量,即先确认这个功能模块没有受到破坏,没有木马嵌入,没有非法数据探测状态,一步一度量,直到MCU正常启动运行程序。本专利技术的另一目的在于提供带一种主动防御功能的功能模块的MCU设计方法,其会对所有功能模块都具有主动防御性能,可以主动防御外界恶意侵入,在CPU启动各功能模块之前,会先对各功能模块进行可信度量,保证各模块安全可控之后才会执行各功能模块的允许,逐级认证保证整体系统的安全可控。为达到以上目的,本专利技术提供一种带主动防御功能的功能模块的MCU设计方法,MCU各个功能模块在启动之前均通过主动防御机制所认证,包括以下步骤:步骤S1:MCU上电启动;步骤S2:MCU对在高级MCU总线矩阵上的各个功能模块进行可信度量;步骤S3:MCU在对外围电路总线矩阵上的各个功能模块进行可信度量。作为上述技术方案的进一步优选的技术方案,步骤S2具体实施为以下步骤:步骤S2.1:MCU分别通过主动防御电路对CPU模块、Flash控制模块和RAM控制模块进行可信度量;步骤S2.2:MCU分别通过主动防御电路对USB控制模块、DMA控制模块和密码算法模块进行可信度量;步骤S2.3:MCU分别通过主动防御电路对时钟控制模块和复位控制模块进行可信度量。作为上述技术方案的进一步优选的技术方案,步骤S3具体实施为以下步骤:步骤S3.1:MCU分别通过主动防御电路对通讯控制模块和计数器控制模块进行可信度量;步骤S3.2:MCU分别通过主动防御电路对模拟电路控制模块和电源控制模块进行可信度量。作为上述技术方案的进一步优选的技术方案,步骤S2.1具体实施为以下步骤:步骤S2.1.1:CPU模块被灌入时钟后连续给出CPU信息;步骤S2.1.2:硬件对比固化在CPU模块中的CPU信息并且当CPU信息出现错误时,MCU处于复位状态并且从端口输出报警信息;步骤S2.1.3:主动防御电路(1)分别对CPU模块、Flash控制模块、RAM控制模块和密码算法模块的最顶层金属布满安全屏蔽布线并且安全屏蔽布线被灌入时钟后启动发送电路和接收电路,接收电路接收并且解析发送电路发送的特征序列,当特征序列出现错误或者最顶层金属被切断时,MCU处于复位状态并且从端口输出报警信息;主动防御电路(1)具体实现方法(CPU模块包括CPU和调试接口,在CPU和调试接口之间加入主动防御电路(1)):(a)MCU上电启动并且POR电路启动之后,CPU启动之前,会对CPU模块进行可信度量。POR电路释放POR信号的同时启动内部时钟电路,有时钟灌入CPU模块,CPU模块会连续给出CPUID,复位地址等信息。硬件同时对比固化在电路里面的CPUID,复位地址等信息,一旦出现错误,从某个MCU端口输出报警信号,同时MCU以及系统都被锁死,处于复位状态,也就是对于系统最安全的状态。(b)同时在CPU模块、Flash控制模块、RAM控制模块和密码算法模块的最顶层金属布满安全屏蔽布线(时钟线+数据线),通过时钟灌入,安全屏蔽布线收发电路启动工作,发送电路发出某种特征序列的协议,接收电路接收这个附带某种特征序列的数据,并解析。一旦发现芯片(即MCU)被某些探针探测,探针有寄生电容,高速序列就会出错,或者一旦发现芯片被开盖并把顶层金属切断,那么接收器收不到某种特征序列,时间超时之后,MCU被锁死,同时报警。使用这样的设计方法可以实现CPU模块(电路)的主动防御机制,但不限于此种方式实现CPU电路的主动防御。步骤S2.1.4:Flash控制模块的第一Flash单元在CPU模块经过可信度量后,主动防御电路(2)发出一段不连续的地址到第一Flash单元并且第一Flash单元根据不连续的地址输出第一Flash数据,硬件对比固化在Flash电路中的第一Flash数据并且当第一Flash数据出现错误时,MCU处于复位状态并且从端口输出报警信息;步骤S2.1.5:当第一Flash单元通过可信度量后CPU开始执行安全启动程序,当安全启动程序的运算结果符合存在第一Flash单元的运算结果,则CPU运行Flash控制模块的第二Flash单元,否则MCU处于复位状态并且从端口输出报警信息;主动防御电路(2)实现方法(Flash控制模块包括Flash控制器和Flash电路,主动防御电路(2)位于Flash控制器和Flash电路之间):(a)Flash基本有2块电路实现,第一块小Flash属于安全存储器(第一Flash本文档来自技高网
...

【技术保护点】
1.一种带主动防御功能的功能模块的MCU设计方法,MCU各个功能模块在启动之前均通过主动防御机制所认证,其特征在于,包括以下步骤:/n步骤S1:MCU上电启动;/n步骤S2:MCU对在高级MCU总线矩阵上的各个功能模块进行可信度量;/n步骤S3:MCU在对外围电路总线矩阵上的各个功能模块进行可信度量。/n

【技术特征摘要】
1.一种带主动防御功能的功能模块的MCU设计方法,MCU各个功能模块在启动之前均通过主动防御机制所认证,其特征在于,包括以下步骤:
步骤S1:MCU上电启动;
步骤S2:MCU对在高级MCU总线矩阵上的各个功能模块进行可信度量;
步骤S3:MCU在对外围电路总线矩阵上的各个功能模块进行可信度量。


2.根据权利要求1所述的一种带主动防御功能的功能模块的MCU设计方法,其特征在于,步骤S2具体实施为以下步骤:
步骤S2.1:MCU分别通过主动防御电路对CPU模块、Flash控制模块和RAM控制模块进行可信度量;
步骤S2.2:MCU分别通过主动防御电路对USB控制模块、DMA控制模块和密码算法模块进行可信度量;
步骤S2.3:MCU分别通过主动防御电路对时钟控制模块和复位控制模块进行可信度量。


3.根据权利要求1所述的一种带主动防御功能的功能模块的MCU设计方法,其特征在于,步骤S3具体实施为以下步骤:
步骤S3.1:MCU分别通过主动防御电路对通讯控制模块和计数器控制模块进行可信度量;
步骤S3.2:MCU分别通过主动防御电路对模拟电路控制模块和电源控制模块进行可信度量。


4.根据权利要求2所述的一种带主动防御功能的功能模块的MCU设计方法,其特征在于,步骤S2.1具体实施为以下步骤:
步骤S2.1.1:CPU模块被灌入时钟后连续给出CPU信息;
步骤S2.1.2:硬件对比固化在CPU模块中的CPU信息并且当CPU信息出现错误时,MCU处于复位状态并且从端口输出报警信息;
步骤S2.1.3:主动防御电路(1)分别对CPU模块、Flash控制模块、RAM控制模块和密码算法模块的最顶层金属布满安全屏蔽布线并且安全屏蔽布线被灌入时钟后启动发送电路和接收电路,接收电路接收并且解析发送电路发送的特征序列,当特征序列出现错误或者最顶层金属被切断时,MCU处于复位状态并且从端口输出报警信息;
步骤S2.1.4:Flash控制模块的第一Flash单元在CPU模块经过可信度量后,主动防御电路(2)发出一段不连续的地址到第一Flash单元并且第一Flash单元根据不连续的地址输出第一Flash数据,硬件对比固化在Flash电路中的第一Flash数据并且当第一Flash数据出现错误时,MCU处于复位状态并且从端口输出报警信息;
步骤S2.1.5:当第一Flash单元通过可信度量后CPU开始执行安全启动程序,当安全启动程序的运算结果符合存在第一Flash单元的运算结果,则CPU运行Flash控制模块的第二Flash单元,否则MCU处于复位状态并且从端口输出报警信息;
步骤S2.1.6:主动防御电路(3)发出不连续的地址到RAM控制器并且RAM控制器根据不连续的地址输出...

【专利技术属性】
技术研发人员:牟晨杰罗安李云汪飞李武华周乐明
申请(专利权)人:希翼微电子嘉兴有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1