CN112703490A - 用于存储器保护的装置和方法 - Google Patents

用于存储器保护的装置和方法 Download PDF

Info

Publication number
CN112703490A
CN112703490A CN201880097356.8A CN201880097356A CN112703490A CN 112703490 A CN112703490 A CN 112703490A CN 201880097356 A CN201880097356 A CN 201880097356A CN 112703490 A CN112703490 A CN 112703490A
Authority
CN
China
Prior art keywords
protected
storage area
memory
data
protected storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201880097356.8A
Other languages
English (en)
Inventor
伊戈尔·斯托帕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN112703490A publication Critical patent/CN112703490A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本公开涉及用于存储器保护的装置和方法。该装置包括存储器写入设备和存储器。该存储器包括用于存储要保护的数据的可保护存储区。该存储器写入设备用于将要保护的数据存储在可保护存储区中。该存储器写入设备还用于确定受保护存储区域。该受保护存储区域包括要保护的数据,并且对该受保护存储区域的写入访问被不可逆地禁止。受保护存储区域被确定为不可逆地禁止任何写入存储器访问,从而提高存储器保护的可靠性。

Description

用于存储器保护的装置和方法
技术领域
本公开涉及用于存储器保护的装置和方法。此外,本公开还涉及对应的计算机程序和计算机可读存储介质。
背景技术
微处理器系统和微控制器系统通过将其大部分暂态保持在存储器中来操作。暂态由不同的状态信息组成,这些状态信息具有不同的重要性和不同的使用寿命。通常可以在状态内识别一个或多个子状态,因为这些子状态控制系统的主要功能,所以攻击者可能对其感兴趣。因此,对这种系统的攻击将试图识别与期望结果相关的子状态在存储器中的位置(例如,存储器地址)。例如,控制系统的哪个用户可以执行某些特权操作。一旦已知子状态的存储器位置(例如,存储器地址),则攻击者可以试图改写这些子状态,设置对他们来说更有利的值。
现有技术中针对这种攻击的防御机制是部署如图1所示的一个或多个存储器管理单元(memory management unit,MMU)以及可选地部署一个或多个输入-输出存储器管理单元(input–output memory management unit,IOMMU)。MMU和IOMMU可以限制对某些存储区域的访问,试图防止前面描述的攻击。当程序(例如,操作系统和/或管理程序)在中央处理单元(central processing unit,CPU)上运行时,CPU可以配置MMU和IOMMU。MMU用于限制CPU上运行的程序可访问的地址集。IOMMU用于限制外围设备(例如,输入设备和输出设备等)的访问。在一些较简单的系统上,MMU可能被存储器保护单元(memory protectionunit,MPU)所取代。
然而,IOMMU、MMU、或MPU可以重新编程。已获得访问(例如读取或写入)存储器能力的攻击者可以使用同一能力来重新编程或禁用已建立的屏障(例如,IOMMU、MMU、或MPU)。
发明内容
本公开实施例的目的是提供一种减轻或解决传统解决方案的缺点和问题的解决方案。
通过独立权利要求的主题来实现上述目的和其他目的。本公开其他有利的实施例可以在从属权利要求中找到。
本公开提供了一种解决方案,使得存储器保护在包括存储器的系统重启、重新启动、重置、或断电之前是不可逆的。即,一旦保护被激活,则存储器可以防止任何试图入侵存储器并改写要保护的数据的尝试。
根据本公开的第一方面,通过一种用于存储器保护的装置来实现上述目的和其他目的。该装置包括存储器写入设备和存储器。存储器包括用于存储要保护的数据的可保护存储区。存储器写入设备用于将要保护的数据存储在可保护存储区中。该存储器写入设备还用于确定受保护存储区域。该受保护存储区域包括要保护的数据,并且对该受保护存储区域的写入访问被不可逆地禁止。
应注意,上述公开集中于用于为装置(例如,微处理器或微控制器系统)提供不可逆的存储器保护的场景。该装置可以实现为工业传感器、执行器、物联网(internet ofthings,IoT)设备、计算设备、平板电脑、手机、网络装置、可穿戴终端设备、无人机、集成在汽车中的设备、嵌入式终端设备、云设备等。
在本公开中,术语“要保护的数据”可以解释为包括例如与装置中的暂态相关的数据(例如,随机存取存储器(random access memory,RAM)、交叉点、或闪存等中的一些重要数据)。对于微处理器系统,要保护的数据可以是系统级数据,例如,与管理程序或操作系统相关的数据。对于微控制器,要保护的数据可以是关于操作系统和应用软件的应用数据。
在本公开中,术语“存储器写入设备”可以解释为用于执行存储器写入访问的设备或单元(例如,处理器或微处理器、DMA控制器、或总线控制外围设备等)。
在本公开中,术语“可保护存储区”可以解释为表示被分配用于存储要保护的数据(例如,只读数据)的存储区。将要保护的数据写入这个分配的存储区,并且存储器中用于存储要保护的数据的区域形成禁止存储器写入访问的受保护区域。作为示例,可保护存储区可以由装置的程序员或操作系统来定义。作为示例,在装置的初始化期间将要保护的数据写入可保护存储区,然后在启用了保护(例如,激活了受保护存储区域)之后,要保护的数据变为只读。
在公开中,表述“对受保护存储区域的写入存储器访问被不可逆地禁止”可以解释为意味着一旦启用了保护,受保护存储区域禁止存储器写入访问,直到装置重启、重新启动、重置、或断电。
根据第一方面的装置的优点在于:确定了受保护存储区域以不可逆地禁止任何写入存储器访问。因此,该装置的存储器更加安全,从而提高了存储器保护的可靠性。
此外,在装置的操作期间,可能发生并检测到重写错误。重写错误可能触发装置的重置或重新初始化,这可能导致未定义的行为。因此,根据第一方面的装置的另一优点是避免了对受保护存储区域的重写错误,因此提高了装置的可靠性和稳定性。
在根据第一方面的装置的实施方式中,上述存储器写入设备还用于:在装置的初始化期间,将要保护的数据顺序地存储在可保护存储区的连续部分中;在初始化之后,确定上述连续部分为受保护存储区域,其中,连续部分用于存储要保护的数据。
在本公开中,在装置的初始化期间,可以将要保护的数据写入可保护存储区。
这种实施方式的优点在于:将要保护的数据写入可保护存储区的连续部分中。由此,更容易确定包括要保护的数据的受保护存储区域。
在根据第一方面的装置的实施方式中,该装置包括安全电路,其中,该安全电路用于基于边界来控制对受保护存储区域的写入访问。
在该实施方式中,安全电路被提供为用于控制存储器写入访问的硬件“防火墙”。安全电路由物理上与传统处理电路(例如CPU、MMU、MPU、以及IOMMU)分离的电路实现。例如,安全电路可以由部署在存储器总线与存储器之间的独立电路实现。安全电路还可以由传统处理电路中的集成电路(例如,MMU、MPU、以及IOMMU)实现。一旦启用了保护,则安全电路禁止对存储器中的受保护存储区域的存储器写入访问。受保护存储区域由边界定义。
这种实施方式的优点在于:设法破坏主要处理电路的攻击者不能入侵安全电路。这提高了设备免受恶意黑客攻击的安全性。此外,受保护存储区域可以由边界定义,从而提高了受保护存储区域的管理灵活性。
在根据第一方面的装置的实施方式中,受保护存储区域的边界由以下定义:首地址和末地址、或首地址和受保护存储区域的大小、或指示受保护存储区域的第一页和最后页的一对页索引。
在该实施方式中,由于受保护存储区域是可保护存储区的连续存储器部分,因此可以由存储器地址范围或指示受保护存储区域的第一页和最后页的一对页索引来定义受保护存储区域。
这种实施方式的优点在于:提供了至少三种实施方式用于指示受保护存储区域的边界。从而提高了管理受保护存储区域的灵活性。
在根据第一方面的装置的实施方式中,上述安全电路还用于当接收到触发事件的通知时,禁止受保护存储区域的边界的扩展,其中,受保护存储区域的边界被锁定直到重启。
在该实施方式中,当接收到触发事件的通知时,安全电路禁止受保护存储区域的边界的扩展,以避免拒绝服务攻击(denial-of-service attack,DoS attack),其中,攻击者将强制附加存储器变为只读,从而损害设备的正确功能。
在本公开中,术语“触发事件”对应于用于触发受保护存储区域的边界的锁定的事件。该触发事件可以通过例如定时器的到期或消息(例如,锁定消息)的接收等来实现。上述列表并不是穷举列表,并且可以根据本公开思想的设计和实施方式来使用触发事件的其他实施方式。
这种实施方式的优点在于:一旦接收到触发事件的通知,受保护存储区域的边界就被锁定直到重启,因此,对存储器的保护是不可逆的,可以抵抗任何重新编程的攻击,从而提高了受保护存储区域的安全性。
根据本公开的第二方面,通过一种用于存储器保护装置的方法来实现上述目的和其他目的。该存储器保护装置包括存储器写入设备和存储器,该存储器包括用于存储要保护的数据的可保护存储区,该方法包括:将要保护的数据存储在可保护存储区中;确定受保护存储区域,其中,受保护存储区域包括要保护的数据,并且对受保护存储区域的写入访问被不可逆地禁止。
根据第二方面的方法可以扩展为与根据第一方面的装置的实施方式对应的实施方式。因此,该方法的实施方式包括上述装置的对应实施方式的特征。
根据第二方面的方法的优点与根据第一方面的装置的对应实施方式的优点相同。
本公开还涉及一种计算机程序,其特征在于程序代码,当由至少一个处理器运行时,程序代码使上述至少一个处理器执行根据本公开第二方面的任何方法。此外,本公开还涉及包括计算机可读介质和上述计算机程序的计算机程序产品,其中,该计算机可读介质包括该计算机程序,并且包括以下组中的一个或多个:只读存储器(read-only memory,ROM)、可编程ROM(programmable ROM,PROM)、电可改写只读存储器(electricallyalterable ROM,EAROM)、可擦除PROM(erasable PROM,EPROM)、闪存、电EPROM(electrically EPROM,EEPROM)、硬盘驱动器、以及3D XPoint。
通过以下具体实施方式,本公开实施例的其他应用和优点将显而易见。
附图说明
附图旨在说明和阐述本公开的不同实施例,在附图中:
-图1是示出了现有技术中针对攻击的防御机制的示意图。
-图2A是示出了根据本公开实施例的装置的实施方式的示意图;
-图2B是示出了根据本公开实施例的装置的另一实施方式的示意图;
-图3示出了根据本公开实施例的方法的流程图;
-图4示出了根据本公开实施例的用于存储器保护的机制的实施方式;
-图5A示出了根据本公开实施例的用于确定受保护存储区域的方法的实施方式;
-图5B示出了根据本公开实施例的用于保护受保护存储区域中的数据的方法的实施方式;
-图6示出了根据本公开实施例的确定受保护存储区域的说明性示例;
-图7示出了根据公开实施例的用于保护受保护存储区域中的数据的说明性示例;
-图8示出了根据公开另一实施例的用于保护受保护存储区域中的数据的另一说明性示例。
具体实施方式
参考附图描述了用于通信系统中的高效包传输的方法、装置、以及程序产品的说明性实施例。尽管本描述提供了可能的实施方式的详细示例,但应注意,这些细节旨在作为示例,而绝非限制本申请的范围。
此外,一个实施例/示例可以参考其他实施例/示例。例如,包括但不限于在一个实施例/示例中提及的术语、元件、过程、解释、和/或技术优点的任何描述适用于其他实施例/示例。
图2A和图2B示出了根据本公开实施例的装置200的两种实施方式。在图2A和图2B所示的实施例中,装置200包括处理器210、MMU或MPU 220、存储器总线230、以及存储器240。该装置可选地包括外围设备250、直接存储器存取(direct memory access,DMA)控制器260、以及图形处理单元(graphics processing unit,GPU)270。处理器210通过本领域已知的通信方式(例如,存储器230)耦合到MMU或MPU 220以及存储器240。
此外,装置200包括安全电路,例如图2A所示的独立防火墙280或图2B所示的集成防火墙290,以防止对存储器的恶意攻击。如图2A所示,独立防火墙280部署在存储器总线230和存储器240之间。在图2B中,通过将集成防火墙290集成到MMU或MPU 220中来实现集成防火墙290。独立防火墙280和集成防火墙290都由电路实现,该电路例如是现场可编程门阵列(field programmable gate array,FPGA)或复杂可编程逻辑器件(complexprogrammable logic device,CPLD)、或单独的微控制器,以其程序不能被前述任何存储器总线主控器改变的方式实现。
根据本公开实施例,装置200包括存储器写入设备和存储器240。存储器写入设备对应于对存储器240执行存储器写入访问的设备。存储器包括用于存储要保护的数据(例如,只读数据)的可保护存储区。存储器写入设备用于将要保护的数据存储在可保护存储区中。存储器写入设备还用于确定受保护存储区域,其中,该受保护存储区域包括要保护的数据,并且对受保护存储区域的写入访问被不可逆地禁止。
在一些示例中,对受保护存储区域的写入访问被不可逆地禁止意味着禁止对受保护存储区域的写入访问直到装置重启、重新启动、重置、或断电。
可以由处理器210或处理器210与MMU/MPU 220的组合(即,MMU或MPU 220集成在处理器210中)等来实现存储器写入设备。
可保护存储区是被分配用于存储要保护的数据的存储区。该可保护存储区可以在装置初始化期间由程序员或操作系统分配。
要保护的数据对应于对装置的功能重要的各种数据。例如,数据可以是操作系统的一个或多个功能的参数的状态。
在本公开实施例中,图2A和图2B中的装置200可以是微处理器或微控制器系统。例如,装置200可以通过工业传感器、执行器、物联网(IoT)设备、计算设备、平板电脑、手机、网络装置、可穿戴终端设备、无人机、集成在汽车中的设备、嵌入式终端设备、云设备等来实现。
图3示出了可以在装置200(例如,图2A和图2B所示的装置200)中执行的方法300的流程图。方法300包括,将要保护的数据存储302在可保护存储区中。方法300还包括确定304受保护存储区域,其中,受保护存储区域包括要保护的数据,并且对受保护存储区域的写入访问被不可逆地禁止。不可逆地禁止在此意味着禁止对存储器区域的受保护写入访问直到装置200重启、重新启动、重置、或断电。
图4示出了根据本公开实施例的用于装置200的存储器保护机制。可以通过只读范围配置来配置安全电路(例如,图2A中的独立防火墙280或图2B中的集成防火墙290),以防止可保护存储区的只读范围被写入访问。只读范围对应于包括要保护的数据的受保护存储区域。如果接收到的存储器写入访问请求对应于只读范围(即,受保护存储区域),则禁止该存储器写入访问请求。如果接收到的存储器写入访问请求对应于只读范围,则允许该存储器写入访问请求。上述安全电路充当防火墙,用于在装置200的存储器写入访问操作期间保护要保护的数据。
图5A和图5B示出了根据本公开实施例的用于存储器保护的方法500的两个流程图。方法500由装置200实现。图6是示出了确定受保护存储区域640的示意图。
在步骤502中,装置200开始502初始化过程。在该过程期间,装置200准备运行。
在步骤504中,分配可保护存储区620。作为示例,在系统存储器中分配可保护存储区620以存储要保护的数据。分配的存储区620是包括连续部分的存储区。根据图6,例如,系统存储器240包括三个区。一个存储区610用于存储装置的操作系统的常量。该区610是受写入保护的(该写入保护由操作系统设置)。第二区是可保护存储区620。该存储区620在装置的初始化期间仍是可写入的,要保护的数据可以存储在该区620中。第三存储区是普通存储区630,普通存储区630可以被分配用于存储装置200中可写入和可读取的数据。
在实施方式中,根据图6,为三个存储区确定不同的地址范围。例如,用于存储常量的区610被分配的地址范围为从0x0000到0x0100。可保护存储区620被分配的地址范围为从0x0100到0x0400。普通存储区630的地址范围设置为从0x0400到0x1FFF。
该可保护存储区620可以由程序员或操作系统分配。可保护存储区620的数量可以根据实施方式而变化。例如,在系统存储器中可能分配有两个可保护存储区,一个用于存储代码,另一个用于存储实际数据。
在步骤506中,将要保护的数据写入可保护存储区。
例如,一旦分配了可保护存储区,则可以将要保护的数据顺序地存储在连续的可保护存储区的连续部分中。例如,系统子状态(即,要保护的数据的一个示例)被合并并打包到可保护存储区620中。
对于微处理器系统,要保护的数据可以是系统级数据,例如,该系统级数据是与管理程序或操作系统相关的数据。对于应用场景中使用的微控制器或微处理器,要保护的数据可以是关于操作系统和应用软件的应用数据。
在装置200的初始化期间,用于存储要保护的数据的范围正在增大,但不会缩小。
在步骤508中,初始化结束,并且确定了受保护存储区域。
当装置的初始化结束时,已经存储了要保护的数据的(连续)存储器部分被确定为受保护存储区域,然后,当接收到触发事件的通知时,激活受保护存储区域。在激活了受保护存储区域之后,受保护存储区域的边界被锁定直到装置200重启、重新启动、重置、或断电。根据实施方式,可以使用指示受保护存储区域的范围(或边界)的不同方式。例如,可以由包括首地址和末地址的一对地址指示上述范围或边界。或者,也可以由首地址和受保护存储区域(例如,该受保护存储区域是连续存储区域)的大小指示上述范围。或者,也可以由指示受保护存储区域的第一页和最后页的一对存储器索引指示上述范围。
存在用于配置受保护存储区域的不同硬件实施方式。
根据图2A,上述安全电路由独立防火墙280(例如,位于存储器240和存储器总线230之间)实现,独立防火墙280充当用于处理来自存储器总线230的存储器写入访问请求的防火墙。在该实施方式中,例如在独立防火墙280中可以存在两个寄存器来分别存储低地址(即,首地址)和高地址(即,末地址),并且选择一个状态标志来表示更新受保护存储区域的高地址(即,末地址)的可能性。结合图6,例如,在初始化开始时,确定了受保护存储区域的低地址,低地址被存储在一个寄存器中。当初始化结束时,确定了受保护存储区域的高地址,高地址被存储在另一寄存器中。然后,状态标志(例如,可以存储在一个寄存器中)被设置为“1”以指示受保护存储区域被锁定,并且既没有可能修改受保护存储区域的高地址,也没有可能禁用状态标志(例如,将状态标志从“1”修改为“0”),直到装置200重启、重新启动、重置、或断电。
当通过如图2B所示的集成防火墙290实现安全电路时,集成防火墙290充当MMU或MPU 220的一部分,但是可以使用单独的电路来实现。存储器240的地址空间被分成两个区域,一个是普通存储区域,另一个是受保护存储区域。集成防火墙290用于跟踪对存储器240中不同区域的各种页的存储器写入访问。该实施方式的示例可以包括:
(1)两个不同的MMU和一个选择器:在本示例中,两个MMU都与来自处理器内核的存储器总线相连。一个MMU用于普通存储区域的地址范围,另一MMU用于受保护存储区域的地址范围。通过选择器执行MMU选择,一旦受保护存储区域的范围被锁定(例如,状态标志被设置为“1”),则选择器能够阻止对受保护存储区域的MMU的任何写入尝试。在该实施方式中,负责普通存储区域(例如,读取/写入存储区域)的MMU未经过任何修改。然而,负责受保护存储区域的另一MMU可以被配置为使其数据变为只读。用于受保护存储区域的地址范围的MMU可以防止要保护的数据被恶意操纵以及发生错误。
(2)支持两个存储区域的单个MMU:在本示例中,仅使用一个MMU。一组寄存器和页表用于普通存储区域(例如,可写和可读存储区域),另一组寄存器和页表用于受保护存储区域(例如,当激活了状态标志时只可读的存储区域)。将两个不同的地址空间设置到这两个区域。两个区域的选择由地址总线驱动。一旦受保护存储区域的内容被确定,则该实施方式需要修改MMU知识产权(intellectual property,IP)核心块(包括状态标志)以防止其他修改。类似于独立防火墙的实施方式,一旦受保护存储区域的范围被锁定(例如,状态标志被设置为“1”),则对应的页表受到写入保护(即,只读)。
上述两个示例仅提供了实现实施例的两个可能的方式。对于本领域技术人员而言,已知存在将存储器地址分为两个不同区域的其他不同方式,例如,通过仅使用一个MMU。上述示例不应视为对保护范围的限制。
图5B示出了用于通过使用受保护存储区域来执行存储器保护的流程图。
在步骤510中,安全电路(例如,独立防火墙280或集成防火墙290)接收存储器写入访问请求。
可以从例如任何存储器写入任务发送该存储器写入访问请求。存储器访问请求可以包括要写入存储器240中的数据的存储器地址。
在步骤512中,安全电路确定存储器写入访问的地址是否位于受保护存储区域中。如果确定结果为“是”,则执行步骤514;如果确定结果为“否”,则执行步骤516。
安全电路可以实现为图7中的比较器710,比较器710用于将存储器写入访问的地址与受保护存储区域的地址范围进行比较。当存储器写入访问的地址位于受保护存储区域的范围内时,比较器710禁止对受保护存储区域的存储器写入访问。当存储器写入访问的地址位于受保护存储区域的范围之外时,比较器710允许对受保护存储区域之外的存储器进行存储器读取访问和存储器写入访问。
安全电路可以实现为图8中的选择器810,选择器810用于选择适当的MMU(例如,只读(read-only,R/O)MMU 820或读/写MMU 830)。当存储器写入访问的地址位于受保护存储区域的范围内时,选择器810选择只读MMU 820,在该情况下,只读MMU 820禁止对受保护存储区域的存储器写入访问(例如,允许对受保护存储区域的存储器读取访问)。当存储器写入访问的地址位于受保护存储区域的范围之外时,选择器810选择读/写MMU 830,在该情况下,读/写MMU 830允许对受保护存储区域之外的存储器的存储器读取访问和存储器写入访问。
使用两个不同的MMU将存储器分为普通存储区域和受保护存储区域的方法只是实施例的示例性实施方式。对于本领域技术人员而言,已知存在将存储器地址分为两个不同区域的其他不同方式,例如,通过仅使用一个MMU。上述示例不应视为对保护范围的限制。
在步骤514中,安全电路禁止存储器写入访问请求。
在步骤516中,安全电路允许存储器写入访问请求。
此外,根据本公开实施例的任何方法都可以在具有编码装置的计算机程序中实现,当被处理装置运行时,该计算机程序使该处理装置执行该方法的步骤。计算机程序产品的计算机可读介质包括上述计算机程序。该计算机可读介质基本上可以包括任何存储器,例如只读存储器(ROM)、可编程只读存储器(PROM)、电可改写只读存储器(EAROM)、可擦除PROM(EPROM)、闪存、电可擦除PROM(EPROM)、或硬盘驱动器、或3D XPoint,或者该计算机可读介质甚至可以从任何连接流式传输并临时存储在RAM中。
此外,本领域技术人员应理解,装置200的实施例包括用于执行解决方案所需要的通信能力,例如,该能力的形式为功能、装置、单元、元件等。其他的装置、单元、元件、以及功能的示例是:处理器、存储器、缓冲器、控制逻辑、编码器、解码器、速率匹配器、解速率(de-rate)匹配器、映射单元、乘法器、判决单元、选择单元、开关、交织器、去交织器、调制器、解调器、输入、输出、天线、放大器、接收器单元、发射器单元、DSP、MSD、TCM编码器、TCM解码器、供电单元、馈电器、通信接口、通信协议等,以上装置被适当地安排在一起以执行解决方案。
特别地,装置200的处理器可以包括以下中的一个或多个实例:例如,中央处理单元(CPU)、处理单元、处理电路、处理器、专用集成电路(application specificintegrated,ASIC)、微处理器、或可以解释和执行指令的其他处理逻辑。因此,“处理器”可以表示包括多个处理电路的处理电路,例如上述处理电路中的任何、一些、或全部处理电路。处理电路还可以执行用于输入、输出、以及处理数据的数据处理功能,该功能包括数据缓冲和设备控制功能,例如调用处理控制,用户接口控制等。
最后,应理解,本公开不限于上述实施例,本公开还涉及并包括在所附权利要求范围内的所有实施例。

Claims (12)

1.一种用于存储器保护的装置,其中,所述装置包括存储器写入设备和存储器,所述存储器包括用于存储要保护的数据的可保护存储区,并且所述存储器写入设备用于:
将要保护的数据存储在所述可保护存储区中;
确定受保护存储区域,其中,所述受保护存储区域包括所述要保护的数据,并且对所述受保护存储区域的写入访问被不可逆地禁止。
2.根据权利要求1所述的装置,其中,所述存储器写入设备还用于:
在所述装置的初始化期间,将所述要保护的数据顺序地存储在所述可保护存储区的连续部分中;
在所述初始化之后,确定所述连续部分为所述受保护存储区域,其中,所述连续部分用于存储所述要保护的数据。
3.根据前述权利要求中任一项所述的装置,其中,所述装置包括安全电路,其中,所述安全电路用于基于所述受保护存储区域的边界来控制对所述受保护存储区域的写入访问。
4.根据权利要求3所述的装置,其中,所述受保护存储区域的所述边界由以下定义:首地址和末地址、或首地址和所述受保护存储区域的大小、或指示所述受保护存储区域的第一页和最后页的一对页索引。
5.根据权利要求3或4所述的装置,其中,所述安全电路还用于:
当接收到触发事件的通知时,禁止所述受保护存储区域的所述边界的扩展,其中,所述受保护存储区域的所述边界被锁定直到重启。
6.一种用于存储器保护装置的方法,其中,所述存储器保护装置包括存储器写入设备和存储器,所述存储器包括用于存储要保护的数据的可保护存储区,并且所述方法包括:
将要保护的数据存储在所述可保护存储区中;
确定受保护存储区域,其中,所述受保护存储区域包括所述要保护的数据,并且对所述受保护存储区域的写入访问被不可逆地禁止。
7.根据权利要求6所述的方法,还包括:
在所述存储器保护装置的初始化期间,将要保护的数据顺序地存储在所述可保护存储区的连续部分中;以及
在所述初始化之后,确定所述连续部分为所述受保护存储区域,其中,所述连续部分用于存储所述要保护的数据。
8.根据前述权利要求中任一项所述的方法,还包括:
基于所述受保护存储区域的边界控制对所述受保护存储区域的写入访问。
9.根据权利要求8所述的方法,其中,所述受保护存储区域的所述边界由以下定义:首地址和末地址、或首地址和所述受保护存储区域的大小、或指示所述受保护存储区域的第一页和最后页的一对页索引。
10.根据权利要求8或9所述的方法,还包括:
当接收到触发事件的通知时,禁止所述受保护存储区域的所述边界的扩展,其中,所述边界被锁定直到重启。
11.一种具有程序代码的计算机程序,当所述计算机程序在计算机上运行时,所述程序代码用于执行根据权利要求6至10中任一项所述的方法。
12.一种计算机可读存储介质,包括可以由计算机执行的计算机程序代码指令,当所述计算机程序代码指令在计算机上运行时,所述计算机程序代码指令用于执行根据权利要求6至10中任一项所述的方法。
CN201880097356.8A 2018-09-18 2018-09-18 用于存储器保护的装置和方法 Pending CN112703490A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2018/075196 WO2020057728A1 (en) 2018-09-18 2018-09-18 Apparatus and method for memory protection

