CN112738219B - 程序运行方法、装置、车辆及存储介质 - Google Patents
程序运行方法、装置、车辆及存储介质 Download PDFInfo
- Publication number
- CN112738219B CN112738219B CN202011582336.5A CN202011582336A CN112738219B CN 112738219 B CN112738219 B CN 112738219B CN 202011582336 A CN202011582336 A CN 202011582336A CN 112738219 B CN112738219 B CN 112738219B
- Authority
- CN
- China
- Prior art keywords
- program segment
- mode
- target
- called
- privileged
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种程序运行方法、装置、车辆及存储介质,该方法包括:根据运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式,其中,非特权模式为无法直接访问目标ECU的密钥存储区及内存保护单元的模式,特权模式为可以直接访问密钥存储区的模式;当确定目标程序段的目标运行模式为非特权模式时,在非特权模式下运行目标程序段;当接收到目标程序段的调用请求时,确定目标程序段需调用的运行模式为特权模式的被调用程序段;在特权模式下运行被调用程序段,以使被调用程序段访问密钥存储区。该程序运行方法提高了密钥的安全性,在保证密钥安全性的前提下满足了目标程序段访问密钥存储区的需求,同时,降低了目标ECU的成本。
Description
技术领域
本发明实施例涉及汽车通信领域,尤其涉及一种程序运行方法、装置、车辆及存储介质。
背景技术
伴随汽车智能化网联化发展,汽车通讯安全问题变得越来越重要,密钥的存储和管理是保证汽车通讯安全的一个重要因素。
目前,欧盟电子安全车辆入侵防护应用(E-Safety Vehicle IntrusionProtected Applications,EVITA)项目针对不同通讯场景,定义了三个等级硬件安全模块(Hardware Security Modules,HSM)标准,分别为高等级(High)HSM、中等级(Medium)HSM和低等级(Light)HSM。High HSM主要应用于网关和车联网中的其他设备通讯。High HSM带有存储安全密钥的内存空间。Medium HSM主要应用于车内ECU之间通讯。Medium HSM也带有存储安全密钥的内存空间。Light HSM主要应用于车辆的电子控制器单元(ElectronicControl Unit,ECU)与执行器或传感器之间通讯,支持对称加密算法。Light HSM不带有存储安全密钥空间。在使用Light HSM通信时,密钥存储和管理需要在ECU本地完成,通过内存保护机制实现对外隔离和保护。ECU本地设置有密钥存储区。内存保护机制指的是在内存保护单元中记录可以访问密钥存储区域的程序段;在程序段运行时,基于内存保护单元中记录的信息,确定当前运行的程序段是否可以访问密钥存储区域;在确定当前运行的程序段不能访问密钥存储区域时,拒绝该程序段访问密钥存储区域的请求。
但是,在使用Light HSM通信时,内存保护机制存在的问题是:恶意程序段可以通过修改内存保护单元中信息,实现访问密钥存储区的目的,导致密钥的安全性较低。
发明内容
本发明提供一种程序运行方法、装置、车辆及存储介质,以解决目前的程序运行方法导致密钥的安全性较低的技术问题。
第一方面,本发明实施例提供一种程序运行方法,应用于目标ECU中,包括:
根据预设的运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式;其中,所述运行模式包括:非特权模式以及特权模式,所述非特权模式为无法直接访问所述目标ECU的密钥存储区及内存保护单元的模式,所述内存保护单元用于存储程序段与可访问区域的映射关系,所述特权模式为可以直接访问所述密钥存储区的模式;
当确定所述目标程序段的目标运行模式为所述非特权模式时,在所述非特权模式下运行所述目标程序段;
当接收到所述目标程序段的调用请求时,确定所述目标程序段需调用的运行模式为特权模式的被调用程序段;其中,所述调用请求为指示调用运行模式为特权模式的程序段的请求;
在所述特权模式下运行所述被调用程序段,以使所述被调用程序段访问所述密钥存储区。
第二方面,本发明实施例还提供一种程序运行装置,所述程序运行装置设置于目标ECU中,包括:
第一确定模块,用于根据预设的运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式;其中,所述运行模式包括:非特权模式以及特权模式,所述非特权模式为无法直接访问所述目标ECU的密钥存储区及内存保护单元的模式,所述内存保护单元用于存储程序段与可访问区域的映射关系,所述特权模式为可以直接访问所述密钥存储区的模式;
运行模块,用于当确定所述目标程序段的目标运行模式为所述非特权模式时,在所述非特权模式下运行所述目标程序段;
第二确定模块,用于当接收到所述目标程序段的调用请求时,确定所述目标程序段需调用的运行模式为特权模式的被调用程序段;其中,所述调用请求为指示调用运行模式为特权模式的程序段的请求;
所述运行模块,还用于在所述特权模式下运行所述被调用程序段,以使所述被调用程序段访问所述密钥存储区。
第三方面,本发明实施例还提供了一种车辆,所述车辆包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面提供的程序运行方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面提供的程序运行方法。
本实施例提供一种程序运行方法、装置、车辆及存储介质,该方法包括:根据预设的运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式,其中,运行模式包括:非特权模式以及特权模式,非特权模式为无法直接访问目标ECU的密钥存储区及内存保护单元的模式,内存保护单元用于存储程序段与可访问区域的映射关系,特权模式为可以直接访问密钥存储区的模式;当确定目标程序段的目标运行模式为非特权模式时,在非特权模式下运行目标程序段;当接收到目标程序段的调用请求时,确定目标程序段需调用的运行模式为特权模式的被调用程序段,其中,调用请求为指示调用运行模式为特权模式的程序段的请求;在特权模式下运行被调用程序段,以使被调用程序段访问密钥存储区。该程序运行方法中,一方面,设置了运行模式与程序段的映射关系,当确定目标程序段的目标运行模式为非特权模式时,在非特权模式下运行该目标程序段,由于非特权模式下无法直接访问密钥存储区及内存保护单元,因此,可以避免该目标程序段通过修改内存保护单元而直接访问密钥存储区,导致的密钥不安全的问题,从而,提高了密钥的安全性;另一方面,目标程序段可以通过调用运行模式为特权模式的被调用程序段,实现间接访问密钥存储区,在保证密钥安全性的前提下满足了目标程序段访问密钥存储区的需求;再一方面,由于本实施提供的程序运行方法可以保证密钥的安全性,目标ECU中不再需要设置带有存储密钥的内存空间的HSM,而只要将密钥保存在本地即可,从而,降低了目标ECU的成本。
附图说明
图1为本发明提供的一种程序运行方法应用场景的示意图;
图2为本发明提供的一种程序运行方法实施例的流程示意图;
图3为本发明提供的目标ECU内部的结构示意图;
图4为本发明提供的另一种程序运行方法实施例的流程示意图;
图5为本发明提供的一种程序运行装置的结构示意图;
图6为本发明提供的另一种程序运行装置的结构示意图;
图7为本发明提供的一种车辆的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
图1为本发明提供的一种程序运行方法应用场景的示意图。本实施例提供的程序运行方法可以应用于车辆控制系统的目标ECU11中。本实施例中的车辆控制系统可以包括多个ECU。每个ECU可以与其他ECU、执行器以及传感器中的至少一种通信。本实施例中的目标ECU11可以为车辆控制系统中的任意一个ECU。在目标ECU11与车辆控制系统中的其他ECU12通信,或者,目标ECU与其执行器13或者传感器14通信时,需要利用密钥对通讯报文进行加密或者解密。这些密钥可以存储在目标ECU本地。目前的内存保护机制中,恶意程序段可以通过修改内存保护单元中信息,实现访问密钥存储区的目标,从而导致密钥的安全性较低。
为了解决上述问题,本实施例提供一种程序运行方法,应用于目标ECU中,包括:根据预设的运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式,其中,运行模式包括:非特权模式以及特权模式,非特权模式为无法直接访问目标ECU的密钥存储区及内存保护单元的模式,内存保护单元用于存储程序段与可访问区域的映射关系,特权模式为可以直接访问密钥存储区的模式;当确定目标程序段的目标运行模式为非特权模式时,在非特权模式下运行目标程序段;当接收到目标程序段的调用请求时,确定目标程序段需调用的运行模式为特权模式的被调用程序段,其中,调用请求为指示调用运行模式为特权模式的程序段的请求;在特权模式下运行被调用程序段,以使被调用程序段访问密钥存储区。该程序运行方法中,一方面,设置了运行模式与程序段的映射关系,当确定目标程序段的目标运行模式为非特权模式时,在非特权模式下运行该目标程序段,由于非特权模式下无法直接访问密钥存储区及内存保护单元,因此,可以避免该目标程序段通过修改内存保护单元而直接访问密钥存储区,导致的密钥不安全的问题,从而,提高了密钥的安全性;另一方面,目标程序段可以通过调用运行模式为特权模式的被调用程序段,实现间接访问密钥存储区,在保证密钥安全性的前提下满足了目标程序段访问密钥存储区的需求;再一方面,由于本实施提供的程序运行方法可以保证密钥的安全性,目标ECU中不再需要设置带有存储密钥的内存空间的HSM,而只要将密钥保存在本地即可,从而,降低了目标ECU的成本。
图2为本发明提供的一种程序运行方法实施例的流程示意图。本实施例适用于车辆内部通信过程中运行程序的场景。本实施例可以由程序运行装置来执行,该程序运行装置可以由软件和/或硬件的方式实现,该程序运行装置可以集成于车辆的目标ECU中。如图2所示,本实施例提供的程序运行方法包括如下步骤:
步骤201:根据预设的运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式。
其中,运行模式包括:非特权模式以及特权模式。非特权模式为无法直接访问目标ECU的密钥存储区及内存保护单元的模式。内存保护单元用于存储程序段与可访问区域的映射关系。特权模式为可以直接访问密钥存储区的模式。
具体地,本实施例中的车辆控制系统可以为车辆实时控制系统。本实施例中的车辆可以为轿车、客车等。本实施例中对车辆的类型不做限制。
运行模式与程序段的映射关系为预先确定并存储于目标ECU中的。该映射关系可以是开发人员设置的。本实施例中的程序段指的是一段程序。为了描述方便,本实施例中将待运行,即,将要运行的程序段称为目标程序段。将目标程序段的运行模式称为目标运行模式。
本实施例中的目标ECU可以在某个目标程序段将要运行时,根据运行模式与程序段的映射关系,查找该目标程序段的目标运行模式。
本实施例中的运行模式包括:特权模式以及非特权模式。其指的是程序段的运行模式。运行模式为非特权模式的程序段在运行过程中无法直接访问目标ECU的密钥存储区及内存保护单元。运行模式为特权模式的程序段在运行过程中能直接访问密钥存储区。为了描述方便,本实施例中,将运行模式为特权模式的程序段称为特权程序段,将运行模式为非特权模式的程序段称为非特权程序段。
图3为本发明提供的目标ECU内部的结构示意图。如图3,本实施例中的目标ECU包括内存、内存保护单元、特权程序段以及非特权程序段。其中,内存包括普通数据区以及密钥存储区。本实施例中的普通数据区指的是存储普通数据的区域。本实施例中的密钥存储区指的是存储密钥的区域。内存保护单元用于存储程序段与可访问区域的映射关系。这里的可访问区域可以包括:普通数据区与密钥存储区中的至少一项。本实施例中的内存保护单元可以为寄存器。
示例性地,内存保护单元中可以包括以下信息:程序段1的可访问区域为普通数据子区1,程序段2的可访问区域为普通数据子区2,程序段3的可访问区域为普通数据子区3,程序段4的可访问区域为密钥存储子区1。示例性地,程序段4可以为密钥访问、解密及消息认证码(Message Authentication Code,MAC)验证程序段。
当然,非特权模式下程序段可以直接访问普通数据区。特权模式下程序段可以直接访问密钥存储区以及普通数据区。
步骤202:当确定目标程序段的目标运行模式为非特权模式时,在非特权模式下运行目标程序段。
具体地,基于特权模式以及非特权模式的定义可知,在非特权模式下运行该目标程序段时,该目标程序段不能直接访问目标ECU的密钥存储区及内存保护单元。不仅可以避免该目标程序段直接访问目标ECU的密钥存储区,同时,由于该目标程序段不能直接访问内存保护单元,也避免了该目标程序段通过修改内存保护单元中程序段与可访问区域的映射关系,而实现直接访问密钥存储区的问题。
可选地,内存保护单元中还可以存储运行模式与程序段的映射关系。这样还可以避免目标程序段通过修改运行模式与程序段的映射关系而实现篡改其对应的运行模式的问题,进一步提高了密钥的安全性。
目标程序段的运行过程中,可以直接访问普通数据区。
步骤203:当接收到目标程序段的调用请求时,确定目标程序段需调用的运行模式为特权模式的被调用程序段。
其中,调用请求为指示调用运行模式为特权模式的程序段的请求。
具体地,由于目标程序段可能会有访问密钥存储区的需求,本实施例中目标程序段可以在运行的过程中,通过调用特权程序段实现间接访问密钥存储区。
目标程序段可以通过预设的应用程序接口(Application ProgrammingInterface,API)实现调用运行模式为特权模式的被调用程序段。本实施例中,目标程序段在运行过程中,需要调用特权程序段时,会发出调用请求。
ECU在接收到目标程序段的调用请求时,确定其需要调用的被调用程序段。
一种实现方式中,调用请求包括请求调用的程序段的信息。可以根据请求调用的程序段的信息,确定目标程序段的被调用程序段。
另一种实现方式中,被调用程序段为预设的固定的特权程序段。因此,在接收到调用请求时,将该固定的特权程序段确定为目标程序段的被调用程序段。
步骤204:在特权模式下运行被调用程序段,以使被调用程序段访问密钥存储区。
具体地,在确定出被调用程序段后,在特权模式下运行该被调用程序段。由于被调用程序段的运行模式为特权模式,基于特权模式的定义,在被调用程序段运行的过程中,可以直接访问密钥存储区。
可选地,调用请求包括目标程序段接收到的发送设备发送的信息以及接收到的发送设备确定的该信息的第一授权码。其中,发送设备包括以下至少一项:车辆中除目标ECU之外的其他ECU、目标ECU的执行器以及目标ECU的传感器。
相对应地,步骤204具体可以包括如下步骤。
步骤2041:在特权模式下控制被调用程序段访问密钥存储区,获取被调用程序段对应的密钥。
可选地,可以通过内存保护单元,确定该被调用程序段可访问的密钥存储子区,从该密钥存储子区中获取该被调用程序段对应的密钥。
步骤2042:控制被调用程序段根据被调用程序段对应的密钥以及信息,确定信息的第二授权码。
可选地,确定第二授权码的算法可以是预先与发送设备约定好的算法。
步骤2043:控制被调用程序段比较第一授权码以及第二授权码,获取比较结果。
步骤2044:控制被调用程序段将比较结果返回给目标程序段。
可选地,在步骤2044之后,还包括步骤2045:在非特权模式下控制目标程序段接收比较结果。
目标程序段在接收到比较结果之后,可以根据比较结果进行后续操作。示例性,当比较结果为第一授权码与第二授权码一致时,目标程序段确定接收到的信息正确,可以进行生成反馈信息等操作。当比较结果为第一授权码与第二授权码不一致时,目标程序段确定接收到的信息不正确,可以进行请求重发等操作。
需要说明的是,本实施例中的第一授权码和第二授权码可以为采用对称加密算法或者非对称加密算法确定出的授权码。示例性地,本实施例中的授权码可以为哈希值。
可选地,特权模式还为可以直接访问所述内存保护单元的模式。因此,本实施例中的运行模式为特权模式的程序段,在运行过程中可以直接访问内存保护单元。
可选地,本实施例提供的程序运行方法还包括如下步骤:控制运行模式为特权模式的配置程序段,修改内存保护单元中的程序段与可访问区域的映射关系。通过运行模式为特权模式的配置程序段修改程序段与可访问区域的映射关系,可以在满足修改需求的基础上,保证内存保护单元中程序段与可访问区域的映射关系的安全性,进而,保证密钥的安全性。
更进一步地,在运行模式与程序段的映射关系存储于内存保护单元的场景中,还可以控制运行模式为特权模式的配置程序段,修改内存保护单元中的运行模式与程序段的映射关系。
本实施例提供一种程序运行方法,包括:应用于目标ECU中,包括:根据预设的运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式,其中,运行模式包括:非特权模式以及特权模式,非特权模式为无法直接访问目标ECU的密钥存储区及内存保护单元的模式,内存保护单元用于存储程序段与可访问区域的映射关系,特权模式为可以直接访问密钥存储区的模式;当确定目标程序段的目标运行模式为非特权模式时,在非特权模式下运行目标程序段;当接收到目标程序段的调用请求时,确定目标程序段需调用的运行模式为特权模式的被调用程序段,其中,调用请求为指示调用运行模式为特权模式的程序段的请求;在特权模式下运行被调用程序段,以使被调用程序段访问密钥存储区。该程序运行方法中,一方面,设置了运行模式与程序段的映射关系,当确定目标程序段的目标运行模式为非特权模式时,在非特权模式下运行该目标程序段,由于非特权模式下无法直接访问密钥存储区及内存保护单元,因此,可以避免该目标程序段通过修改内存保护单元而直接访问密钥存储区,导致的密钥不安全的问题,从而,提高了密钥的安全性;另一方面,目标程序段可以通过调用运行模式为特权模式的被调用程序段,实现间接访问密钥存储区,在保证密钥安全性的前提下满足了目标程序段访问密钥存储区的需求;再一方面,由于本实施提供的程序运行方法可以保证密钥的安全性,目标ECU中不再需要设置带有存储密钥的内存空间的HSM,而只要将密钥保存在本地即可,从而,降低了目标ECU的成本。
图4为本发明提供的另一种程序运行方法实施例的流程示意图。本实施例在图2所示实施例及各种可选的方式的基础上,对确定被调用程序段的过程作一详细说明。如图4所示,本实施例提供的程序运行方法包括如下步骤:
步骤401:根据预设的运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式。
其中,运行模式包括:非特权模式以及特权模式。非特权模式为无法直接访问目标ECU的密钥存储区及内存保护单元的模式。内存保护单元用于存储程序段与可访问区域的映射关系。特权模式为可以直接访问密钥存储区的模式。
步骤402:当确定目标程序段的目标运行模式为非特权模式时,在非特权模式下运行目标程序段。
步骤401与步骤201、步骤402与步骤202的实现过程和技术原理类似,此处不再赘述。
可选地,调用请求包括目标程序段的信息。对应地,该程序运行方法还包括步骤403。
步骤403:当接收到目标程序段的调用请求时,根据调用请求以及预设的第一校验信息,确定目标程序段是否能调用运行模式为特权模式的程序段。
其中,第一校验信息用于指示能调用特权程序段的非特权程序段的信息。特权程序段为运行模式为特权模式的程序段。非特权程序段为运行模式为非特权模式的程序段。
步骤403对目标程序段是否具有调用资格进行了校验,以避免没有调用资格的程序段调用特权程序段而导致的安全隐患。
表1示出了第一校验信息一种可能的实现方式
能调用特权程序段的非特权程序段的信息 |
程序段1 |
程序段2 |
程序段5 |
程序段7 |
程序段8 |
调用请求中包括目标程序段的信息,这里的信息可以为目标程序段的标识。可以通过在第一检验信息中查找是否存在该目标程序段的信息的方式,确定该目标程序段是否能调用运行模式为特权模式的程序段。
当能在第一检验信息中查找到该目标程序段的信息时,确定该目标程序段能调用运行模式为特权模式的程序段。当能在第一检验信息中无法查找到该目标程序段的信息时,确定该目标程序段不能调用运行模式为特权模式的程序段。
步骤404:当确定目标程序段能调用特权程序段时,确定执行确定目标程序段需调用的运行模式为特权模式的被调用程序段的步骤。
步骤405:确定目标程序段需调用的运行模式为特权模式的被调用程序段。
其中,调用请求为指示调用运行模式为特权模式的程序段的请求。
本实施例中,可选地,调用请求还包括请求调用的程序段的信息。对应地,步骤405具体包括以下步骤。
步骤4051:根据调用请求以及预设的第二校验信息,确定请求调用的程序段是否为可被目标程序段调用的程序段。
其中,第二校验信息用于指示非特权程序段与对应的被调用的特权程序段的映射关系。
表2示出了第二校验信息一种可能的实现方式
非特权程序段的信息 | 被调用程序段的信息 |
程序段1 | 程序段6 |
程序段2 | 程序段9 |
程序段5 | 程序段10 |
可以基于第二校验信息以及目标程序段的信息,确定出该目标程序段对应的被调用程序段的信息;再确定调用请求中包括的请求调用的程序段的信息,与确定出的被调用程序段的信息是否相同,即,确定请求调用的程序段是否为可被目标程序段调用的程序段。
步骤4052:当确定请求调用的程序段为可被目标程序段调用的程序段时,将请求调用的程序段确定为被调用程序段。
步骤4051及步骤4052对目标程序段是否可以调用该被调用程序段的资格进行了校验。
步骤406:在特权模式下运行被调用程序段,以使被调用程序段访问密钥存储区。
步骤406与步骤204的实现过程和技术原理类似,此处不再赘述。
本实施例提供的程序运行方法中,由于在确定目标程序段需调用的运行模式为特权模式的被调用程序段之前,对目标程序段是否具有调用资格进行了校验,在确定目标程序段需调用的运行模式为特权模式的被调用程序段的过程中,对目标程序段是否可以调用该被调用程序段的资格进行了校验,通过两步校验的方式,进一步保证了目标程序段间接访问密钥存储区的过程的安全性,进一步提高了密钥的安全性。
图5为本发明提供的一种程序运行装置的结构示意图。该程序运行装置设备于目标ECU中。如图5所示,本实施例提供的程序运行装置包括如下模块:第一确定模块51、运行模块52以及第二确定模块53。
第一确定模块51,用于根据预设的运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式。
其中,运行模式包括:非特权模式以及特权模式。非特权模式为无法直接访问目标ECU的密钥存储区及内存保护单元的模式。内存保护单元用于存储程序段与可访问区域的映射关系。特权模式为可以直接访问密钥存储区的模式。
运行模块52,用于当确定目标程序段的目标运行模式为非特权模式时,在非特权模式下运行目标程序段。
第二确定模块53,用于当接收到目标程序段的调用请求时,确定目标程序段需调用的运行模式为特权模式的被调用程序段。
其中,调用请求为指示调用运行模式为特权模式的程序段的请求。
运行模块52,还用于在特权模式下运行被调用程序段,以使被调用程序段访问密钥存储区。
可选地,调用请求包括目标程序段接收到的发送设备发送的信息以及接收到的发送设备确定的信息的第一授权码。
示例性地,发送设备包括以下至少一项:车辆中除目标ECU之外的其他ECU、目标ECU的执行器以及目标ECU的传感器。
相对应地,在特权模式下运行被调用程序段的方面,运行模块52具体用于:在特权模式下控制被调用程序段访问密钥存储区,获取被调用程序段对应的密钥;控制被调用程序段根据被调用程序段对应的密钥以及信息,确定信息的第二授权码;控制被调用程序段比较第一授权码以及第二授权码,获取比较结果;控制被调用程序段将比较结果返回给目标程序段。
可选地,运行模块52还具体用于在非特权模式下控制目标程序段接收比较结果。
可选地,特权模式还为可以直接访问所述内存保护单元的模式。相对应地,该装置还包括修改模块。
修改模块,用于控制运行模式为特权模式的配置程序段,修改内存保护单元中的程序段与可访问区域的映射关系。
本发明实施例所提供的程序运行装置可执行本发明任意实施例所提供的程序运行方法,具备执行方法相应的功能模块和有益效果。
图6为本发明提供的另一种程序运行装置的结构示意图。本实施例提供的程序运行装置在图5所示实施例各各种可选的实现方案的基础上,对该程序运行装置包括的其他模块作一详细说明。本实施例中调用请求包括目标程序段的信息。如图6所示,本实施例提供的程序运行装置还包括:第三确定模块61以及第四确定模块62。
第三确定模块61,用于根据调用请求以及预设的第一校验信息,确定目标程序段是否能调用运行模式为特权模式的程序段。
其中,第一校验信息用于指示能调用特权程序段的非特权程序段的信息。特权程序段为运行模式为特权模式的程序段,非特权程序段为运行模式为非特权模式的程序段。
第四确定模块62,用于当确定目标程序段能调用特权程序段时,确定执行确定目标程序段需调用的运行模式为特权模式的被调用程序段的步骤。
可选地,调用请求还包括请求调用的程序段的信息。
第二确定模块53具体用于:根据调用请求以及预设的第二校验信息,确定请求调用的程序段是否为可被目标程序段调用的程序段,其中,第二校验信息用于指示非特权程序段与对应的被调用的特权程序段的映射关系;当确定请求调用的程序段为可被目标程序段调用的程序段时,将请求调用的程序段确定为被调用程序段。
本发明实施例所提供的程序运行装置可执行本发明任意实施例所提供的程序运行方法,具备执行方法相应的功能模块和有益效果。
图7为本发明提供的一种车辆的结构示意图。如图7所示,该车辆包括处理器70以及存储器71。该车辆中处理器70的数量可以是一个或多个,图7中以一个处理器70为例;该车辆的处理器70和存储器71可以通过总线或其他方式连接,图7中以通过总线连接为例。
存储器71作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的程序运行方法对应的程序指令以及模块(例如,程序运行装置中的第一确定模块51、运行模块52以及第二确定模块53)。处理器70通过运行存储在存储器71中的软件程序、指令以及模块,从而执行车辆的各种功能应用以及数据处理,即实现上述的程序运行方法。
存储器71可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据车辆的使用所创建的数据等。此外,存储器71可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器71可进一步包括相对于处理器70远程设置的存储器,这些远程存储器可以通过网络连接至车辆。上述网络的实施例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本发明还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种程序运行方法,应用于目标ECU中,该方法包括:
根据预设的运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式;其中,所述运行模式包括:非特权模式以及特权模式,所述非特权模式为无法直接访问所述目标ECU的密钥存储区及内存保护单元的模式,所述内存保护单元用于存储程序段与可访问区域的映射关系,所述特权模式为可以直接访问所述密钥存储区的模式;
当确定所述目标程序段的目标运行模式为所述非特权模式时,在所述非特权模式下运行所述目标程序段;
当接收到所述目标程序段的调用请求时,确定所述目标程序段需调用的运行模式为特权模式的被调用程序段;其中,所述调用请求为指示调用运行模式为特权模式的程序段的请求;
在所述特权模式下运行所述被调用程序段,以使所述被调用程序段访问所述密钥存储区。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的程序运行方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述程序运行装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (9)
1.一种程序运行方法,应用于目标电子控制单元ECU中,其特征在于,包括:
根据预设的运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式;其中,所述运行模式包括:非特权模式以及特权模式,所述非特权模式为无法直接访问所述目标ECU的密钥存储区及内存保护单元的模式,所述内存保护单元用于存储程序段与可访问区域的映射关系,所述特权模式为可以直接访问所述密钥存储区的模式;
当确定所述目标程序段的目标运行模式为所述非特权模式时,在所述非特权模式下运行所述目标程序段;
当接收到所述目标程序段的调用请求时,确定所述目标程序段需调用的运行模式为特权模式的被调用程序段;其中,所述调用请求为指示调用运行模式为特权模式的程序段的请求;
在所述特权模式下运行所述被调用程序段,以使所述被调用程序段访问所述密钥存储区。
2.根据权利要求1所述的方法,其特征在于,所述调用请求包括所述目标程序段的信息;
所述接收到所述目标程序段的调用请求之后,所述确定所述目标程序段需调用的运行模式为特权模式的被调用程序段之前,所述方法包括:
根据所述调用请求以及预设的第一校验信息,确定所述目标程序段是否能调用运行模式为特权模式的程序段;其中,所述第一校验信息用于指示能调用特权程序段的非特权程序段的信息,所述特权程序段为运行模式为特权模式的程序段,所述非特权程序段为运行模式为非特权模式的程序段;
当确定所述目标程序段能调用特权程序段时,确定执行确定所述目标程序段需调用的运行模式为特权模式的被调用程序段的步骤。
3.根据权利要求2所述的方法,其特征在于,所述调用请求还包括请求调用的程序段的信息;
所述确定所述目标程序段需调用的运行模式为特权模式的被调用程序段,包括:
根据所述调用请求以及预设的第二校验信息,确定所述请求调用的程序段是否为可被所述目标程序段调用的程序段;其中,所述第二校验信息用于指示非特权程序段与对应的被调用的特权程序段的映射关系;
当确定所述请求调用的程序段为可被所述目标程序段调用的程序段时,将所述请求调用的程序段确定为所述被调用程序段。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述特权模式还为可以直接访问所述内存保护单元的模式;
所述方法还包括:
控制运行模式为特权模式的配置程序段,修改所述内存保护单元中的程序段与可访问区域的映射关系。
5.根据权利要求1所述的方法,其特征在于,所述调用请求包括所述目标程序段接收到的发送设备发送的信息以及接收到的所述发送设备确定的所述信息的第一授权码;
所述在所述特权模式下运行所述被调用程序段,包括:
在所述特权模式下控制所述被调用程序段访问所述密钥存储区,获取所述被调用程序段对应的密钥;
控制所述被调用程序段根据所述被调用程序段对应的密钥以及所述信息,确定所述信息的第二授权码;
控制所述被调用程序段比较所述第一授权码以及所述第二授权码,获取比较结果;
控制所述被调用程序段将所述比较结果返回给所述目标程序段;
其中,所述发送设备包括以下至少一项:车辆中除所述目标ECU之外的其他ECU、所述目标ECU的执行器以及所述目标ECU的传感器。
6.根据权利要求5所述的方法,其特征在于,所述控制所述被调用程序段将所述比较结果返回给所述目标程序段之后,所述方法还包括:
在所述非特权模式下控制所述目标程序段接收所述比较结果。
7.一种程序运行装置,其特征在于,所述程序运行装置设置于目标电子控制单元ECU中,包括:
第一确定模块,用于根据预设的运行模式与程序段的映射关系,确定待运行的目标程序段的目标运行模式;其中,所述运行模式包括:非特权模式以及特权模式,所述非特权模式为无法直接访问所述目标ECU的密钥存储区及内存保护单元的模式,所述内存保护单元用于存储程序段与可访问区域的映射关系,所述特权模式为可以直接访问所述密钥存储区的模式;
运行模块,用于当确定所述目标程序段的目标运行模式为所述非特权模式时,在所述非特权模式下运行所述目标程序段;
第二确定模块,用于当接收到所述目标程序段的调用请求时,确定所述目标程序段需调用的运行模式为特权模式的被调用程序段;其中,所述调用请求为指示调用运行模式为特权模式的程序段的请求;
所述运行模块,还用于在所述特权模式下运行所述被调用程序段,以使所述被调用程序段访问所述密钥存储区。
8.一种车辆,其特征在于,所述车辆包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至6中任一所述的程序运行方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至6中任一所述的程序运行方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011582336.5A CN112738219B (zh) | 2020-12-28 | 2020-12-28 | 程序运行方法、装置、车辆及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011582336.5A CN112738219B (zh) | 2020-12-28 | 2020-12-28 | 程序运行方法、装置、车辆及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112738219A CN112738219A (zh) | 2021-04-30 |
CN112738219B true CN112738219B (zh) | 2022-06-10 |
Family
ID=75607216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011582336.5A Active CN112738219B (zh) | 2020-12-28 | 2020-12-28 | 程序运行方法、装置、车辆及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112738219B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110784493A (zh) * | 2019-07-04 | 2020-02-11 | 苏州大学 | 一种基于NB-IoT通信的综合气象数据采集系统 |
CN111199023A (zh) * | 2019-12-23 | 2020-05-26 | 上海琪埔维半导体有限公司 | 一种mcu程序的密钥系统及解密方法 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AUPO799197A0 (en) * | 1997-07-15 | 1997-08-07 | Silverbrook Research Pty Ltd | Image processing method and apparatus (ART01) |
CA2425006C (en) * | 2002-04-17 | 2012-06-05 | Microsoft Corporation | Saving and retrieving data based on symmetric key encryption |
US9152785B2 (en) * | 2004-01-30 | 2015-10-06 | Hewlett-Packard Development Company, L.P. | Providing a flexible protection model in a computer system by decoupling protection from computer privilege level |
CN104536912B (zh) * | 2014-12-22 | 2017-10-31 | 昆腾微电子股份有限公司 | 在小型操作系统中实现内存保护模式的装置和方法 |
CN105844170A (zh) * | 2015-01-16 | 2016-08-10 | 阿里巴巴集团控股有限公司 | 一种文件处理方法和装置 |
CN105354507B (zh) * | 2015-10-23 | 2018-09-11 | 浙江远望软件有限公司 | 一种云环境下的数据安全保密方法 |
CN106453326B (zh) * | 2016-10-19 | 2019-11-26 | 中国第一汽车股份有限公司 | 一种can总线的认证与访问控制方法 |
CN108429719B (zh) * | 2017-02-14 | 2020-12-01 | 华为技术有限公司 | 密钥保护方法及装置 |
US11018880B2 (en) * | 2017-05-03 | 2021-05-25 | Visa International Service Association | System and method for software module binding |
CN108280349A (zh) * | 2018-01-10 | 2018-07-13 | 维沃移动通信有限公司 | 保护系统内核层的方法、移动终端及计算机可读存储介质 |
US11520611B2 (en) * | 2018-08-20 | 2022-12-06 | Intel Corporation | Secure public cloud using extended paging and memory integrity |
US11080397B2 (en) * | 2018-09-12 | 2021-08-03 | International Business Machines Corporation | Using trap cache segments to detect malicious processes |
CN109766165B (zh) * | 2018-11-22 | 2022-07-08 | 海光信息技术股份有限公司 | 一种内存访问控制方法、装置、内存控制器及计算机系统 |
US11580234B2 (en) * | 2019-06-29 | 2023-02-14 | Intel Corporation | Implicit integrity for cryptographic computing |
CN111694602B (zh) * | 2020-06-12 | 2023-08-08 | 北京经纬恒润科技股份有限公司 | 跨分区的数据处理方法及装置 |
CN111782300B (zh) * | 2020-07-08 | 2022-02-08 | 支付宝(杭州)信息技术有限公司 | 一种数据处理方法、装置、设备及系统 |
CN111931190B (zh) * | 2020-08-25 | 2023-03-14 | 山东云海国创云计算装备产业创新中心有限公司 | 一种基于xip处理器系统的启动方法 |
-
2020
- 2020-12-28 CN CN202011582336.5A patent/CN112738219B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110784493A (zh) * | 2019-07-04 | 2020-02-11 | 苏州大学 | 一种基于NB-IoT通信的综合气象数据采集系统 |
CN111199023A (zh) * | 2019-12-23 | 2020-05-26 | 上海琪埔维半导体有限公司 | 一种mcu程序的密钥系统及解密方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112738219A (zh) | 2021-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110414268B (zh) | 访问控制方法、装置、设备及存储介质 | |
US8161287B2 (en) | Method and system for memory protection and security using credentials | |
US20110083161A1 (en) | Vehicle, maintenance device, maintenance service system, and maintenance service method | |
CN109600377B (zh) | 防越权方法、装置、计算机设备及存储介质 | |
US10789364B2 (en) | Method for providing an authenticated update in a distributed network | |
CN109714171B (zh) | 安全防护方法、装置、设备和介质 | |
US20220124086A1 (en) | Authentication Method, Device, and System | |
JP2017033248A (ja) | 処理装置、車載端末装置、処理装置の起動方法、及び処理装置の起動プログラム | |
CN110190958A (zh) | 一种车辆的身份验证方法、装置、电子设备及存储介质 | |
CN110908357B (zh) | 一种安全漏洞检测方法、装置、存储介质和智能设备 | |
CN111177741A (zh) | 一种基于企业浏览器的预授权数据访问方法和装置 | |
US20230115187A1 (en) | Remote hardware execution service with customer consented debugging | |
CN111669352B (zh) | 防拒绝服务攻击方法和装置 | |
CN111885031A (zh) | 一种基于会话过程的细粒度访问控制方法及系统 | |
US20220044207A1 (en) | Vehicle service authorization | |
CN112738219B (zh) | 程序运行方法、装置、车辆及存储介质 | |
CN110765471B (zh) | 一种基于微控制器的访问权能嵌入式平台的工作方法 | |
US20220114111A1 (en) | Integrated chip and data processing method | |
CN112738215B (zh) | 区块链节点的授权方法、装置、终端设备及介质 | |
Park et al. | Case study for defining security goals and requirements for automotive security parts using threat modeling | |
KR20220023213A (ko) | 차량의 can 제어 장치 및 그 동작 방법 | |
WO2024098429A1 (en) | Method for accessing service and related products | |
CN115296813B (zh) | 一种汽车以太网控制器身份认证方法及系统 | |
CN116226870B (zh) | 安全增强系统及方法 | |
CN113799734B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |