The invention discloses an instruction flow system in the operation of security detection and fault tolerance method, the method and implementation of the flow level as a buffer of the instruction stream increase instruction stream between the original instruction, called intermediate instruction stream, set the PRAM to store intermediate instruction stream, PFLASH stored in the original instruction stream, between FLASH and the increase of CPU level cache intermediate instruction stream, cache using Cache structure, does not need to be addressed, storage and detection of the instruction stream is completed automatically by hardware. It is easy to manage the read, write and authority of the original instruction stream, and also to isolate the attack fault from the original instruction stream, so that it is more convenient for security detection and fault tolerance management of the attack.
【技术实现步骤摘要】
系统运行中指令流的安全检测和容错方法
本专利技术属于指令流
,特别涉及系统运行中指令流的安全检测和容错技术。
技术介绍
指令流是CPU要运行的指令集合,决定着CPU执行的功能。如果指令流有故障,则CPU将执行错误的指令,引起系统功能紊乱或崩溃。所以,在系统运行中保证指令流的可靠性和正确性是CPU正确运行的前提。同时,指令流也是各种攻击的重点和目标,它们需要篡改指令,挟持CPU,进行攻击。由此可见,保证指令流的可靠性和正确性是保证系统可靠性和安全性的关键,而且,对指令流进行监控和安全检测可以对绝大部分的攻击起到有效的防护作用。如专利申请201210057989.0公开了一种用于基于由计算单元在执行程序期间被执行的指令算出签名的设备和方法。该方法包括:当接收到中断请求时从签名模块中借助与中断请求相关的中断例程的程序语句读出与所中断的程序相关的签名,借助中断例程的程序语句存储该签名并且在离开中断例程之前借助中断例程的程序语句将所存储的签名写到签名模块中,或者当对子函数进行调用时,在调用子函数之前借助引起签名相对改变的程序语句使签名寄存器中的签名与子函数的签名相适配,以及在从子函数返回到程序的从中实现子函数的调用的程序段之后,借助其他的引起签名相对改变的程序语句来使签名寄存器中的签名与所述程序段的签名相适配。然而,由于该方法是通过执行例程的中断请求结合签名,进行认证,调用相关子函数,具有一定的安全检测功能,但是并具备容错功能,且该方法效率不高,且并不能避免软件的攻击。
技术实现思路
针对上述问题,本专利技术提供了一种系统运行中指令流的安全检测和容错方法,该方法F ...
【技术保护点】
一种系统运行中指令流的安全检测和容错方法,其特征在于在FLASH等非挥发性存储器中存储的经过安全认证的指令流称为原始指令流,将CPU接收到的实际执行的指令流称为执行指令流,在原始指令流和执行指令流之间增加了一级作为缓冲的指令流,被称为中间指令流,设置PRAM存储中间指令流,PFLASH中存储原始指令流,缓存中间指令流采用类Cache的结构,不需要编址,指令流的存储和检测都由硬件自动完成。
【技术特征摘要】
1.一种系统运行中指令流的安全检测和容错方法,其特征在于在FLASH等非挥发性存储器中存储的经过安全认证的指令流称为原始指令流,将CPU接收到的实际执行的指令流称为执行指令流,在原始指令流和执行指令流之间增加了一级作为缓冲的指令流,被称为中间指令流,设置PRAM存储中间指令流,PFLASH中存储原始指令流,缓存中间指令流采用类Cache的结构,不需要编址,指令流的存储和检测都由硬件自动完成。2.如权利要求1所述的系统运行中数据流的安全检测和容错方法,其特征在于系统的原始指令流和原始数据流存储在非挥发的FLASH中,非挥发FLASH分成若干块,且每个块的大小一样,同时,一个块内要么都是程序,要么都是数据。3.如权利要求1所述的系统运行中数据流的安全检测和容错方法,其特征在于所述PFLASH不能轻易被写入,只有经过认证的程序才能由DMA在特定的条件下才能将新程序写入PFLASH,否则,PFLASH不开放写权限。4.如权利要求3所述的系统运行中数据流的安全检测和容错方法,其特征在于程序RAM和数据RAM,也叫PRAM和DRAM,分别实现了对指令流和数据流的分级管理;程序RAM和数据RAM不独立编址,程序RAM和数据RAM也分成若干块,块的大小和FLASH中块的大小相同,程序RAM中的块只存储程序;数据RAM中的块只存储数据。5.如权利要求2所述的系统运行中数据流的安全检测和容错方法,其特征在于所述FLASH具有保护电路,且该FLASH保护电路具有权限管理模块及指令多重纠错码产生和状态维护模块,总线主机先给FLASH传送一段验证码,FLASH保护电路的权限管理模块接收这段验证码,并进行验证;所述FLASH保护电路的权限管理模块同时维护着指令块、数据块的标志位,FLASH保护电路的权限保护电路管理模块产生的允许写入信号和接下来总线上传输的地址、数据和控制信号一起,输入给指令多重纠错码产生和状态维护模块。6.如权利要求5所述的系统运行中数据流的安全检测和容错方法,其特征在于为了保证PFLASH可靠性和安全性,将块纠错码和指令纠错码联合使用,块纠错码在程序进行认证时产生,并和程序一起传输、存储;对于指令块,还需要保存它的块多重纠错码;在FLASH保护电路生成的多重纠错码是以...
【专利技术属性】
技术研发人员:张景,
申请(专利权)人:深圳前海生生科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。