CN105468997A - 处理数据 - Google Patents

处理数据 Download PDF

Info

Publication number
CN105468997A
CN105468997A CN201510624808.1A CN201510624808A CN105468997A CN 105468997 A CN105468997 A CN 105468997A CN 201510624808 A CN201510624808 A CN 201510624808A CN 105468997 A CN105468997 A CN 105468997A
Authority
CN
China
Prior art keywords
program counter
memory access
access strategy
counter information
value
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.)
Granted
Application number
CN201510624808.1A
Other languages
English (en)
Other versions
CN105468997B (zh
Inventor
N·K·维达拉
B·N·R·穆恩朱鲁里
P·纳亚克
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of CN105468997A publication Critical patent/CN105468997A/zh
Application granted granted Critical
Publication of CN105468997B publication Critical patent/CN105468997B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/77Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in smart cards
    • 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/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2135Metering

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及处理数据。提出了一种用于执行程序代码的方法,该方法包括:基于触发器来检查存储器访问策略资源;以及将当前程序计数器与由存储器访问策略资源提供的程序计数器信息进行比较,并且在当前程序计数器与程序计数器信息的比较满足预定义的条件的情况下,执行存储器访问策略检查以允许准许的操作。

Description

处理数据
技术领域
本发明的实施例涉及数据处理,特别是在智能卡上的数据处理。
背景技术
现代智能卡应用要求允许高度可变性的数据保护机制。
发明内容
第一实施例涉及一种用于执行程序代码的方法,该方法包括:
-基于触发器来检查存储器访问策略资源;以及
-将当前程序计数器与由存储器访问策略资源提供的程序计数器信息进行比较,并且在当前程序计数器与程序计数器信息的比较满足预定义的条件的情况下,执行存储器访问策略检查。
第二实施例涉及一种包括处理单元的设备,其中该处理单元被设置用于:
-基于触发器来检查存储器访问策略资源;以及
-将当前程序计数器与由存储器访问策略资源提供的程序计数器信息进行比较,并且在当前程序计数器与程序计数器信息的比较满足预定义的条件的情况下,执行存储器访问策略检查。
第三实施例涉及一种智能卡,包括:
-处理单元;以及
-存储器,
-其中该处理单元被布置用于:
-基于触发器来检查存储器访问策略资源;以及
-将当前程序计数器与由存储器访问策略资源提供的程序计数器信息进行比较,并且在当前程序计数器与程序计数器信息的比较满足预定义的条件的情况下,执行存储器访问策略检查。
第四实施例针对一种用于处理数据的设备,包括:
-用于基于触发器来检查存储器访问策略资源的装置;以及
-用于将当前程序计数器与由存储器访问策略资源提供的程序计数器信息进行比较,并且在当前程序计数器与程序计数器信息的比较满足预定义的条件的情况下,执行存储器访问策略检查的装置。
第四实施例针对一种能够直接加载到数字处理设备的存储器中的计算机程序产品,包括用于执行这里描述的方法的步骤的软件代码部分。
附图说明
参照附图示出并说明了实施例。附图用来说明基本的原理,使得仅说明对理解基本原理所必需的方面。附图并不是按比例的。在附图中,相同的附图标记表示类似的特征。
图1示出了包括被执行以便验证当前执行的代码是否满足要求的访问策略的这样的步骤的示意性流程图。
图2示出了包括微控制器和存储器的示意性硬件框图。
具体实施方式
所暗示的示例例如提供了用于微控制器的机构以仅在满足特定预定义和/或用户配置的条件时允许某个代码段的执行。
例如,仅在以下条件中的至少一个条件被满足的情况下执行机密密钥处置代码:
-通信接口被去激活;
-针对命令提供对机密密钥处置代码的访问;
-用于对密钥执行操作的应用特定条件被满足。
对数据区域的访问仅可以在指定的情况下和/或用户配置的条件被满足而被准许。例如,对包含(例如)秘密密钥的存储器的访问仅可以在以上提到的条件被满足的情况下被允许。
这里描述的示例可以特别地允许硬件来解决这些问题并且在预定义的条件被满足的情况下灵活地准许存储器访问。
示例还可以提供应用特定条件,在该应用特定条件下,允许对存储器(例如,到存储器的至少一个部分)的访问。这样的条件被称为存储器访问策略(MAP)。
存储器可以用MAP来标记。存储器可以包括代码和数据。这样的存储器可以称为任何粒度水平处的存储器部分。
在执行期间,处理单元(例如,中央处理单元——CPU)可以执行以下检查:
-用于被执行的代码的MAP被满足?
-用于被访问的数据的MAP被满足?
在检查中的任何检查失败的情况下,可以触发预定义动作,例如可以敲响警报和/或可以发出通知。
例如,可以提供两种模式以用于执行MAP检查:
-在AUTO模式中,处理单元在可配置的预定义时间区间处执行MAP检查。
-在MANUAL模式中,可以使用特殊操作(操作代码)来触发MAP检查。
根据示例性实施例,可以使用以下实体:
-MAP表;
-MAP_STATUS寄存器;
-MAP_CFGx寄存器;
-操作代码:ASSERTMAP。
下文中进一步详细地解释这些实体:
MAP表
MAP表可以被构建为具有以下条目(列):
-存储器的开始地址;
-大小;
-MAP值;
-访问许可。
MAP表可以包括针对给定存储器地址范围的(所需的)存储器访问策略(对应于MAP值)的列表。存储器地址范围可以由开始地址和大小来限定。
MAP_STATUS寄存器
这一MAP_STATUS寄存器中的每个位可以对应于在当前执行的情境中被满足的应用特定访问策略。可以由应用逻辑来管理这些位的关联和设置。
MAP_CFGx寄存器
这些是允许配置MAP检查的模式(即AUTO模式或MANUAL模式)的配置寄存器。
在AUTO模式中,在MAP_CFGx寄存器中定义的特定时间区间处执行MAP检查。因此,在AUTO模式中,可以有可能配置在其处MAP检查被触发的这样的时间区间。
在MANUAL模式中,可以在代码的各种位置中***特殊操作代码“ASSERTMAP”以显式地触发MAP检查。
另外可以使用MAP_CFGx寄存器来配置MAP表的位置和大小。
操作代码:ASSERTMAP
这是(手动地)触发MAP检查的操作代码(指令)。
操作
在芯片(硬件)的启动期间,MAP_CFGx寄存器被配置有默认值。这样的默认值可以是在预定时间区间处触发MAP检查的AUTO模式。另外,可以重置MAP_STATUS寄存器。此外,可以配置MAP表位置和/或大小。
在操作期间,基于应用特定策略被满足,应用可以适当地设置MAP_STATUS寄存器。
基于MAP检查的触发,硬件可以验证当前正在被执行的代码满足要求的访问策略。
图1示出了包括被执行以便验证当前正在被执行的代码是否满足要求的访问策略这样的步骤的示意性流程图。
在状态101中,发出触发器102以执行MAP检查。在步骤103中,基于当前程序计数器来执行对MAP表的查找。在步骤104中,检查程序计数器的当前值在MAP表中是否具有条目。如果没有,在步骤105中继续程序的执行。如果MAP表包括与程序计数器的当前值对应的这样的条目,则在步骤106中执行访问策略检查。
程序计数器的当前值选择MAP表中的条目。从这一条目,取回MAP,其对应于存储器访问策略MAP。在步骤106中如以下检查这一MAP:
MAP&MAP_STATUS==MAP?
在步骤107中,确定MAP是否被满足。在肯定的情况下,分叉到步骤105。如果没有MAP没有被满足,可以触发预定义动作,例如在步骤108中可以敲响警报和/或发出通知。
可以针对数据访问执行相似类型的检查。为了改善性能,MAP_CFGx寄存器可以包括其中能够关闭针对数据访问的检查的设置。例如,MAP表可以包括与安全数据区域对应的条目。在请求地址总线上的数据之前,处理单元可以用MAP表执行检查。这样的检查可以伴随每次数据取读而发生。
在下文中,示出样本C代码以更详细解释所呈现的方案:
#pragmaMAPENTRY(MAP_VALUE_1,X)//这一编译指示向MAP表中生成条目。‘X’指示“执行”许可。在这一示例中,MAP_VALUE_1被分配0xC000。
#pragmaMAPEXIT;这一编译指示是用于先前MAPENTRY的中止
//MAP表结构的示例:
主程序可以是如下的无限while循环:
process_command函数包括作为当前命令的"UPDATE_KEY",其要求对密钥存储库的访问。基于UDATE_KEY命令,process_command函数调用Update_Key函数。
voidUpdate_Key()//这一函数更新NVM中的密钥
{
identify_free_key_address_in_nvm();
validate_new_key_value();
_ASSERTMAP_();//这一指令显式地触发MAP检查
Store_key();
}
在函数Update_Key内,显式地触发ASSERTMAP操作,这导致触发MAP检查。
另外,可以提供函数Load_Key,该函数包括显式地触发MAP检查的ASSERTMAP操作:
voidLoad_Key()
{
//这一指令显将密钥从密钥存储库载入到对称密码机处理器
resolve_key_address_in_nvm();
validate_key();
_ASSERTMAP_();//这一指令显式地触发MAP检查
Load_key_into_SCP();
}
图2示出了包括微控制器201和存储器202的示意性硬件框图。微控制器201和存储器202两者可以位于智能卡上。微控制器201可以包括:时钟单元203、指令单元204、地址单元205、程序计数器206、安全监视器207、MAP_STATUS寄存器208、MAP_CFGx寄存器209、标志寄存器210、累加器211、算数逻辑单元212、X寄存器213、Y寄存器214和Z寄存器215。存储器202包括MAP表。
在触发MANUAL模式的代码中发现特殊操作ASSERTMAP(即发现对MAP检查的手动触发器)时,可以执行以下步骤:
步骤251:发现ASSERTMAP操作代码,指令单元204将其用信号发送至安全监视器207。
步骤252:安全监视器207向地址单元205发信号以从MAP表取读条目i。
步骤253:地址单元205将来自MAP表的条目i的数据取读到以下寄存器中:
-开始地址位置到X寄存器213中;
-大小到Y寄存器214中;以及
-期望的MAP值到Z寄存器215中。
步骤254:安全监视器207检查程序计数器206是否在范围[start_address(X),start_address+size(X+Y)]中,即在根据X寄存器213的开始地址与由X寄存器213和Y寄存器214确定的结束地址之间。
步骤255:如果程序计数器206在这一范围中,则接下来是步骤257。
步骤256:如果程序计数器206不在范围中,则针对另外的条目检查MAP表。如果存在任何这样的条目,继续至步骤252以取读下一条目;如果不存在,则继续至步骤259。
步骤257:安全监视器207检查MAP_STATUS寄存器208的值是否满足由Z寄存器215确定的期望的MAP值;即以下条件是否为真:
(MAP_STATUS&Z)==Z
步骤258:如果步骤257的条件为真,则继续至步骤259;否则,继续至步骤260。
步骤259:安全监视器207命令指令单元204以解码并执行进一步的指令(不是跳到步骤260)。
步骤260:安全监视器207敲响安全警报。
因而,该构思允许硬件基于由应用逻辑指定的条件而授予或者限制对存储器的定义的部分的访问。存储器的这些部分可以由应用按任何粒度被定义。这一方案允许减少用于安全的软件对策的量,由此导致代码要求的存储器足迹(footprint)的减少。
这里所提出的示例可以特别地基于以下解决方案中的至少一个方案。特别地,可以利用以下特征的组合以便达到想要的结果。方法的特征可以与设备、装置或***的任何特征进行组合,或者反之亦然。
提供了一种用于执行程序代码的方法,该方法包括:
-基于触发器来检查存储器访问策略资源;
-将当前程序计数器与由存储器访问策略资源提供的程序计数器信息进行比较,并且在当前程序计数器与程序计数器信息的比较满足预定义的条件的情况下,执行存储器访问策略检查。
该构思允许硬件基于由应用逻辑指定的条件而授予或者限制对存储器的定义的部分的访问。存储器的这些部分可以由应用按任何粒度被定义。这一方案允许在低成本微控制器上实现安全代码。特别是允许减少用于安全的软件对策的量,由此导致代码要求的存储器足迹的减少。
基于触发器,硬件可以验证当前正在被执行的代码是否满足要求的访问策略。
当前程序计数器可以是指向要被执行的程序代码的一部分的处理单元(微处理器)的程序计数器的值。
在实施例中,该方法还包括:
-在当前程序计数器与程序计数器信息的比较不满足预定义的条件的情况下,不执行存储器访问策略检查。
在实施例中,程序计数器信息包括程序计数器设置或者用于程序计数器的范围。
在实施例中,在当前程序计数器等于程序计数器设置或者处于用于程序计数器的范围内的情况下,当前程序计数器与程序计数器信息的比较满足预定义的条件。
在实施例中,执行存储器访问策略检查包括:
-从存储器访问策略资源取回存储器访问策略值;
-将存储器访问策略值与预定义的值进行比较;
-在存储器访问策略值对应于预定义的值的情况下继续执行程序代码;
-在存储器访问策略值不对应于预定义的值的情况下执行预定义的动作。
作为选项,可以将存储器访问策略值与在当前执行情境中获得的预定义的值进行比较。
作为另一选项,继续执行程序代码可以包括在存储器访问策略值对应于在当前执行情境中实现的预定义的值的情况下允许准许的操作。
在实施例中,预定义的动作包括以下各项中的至少一项:
-触发异常;
-触发中断;
-发出警报,特别是安全警报;
-发出通知。
在实施例中,预定义的值为包括应用特定访问策略的全局值。
预定义的值可以特别地在当前执行情境中获得。
在实施例中,存储器访问策略资源为存储在存储器中的数据结构,特别是表。
在实施例中,存储器访问策略资源为数据结构,其中该数据结构的每个条目包括:
-存储器的开始地址;
-存储器的大小;
-存储器访问策略值;
-至少一个准许的操作。
在实施例中,数据结构的每个条目还包括至少一个准许的操作。
准许的操作可以包括以下各项中的至少一项:读取、写入、执行。
在实施例中,基于存储器的开始地址和存储器的大小来确定程序计数器信息。
在实施例中,触发器取决于预定时间区间。
在实施例中,触发器基于预定义的操作代码。
在实施例中,在安全集成电路、安全微控制器、微控制器或者智能卡的处理单元上运行该方法。
在实施例中,存储器访问策略能够应用于要被执行的程序代码或者能够应用于被访问的数据。
提供了一种包括处理单元的设备,其中该处理单元被设置用于:
-基于触发器来检查存储器访问策略资源;
-将当前程序计数器与由存储器访问策略资源提供的程序计数器信息进行比较,并且在当前程序计数器与程序计数器信息的比较满足预定义的条件的情况下,执行存储器访问策略检查。
提供了一种智能卡,包括:
-处理单元,
-存储器,
-其中该处理单元被设置用于:
-基于触发器来检查存储器访问策略资源;
-将当前程序计数器与由存储器访问策略资源提供的程序计数器信息进行比较,并且在当前程序计数器与程序计数器信息的比较满足预定义的条件的情况下,执行存储器访问策略检查。
提供了一种用于处理数据的设备,该设备包括:
-用于基于触发器来检查存储器访问策略资源的装置;
-用于将当前程序计数器与由存储器访问策略资源提供的程序计数器信息进行比较,并且在当前程序计数器与程序计数器信息的比较满足预定义的条件的情况下,执行存储器访问策略检查的装置。
提供了一种计算机程序产品,该计算机程序产品能够直接加载到数字处理设备的存储器中,该计算机程序产品包括用于执行根据这里所描述的方法的步骤的软件代码部分。
在一个或多个示例中,这里所描述的功能可以至少部分地在硬件(诸如特定硬件部件或处理器)中实施。更一般而言,技术可以在硬件、处理器、软件、固件或者其任何组合中实施。如果在软件中实施,则功能能够作为一个或多个指令或代码而在计算机可读介质上被存储或者在其之上被发送并且由基于硬件的处理单元执行。计算机可读介质可以包括计算机可读存储介质,其对应于有形介质,诸如数据存储介质、或包括协助计算机程序例如根据通信协议从一个地方到另一地方的任何介质的通信介质。以这种方式,计算机可读介质一般地可以对应于(1)非瞬态的有形计算机可读存储介质,或者(2)诸如信号或载波的通信介质。数据存储介质可以是能够由一个或多个计算机或一个或多个处理器访问以取回指令、代码和/或数据结构以用于实现本公开中描述的技术的任何可用的介质。计算机程序产品可以包括计算机可读介质。
作为示例但非限制,这样的计算机可读存储介质可以包括RAM、ROM、EEPROM、CD-ROM或者其他光盘存储、磁盘存储、或其他磁存储设备、闪速存储器或者能够被用来以指令或数据结构的形式存储想要的程序代码并且可以由计算机访问的任何其他介质。另外,任何连接被合适地被称为计算机可读介质,即计算机可读传输介质。例如,如果指令是使用同轴线缆、光纤电缆、双绞线、数字订户线(DSL)或者诸如红外、无线电和微波之类的无线技术而从网站、服务器或其他远程的源传输的,则同轴线缆、光纤电缆、双绞线、DSL、或者诸如红外、无线电和微波之类的无线技术被包括在介质的定义中。然而应当理解,计算机可读存储介质和数据存储介质不包括连接、载波、信号或其他暂态介质,但是替代地指向非暂态、有形的存储介质。盘和在这里使用的盘,包括紧致盘(CD)、激光盘、光盘、数数字万用盘(DVD)、软盘和蓝光盘,其中盘通常磁地重新产生数据,而盘用激光来光地重新产生数据。以上的组合也应当被包括在计算机可读介质的范围内。
可以由一个或多个处理器、诸如一个或多个中央处理单元(CPU)、数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、场可编程逻辑阵列(FPGA),或者其他等同的集成或分立的逻辑电路来执行指令。因此,这里使用的术语“处理器”可以指代任何的上述结构或者适用于实施这里描述的技术的任何其他结构。此外,在一些方面中,这里描述的功能可以在被配置用于编码和解码的专用硬件和/或软件模块或并入在组合的编码解码器内提供。另外,所述技术可以在一个或多个电路或逻辑元件中完全实施。
本公开的技术可以被实施在广泛的设备或装置中,包括无线手机、集成电路(IC)或一组IC(例如,芯片组)。在本公开中描述了各种部件、模块以强调被配置为执行所公开的技术的设备的功能方面,但不一定要求由不同的硬件单元实现。替代地,如上所述,各种单元可以被组合在单个硬件单元中或者由互操作的硬件单元(包括如上所述的一个或多个处理器与合适的软件和/或固件一起)的汇集提供。
虽然已经公开了本发明的各个示例实施例,但是对本领域技术人员而言明显的是可以做出各种改变和修改,其将实现本发明的优点中的一些优点而不偏离本发明的精神和范围。对本领域技术人员明显的是可以合适地替代使用执行相同功能的其他部件。应当提到参照特定附图解释的特征可以与其他附图的特征组合,即使在其中没有对此明确提及的那些情况下。另外,本发明的方法可以在全软件实现方式、使用合适的处理器指令、或者利用硬件逻辑和软件逻辑的组合的混合实现方式中实现以实现相同的结果。对发明概念的这样的修改旨在于被所附权利要求所覆盖。

Claims (19)

1.一种用于执行程序代码的方法,所述方法包括:
基于触发器来检查存储器访问策略资源;以及
将当前程序计数器与由所述存储器访问策略资源提供的程序计数器信息进行比较,并且在所述当前程序计数器与所述程序计数器信息的所述比较满足预定义的条件的情况下,执行存储器访问策略检查。
2.根据权利要求1所述的方法,还包括:
在所述当前程序计数器与所述程序计数器信息的所述比较不满足所述预定义的条件的情况下不执行所述存储器访问策略检查。
3.根据权利要求1所述的方法,其中所述程序计数器信息包括程序计数器设置或者用于所述程序计数器的范围。
4.根据权利要求3所述的方法,其中在所述当前程序计数器等于所述程序计数器设置或者处于用于所述程序计数器的所述范围内的情况下,所述当前程序计数器与所述程序计数器信息的所述比较满足预定义的条件。
5.根据权利要求1所述的方法,其中执行存储器访问策略检查包括:
从所述存储器访问策略资源取回存储器访问策略值;
将所述存储器访问策略值与预定义的值进行比较;
在所述存储器访问策略值对应于所述预定义的值的情况下继续执行所述程序代码;以及
在所述存储器访问策略值不对应于所述预定义的值的情况下执行预定义的动作。
6.根据权利要求5所述的方法,其中所述预定义的动作包括以下各项中的至少一项:
触发异常;
触发中断;
发出警报,特别是安全警报;以及
发出通知。
7.根据权利要求5所述的方法,其中所述预定义的值为包括应用特定访问策略的全局值。
8.根据权利要求1所述的方法,其中所述存储器访问策略资源为存储在所述存储器中的数据结构,特别是表。
9.根据权利要求1所述的方法,其中所述存储器访问策略资源为数据结构,其中所述数据结构的每个条目包括:
所述存储器的开始地址;
所述存储器的大小;
存储器访问策略值;以及
至少一个准许的操作。
10.根据权利要求9所述的方法,其中所述数据结构的每个条目还包括至少一个准许的操作。
11.根据权利要求9所述的方法,其中基于所述存储器的所述开始地址和所述存储器的所述大小来确定所述程序计数器信息。
12.根据权利要求1所述的方法,其中所述触发器取决于预定时间区间。
13.根据权利要求1所述的方法,其中所述触发器基于预定义的操作代码。
14.根据权利要求1所述的方法,其中在安全集成电路、安全微控制器、微控制器或者智能卡的处理单元上运行所述方法。
15.根据权利要求1所述的方法,其中所述存储器访问策略能够应用于要被执行的程序代码或者能够应用于被访问的数据。
16.一种包括处理单元的设备,其中所述处理单元被设置用于:
基于触发器来检查存储器访问策略资源;以及
将当前程序计数器与由所述存储器访问策略资源提供的程序计数器信息进行比较,并且在所述前程序计数器与所述程序计数器信息的所述比较满足预定义的条件的情况下,执行存储器访问策略检查。
17.一种智能卡,包括:
处理单元;以及
存储器,
其中所述处理单元被设置用于:
基于触发器来检查存储器访问策略资源;以及
将当前程序计数器与由所述存储器访问策略资源提供的程序计数器信息进行比较,并且在所述当前程序计数器与所述程序计数器信息的所述比较满足预定义的条件的情况下,执行存储器访问策略检查。
18.一种用于处理数据的设备,包括:
用于基于触发器来检查存储器访问策略资源的装置;以及
用于将当前程序计数器与由所述存储器访问策略资源提供的程序计数器信息进行比较,并且在所述当前程序计数器与所述程序计数器信息的所述比较满足预定义的条件的情况下,执行存储器访问策略检查的装置。
19.一种能够直接加载到数字处理设备的存储器中的计算机程序产品,包括用于执行根据权利要求1所述的方法的所述步骤的软件代码部分。
CN201510624808.1A 2014-09-26 2015-09-25 处理数据 Active CN105468997B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/498,513 US9910794B2 (en) 2014-09-26 2014-09-26 Processing data
US14/498,513 2014-09-26

Publications (2)

Publication Number Publication Date
CN105468997A true CN105468997A (zh) 2016-04-06
CN105468997B CN105468997B (zh) 2019-05-03

Family

ID=55485983

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510624808.1A Active CN105468997B (zh) 2014-09-26 2015-09-25 处理数据

Country Status (3)

Country Link
US (1) US9910794B2 (zh)
CN (1) CN105468997B (zh)
DE (1) DE102015116181B4 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112106029A (zh) * 2018-05-31 2020-12-18 Arm有限公司 用于触发动作的装置和方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282657B1 (en) * 1997-09-16 2001-08-28 Safenet, Inc. Kernel mode protection
CN101052952A (zh) * 2004-09-10 2007-10-10 飞思卡尔半导体公司 存储器管理单元和用于存储器管理的方法
CN101755271A (zh) * 2007-07-23 2010-06-23 三星电子株式会社 用于在连接受限设备配置和开放服务网关联盟环境中管理访问特权的方法和装置
US20120042395A1 (en) * 2010-08-10 2012-02-16 Benefitfocus.Com Systems and methods for secure agent information

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6848046B2 (en) * 2001-05-11 2005-01-25 Intel Corporation SMM loader and execution mechanism for component software for multiple architectures
US20030167381A1 (en) * 2002-03-04 2003-09-04 Israel Herscovich System and method for dynamic memory access management
US7210014B2 (en) * 2004-05-27 2007-04-24 Microsoft Corporation Alternative methods in memory protection
US20120215989A1 (en) * 2011-02-23 2012-08-23 Freescale Semiconductor, Inc. Memory protection in a data processing system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282657B1 (en) * 1997-09-16 2001-08-28 Safenet, Inc. Kernel mode protection
CN101052952A (zh) * 2004-09-10 2007-10-10 飞思卡尔半导体公司 存储器管理单元和用于存储器管理的方法
CN101755271A (zh) * 2007-07-23 2010-06-23 三星电子株式会社 用于在连接受限设备配置和开放服务网关联盟环境中管理访问特权的方法和装置
US20120042395A1 (en) * 2010-08-10 2012-02-16 Benefitfocus.Com Systems and methods for secure agent information

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112106029A (zh) * 2018-05-31 2020-12-18 Arm有限公司 用于触发动作的装置和方法

Also Published As

Publication number Publication date
CN105468997B (zh) 2019-05-03
DE102015116181A1 (de) 2016-03-31
DE102015116181B4 (de) 2022-10-06
US20160092378A1 (en) 2016-03-31
US9910794B2 (en) 2018-03-06

Similar Documents

Publication Publication Date Title
EP3423849B1 (en) Ultra-fast autonomous clock monitoring circuit for safe and secure automotive applications
US20160147586A1 (en) Device and method for executing a program, and method for storing a program
US9734008B2 (en) Error vector readout from a memory device
US9733870B2 (en) Error vector readout from a memory device
CN111722857A (zh) 软件开发工具包的更新方法、装置、电子设备及存储介质
CN105468997A (zh) 处理数据
CN106682494B (zh) 一种信息访问方法、装置和设备
CN110688320B (zh) 全局变量的检测方法、装置及终端设备
CN110851207B (zh) 状态转换管理方法、装置、电子设备和存储介质
CN111221573B (zh) 一种寄存器访问时序的管理方法、处理器、电子设备及计算机可读存储介质
CN115130114B (zh) 一种网关安全启动方法、装置、电子设备及存储介质
CN108537066B (zh) 安全代码跳转和执行选通
US9678899B2 (en) Method and apparatus for providing memory protection
US10289808B2 (en) Method and system for secure data processing
CN112673354B (zh) 一种***状态检测方法、***状态装置及终端设备
CN112506626A (zh) 一种应用程序的启动方法、计算机设备及存储介质
CN110889110A (zh) 车辆的程序控制方法、装置、车辆及存储介质
CN112347432B (zh) 一种基于risc-v架构的嵌入式处理器中的程序保护方法及***
CN109190383B (zh) 访问指令的处理方法、装置及设备
CN116383827B (zh) 一种安全卸载可信功能机制方法、***和存储介质
US11847203B2 (en) Method, system and device for managing an execution of a program relating to part or all of a first application
CN111625784B (zh) 一种应用的反调试方法、相关装置及存储介质
CN108416191B (zh) 基于不透明谓词和有限状态机加固源代码的方法及装置
CN116866021A (zh) 监控数据鉴权方法、设备及存储介质
CN117574376A (zh) 一种权限控制漏洞检测方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant