System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 数据保护方法、装置及系统制造方法及图纸_技高网

数据保护方法、装置及系统制造方法及图纸

技术编号:40276364 阅读:13 留言:0更新日期:2024-02-02 23:03
本申请公开了一种数据保护方法、装置及系统,属于计算机技术领域。方法应用于控制器,该控制器为片上系统内部的闪存控制器或者为部署在片上系统与闪存之间的可编程逻辑控制器。控制器接收处理核发送的针对闪存的访问命令,该访问命令包括命令字和访问地址。如果该命令字指示该访问命令的访问类型为写或擦除,且该访问地址属于控制器中配置的闪存的保护地址范围,控制器拦截该访问命令。本申请通过在控制器上配置闪存的保护地址范围,如果片上系统内部的处理核想要修改闪存中该保护地址范围对应的内容,则控制器阻止该修改行为,实现针对闪存的数据防篡改功能,能够提高闪存中数据的安全性和可靠性。

【技术实现步骤摘要】

本申请涉及计算机,特别涉及一种数据保护方法、装置及系统


技术介绍

1、闪存(flash memory)是一种非易失性存储器,能够在断电后保持存储的数据不丢失。包含处理核和闪存控制器的片上系统(system on a chip,soc)能够访问片外部署的闪存。但是由于闪存的访问接口速率较低,因此即使soc在访问闪存之前完成了对闪存中数据的校验,在校验通过后到soc成功访问闪存的过程中,还是存在被攻击的时间窗。在这个时间窗内,攻击者有可能拿到闪存的操作权进而篡改闪存中的数据,导致soc无法访问到闪存的原有数据。目前闪存中数据的安全性和可靠性通常较低。


技术实现思路

1、本申请提供了一种数据保护方法、装置及系统。

2、第一方面,提供了一种数据保护方法,应用于片上系统。该片上系统包括处理核和闪存控制器。闪存控制器接收处理核发送的针对闪存的第一访问命令。该闪存部署于片上系统的外部。第一访问命令包括第一命令字和第一访问地址。第一命令字用于指示第一访问命令的访问类型,该访问类型包括读、写或擦除。第一访问地址用于指示第一访问命令在闪存中所访问的地址范围。如果第一命令字指示第一访问命令的访问类型为写或擦除,且第一访问地址属于闪存控制器中配置的闪存的保护地址范围,闪存控制器拦截第一访问命令。

3、本申请通过在闪存控制器中配置闪存的保护地址范围,如果处理核想要修改闪存中该保护地址范围对应的内容,则闪存控制器阻止该修改行为,从而保护闪存中该保护地址范围对应的内容不被篡改,实现针对闪存的数据防篡改功能,能够提高闪存中数据的安全性和可靠性。

4、可选地,闪存中部署有程序文件,闪存控制器中配置的闪存保护地址范围包括该程序文件的地址范围。其中,该程序文件包括代码段和数据段。这样闪存控制器能够保护闪存中的程序文件不被篡改,保证处理核能够正常运行该程序文件中的代码。

5、可选地,闪存控制器接收处理核发送的针对闪存的第一访问命令的实现方式,包括:闪存控制器在间接访问模式下接收处理核发送的第一访问命令。

6、本申请中,闪存控制器设置有两种访问模式,包括直接访问模式和间接访问模式。当闪存控制器处于直接访问模式时,仅支持处理核对闪存的读操作。当闪存控制器处于间接访问模式时,支持处理核对闪存的读、写和擦除操作。

7、可选地,闪存控制器在直接访问模式下接收处理核发送的针对闪存的第二访问命令,第二访问命令包括第二访问地址,第二访问地址用于指示第二访问命令在闪存中所访问的地址范围。如果第二访问地址不属于闪存控制器中配置的闪存的可读地址范围,闪存控制器拦截第二访问命令。

8、本申请通过在闪存控制器中配置闪存的可读地址范围,使得处理核在闪存控制器处于直接访问模式时,无法读取到闪存中该可读地址范围以外的内容,实现访问权限控制。

9、可选地,如果第二访问地址属于闪存控制器中配置的闪存的可读地址范围,闪存控制器生成第二命令字,第二命令字用于指示第二访问命令的访问类型为读。闪存控制器基于第二命令字和第二访问地址从闪存中读取第二访问地址对应的内容,并将第二访问地址对应的内容发送给处理核。

10、可选地,闪存控制器中配置的闪存的可读地址范围与保护地址范围相同。

11、本申请中,通过在闪存控制器中配置相同的可读地址范围和保护地址范围,由于闪存中保护地址范围对应的内容无法被篡改,且处理核在直接访问闪存时只能读取到可读地址范围对应的内容,因此能够保证处理核通过直接访问从闪存中读取的内容是未经篡改的,从而提高处理核的运行可靠性。

12、可选地,如果第一命令字指示第一访问命令的访问类型为读,闪存控制器基于第一命令字和第一访问地址从闪存中读取第一访问地址对应的内容,并将第一访问地址对应的内容发送给处理核。

13、可选地,闪存控制器接收处理核发送的模式切换指令,该模式切换指令用于指示闪存控制器由直接访问模式切换为间接访问模式,或者由间接访问模式切换为直接访问模式。

14、可选地,在闪存控制器接收处理核发送的针对闪存的第一访问命令之前,处理核通过运行第一可信程序,在闪存控制器中配置保护地址范围。处理核通过运行第二可信程序,对闪存中该保护地址范围对应的内容进行校验,并确定该保护地址范围对应的内容校验通过。

15、本申请中,通过先在闪存控制器中配置闪存的保护地址范围,再对闪存中该保护地址范围对应的内容进行校验。这样,在处理核对闪存中该保护地址范围对应的内容校验通过之后,如果闪存控制器接收到针对闪存中该保护地址范围对应的内容的修改指令,闪存控制器则拦截该修改指令以阻止对闪存的修改,从而能够避免处理核校验通过后到访问闪存的时间窗内闪存中经过校验的内容被篡改,提高了闪存中数据的安全性和可靠性。

16、可选地,上述片上系统还包括只读存储器和随机存取存储器。片上系统上电或复位后,处理核通过运行只读存储器中的第一程序文件,通过闪存控制器读取闪存中的第二程序文件以及第一签名,并将读取的第二程序文件和第一签名保存在随机存取存储器中,第一签名是基于第一私钥和第二程序文件的内容生成的。处理核采用第一私钥对应的第一公钥对第一签名进行验证。处理核在对第一签名验证通过之后,从随机存取存储器中保存的第二程序文件中获取第一可信程序和第二可信程序。

17、本申请在处理核的安全启动过程中完成信任链校验,实现对闪存控制器的闪存保护功能的可信配置。

18、可选地,处理核通过运行第二可信程序,对闪存中保护地址范围对应的内容进行校验的实现方式,包括:处理核通过运行第二可信程序,通过闪存控制器读取闪存中保护地址范围对应的内容以及第二签名,并将读取的保护地址范围对应的内容和第二签名保存在随机存取存储器中,第二签名是基于第二私钥和保护地址范围对应的内容生成的。处理核采用第二私钥对应的第二公钥对第二签名进行验证。

19、可选地,处理核通过运行第一可信程序,在闪存控制器中配置保护地址范围之后,处理核通过运行第三可信程序,锁定闪存控制器针对闪存的保护功能配置。其中,闪存控制器针对闪存的保护功能配置被锁定,是指闪存控制器中针对闪存的保护功能配置无法被修改。闪存控制器针对闪存的保护功能配置包括防篡改配置和/或访问权限控制配置。其中,防篡改配置包括在闪存控制器上配置闪存的保护地址范围,以及配置闪存控制器在间接访问模式下保护闪存中该保护地址范围对应的内容不被篡改。访问权限控制配置包括在闪存控制器上配置闪存的可读地址范围,以及配置闪存控制器在直接访问模式下只读闪存中该可读地址范围对应的内容。

20、第二方面,提供了另一种数据保护方法。可编程逻辑控制器接收片上系统发送的针对闪存的第一访问命令。可编程逻辑控制器部署在片上系统与闪存之间。第一访问命令包括第一命令字和第一访问地址。第一命令字用于指示第一访问命令的访问类型,该访问类型包括读、写或擦除。第一访问地址用于指示第一访问命令在闪存中所访问的地址范围。如果第一命令字指示第一访问命令的访本文档来自技高网...

【技术保护点】

1.一种数据保护方法,其特征在于,应用于片上系统,所述片上系统包括处理核和闪存控制器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述闪存中部署有程序文件,所述保护地址范围包括所述程序文件的地址范围。

3.根据权利要求1或2所述的方法,其特征在于,所述闪存控制器接收所述处理核发送的针对闪存的第一访问命令,包括:

4.根据权利要求3所述的方法,其特征在于,所述方法还包括:

5.根据权利要求4所述的方法,其特征在于,所述方法还包括:

6.根据权利要求4或5所述的方法,其特征在于,所述可读地址范围与所述保护地址范围相同。

7.根据权利要求3至6任一所述的方法,其特征在于,所述方法还包括:

8.根据权利要求3至7任一所述的方法,其特征在于,所述方法还包括:

9.根据权利要求1至8任一所述的方法,其特征在于,在所述闪存控制器接收所述处理核发送的针对闪存的第一访问命令之前,所述方法还包括:

10.根据权利要求9所述的方法,其特征在于,所述片上系统还包括只读存储器和随机存取存储器,所述方法还包括:

11.根据权利要求10所述的方法,其特征在于,所述处理核通过运行第二可信程序,对所述闪存中所述保护地址范围对应的内容进行校验,包括:

12.根据权利要求9至11任一所述的方法,其特征在于,在所述处理核通过运行第一可信程序,在所述闪存控制器中配置所述保护地址范围之后,所述方法还包括:

13.一种数据保护方法,其特征在于,所述方法包括:

14.根据权利要求13所述的方法,其特征在于,所述可编程逻辑控制器接收片上系统发送的针对闪存的第一访问命令,包括:

15.根据权利要求14所述的方法,其特征在于,所述方法还包括:

16.根据权利要求15所述的方法,其特征在于,所述方法还包括:

17.根据权利要求14至16任一所述的方法,其特征在于,所述方法还包括:

18.根据权利要求14至17任一所述的方法,其特征在于,所述方法还包括:

19.根据权利要求13至18任一所述的方法,其特征在于,在所述可编程逻辑控制器接收片上系统发送的针对闪存的第一访问命令之前,所述方法还包括:

20.根据权利要求19所述的方法,其特征在于,在所述可编程逻辑控制器根据所述配置命令在所述可编程逻辑控制器中配置所述保护地址范围之后,所述方法还包括:

21.一种片上系统,其特征在于,包括:处理核、存储器和闪存控制器;

22.一种可编程逻辑控制器,其特征在于,包括:可编程逻辑单元和可编程输入输出单元;

23.一种数据保护系统,其特征在于,包括:片上系统和可编程逻辑控制器,所述片上系统包括处理核和闪存控制器,所述可编程逻辑控制器与所述闪存控制器连接;

24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,当所述指令被处理器执行时,实现如权利要求1至20任一所述的数据保护方法。

25.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器执行时,实现如权利要求1至20任一所述的数据保护方法。

26.一种芯片,其特征在于,包括可编程逻辑电路和/或程序指令,当芯片运行时,实现如权利要求1至20任一所述的数据保护方法。

...

【技术特征摘要】

1.一种数据保护方法,其特征在于,应用于片上系统,所述片上系统包括处理核和闪存控制器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述闪存中部署有程序文件,所述保护地址范围包括所述程序文件的地址范围。

3.根据权利要求1或2所述的方法,其特征在于,所述闪存控制器接收所述处理核发送的针对闪存的第一访问命令,包括:

4.根据权利要求3所述的方法,其特征在于,所述方法还包括:

5.根据权利要求4所述的方法,其特征在于,所述方法还包括:

6.根据权利要求4或5所述的方法,其特征在于,所述可读地址范围与所述保护地址范围相同。

7.根据权利要求3至6任一所述的方法,其特征在于,所述方法还包括:

8.根据权利要求3至7任一所述的方法,其特征在于,所述方法还包括:

9.根据权利要求1至8任一所述的方法,其特征在于,在所述闪存控制器接收所述处理核发送的针对闪存的第一访问命令之前,所述方法还包括:

10.根据权利要求9所述的方法,其特征在于,所述片上系统还包括只读存储器和随机存取存储器,所述方法还包括:

11.根据权利要求10所述的方法,其特征在于,所述处理核通过运行第二可信程序,对所述闪存中所述保护地址范围对应的内容进行校验,包括:

12.根据权利要求9至11任一所述的方法,其特征在于,在所述处理核通过运行第一可信程序,在所述闪存控制器中配置所述保护地址范围之后,所述方法还包括:

13.一种数据保护方法,其特征在于,所述方法包括:

14.根据权利要求13所述的方法,其特征在于,所述可编程逻辑控制器接...

【专利技术属性】
技术研发人员:杨宇陈艳马圣平陈飞鸣
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1