Publications (1)

Publication Number Publication Date
CN112703490A true CN112703490A (zh) 2021-04-23

Family

ID=63642987

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880097356.8A Pending CN112703490A (zh) 2018-09-18 2018-09-18 用于存储器保护的装置和方法

Country Status (2)

Country Link
CN (1) CN112703490A (zh)
WO (1) WO2020057728A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1487424A (zh) * 2002-09-12 2004-04-07 �Ҵ���˾ 禁止对受保护存储区进行未经授权的访问的系统和方法
US6857068B1 (en) * 1999-06-25 2005-02-15 Telefonaktiebolaget Lm Ericsson (Publ) System and method for data processing by executing a security program routine initially stored in a protected part of irreversibly blocked memory upon start-up
CN1967508A (zh) * 2005-11-15 2007-05-23 华为技术有限公司 一种对内存进行保护的方法
WO2011076464A1 (en) * 2009-12-23 2011-06-30 International Business Machines Corporation Method and system for protecting an operating system against unauthorized modification
CN106575261A (zh) * 2014-09-24 2017-04-19 英特尔公司 受保护的区域中的存储器初始化

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8041912B2 (en) * 2007-09-28 2011-10-18 Macronix International Co., Ltd. Memory devices with data protection

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6857068B1 (en) * 1999-06-25 2005-02-15 Telefonaktiebolaget Lm Ericsson (Publ) System and method for data processing by executing a security program routine initially stored in a protected part of irreversibly blocked memory upon start-up
CN1487424A (zh) * 2002-09-12 2004-04-07 �Ҵ���˾ 禁止对受保护存储区进行未经授权的访问的系统和方法
CN1967508A (zh) * 2005-11-15 2007-05-23 华为技术有限公司 一种对内存进行保护的方法
WO2011076464A1 (en) * 2009-12-23 2011-06-30 International Business Machines Corporation Method and system for protecting an operating system against unauthorized modification
CN106575261A (zh) * 2014-09-24 2017-04-19 英特尔公司 受保护的区域中的存储器初始化

Also Published As

Publication number Publication date
WO2020057728A1 (en) 2020-03-26

Similar Documents

Publication Publication Date Title
US10509568B2 (en) Efficient secure boot carried out in information processing apparatus
KR102095614B1 (ko) 메모리 보호
US10354073B2 (en) Information processor device verifying software and method of controlling information processor device
US7401234B2 (en) Autonomous memory checker for runtime security assurance and method therefore
JP4818793B2 (ja) マイクロコンピュータ及びメモリアクセスの制御方法
CN108073816B (zh) 信息处理装置
JP4980464B2 (ja) 書込プロテクトされたメモリ管理ユニット・レジスタを備える論理デバイス
CN107949847B (zh) 车辆的电子控制单元
JP4945053B2 (ja) 半導体装置、バスインターフェース装置、およびコンピュータシステム
JP7213879B2 (ja) 間接アクセスメモリコントローラ用のメモリ保護装置
US11188321B2 (en) Processing device and software execution control method
CN111226215B (zh) 透明附接的闪存存储器安全性
EP3084593B1 (en) Updatable integrated-circuit radio
US9479478B2 (en) Method for operating a communication module, and communication module
CN112703490A (zh) 用于存储器保护的装置和方法
JP6622360B2 (ja) 情報処理装置
US9536090B2 (en) Method of defending a computer from malware
JP2019145110A (ja) 情報処理装置及び情報処理装置の制御方法
EP3877881A1 (en) Return-oriented programming protection
JP7438924B2 (ja) 情報処理装置、方法及びプログラム
CN111914222B (zh) 保护电子控制单元的方法
JP5324676B2 (ja) プロセッサ、バスインターフェース装置、およびコンピュータシステム
JP5380392B2 (ja) 半導体装置、バスインターフェース装置、およびコンピュータシステム
CN110569205A (zh) 安全系统单芯片及其操作方法
CN118132000A (zh) 透明附接的闪存存储器安全性

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination