CN112434325B - 数据高速加解密方法及车载单元 - Google Patents
数据高速加解密方法及车载单元 Download PDFInfo
- Publication number
- CN112434325B CN112434325B CN202110106980.3A CN202110106980A CN112434325B CN 112434325 B CN112434325 B CN 112434325B CN 202110106980 A CN202110106980 A CN 202110106980A CN 112434325 B CN112434325 B CN 112434325B
- Authority
- CN
- China
- Prior art keywords
- data
- security module
- processed
- hardware security
- processor
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting 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
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/44—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/46—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for vehicle-to-vehicle communication [V2V]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种数据高速加解密方法及车载单元,属于芯片安全技术领域。所述方法用于车载单元中,车载单元中包括第一处理器、第一存储器、核间通信设备和嵌入式硬件安全模块,嵌入式硬件安全模块中包括第二处理器、DMA和第二存储器,第一处理器获取待处理数据和操作指令;第一处理器根据操作指令将待处理数据存储到第一存储器中,并通过核间通信设备向第二处理器发送操作指令;第二处理器根据操作指令,控制DMA将待处理数据从第一存储器中搬运到第二存储器中,对第二存储器中存储的待处理数据进行加密相关操作或解密相关操作。本申请不仅可以降低成本,还可以提高加解密相关服务的效率,降低响应延迟。
Description
技术领域
本申请实施例涉及芯片安全技术领域,特别涉及一种数据高速加解密方法及车载单元。
背景技术
随着车联网(Vehicle to Everything,V2X)中信息安全的发展,需要对车载应用实施数据保护措施。以V2X的身份认证为例,每秒要上千次的国密验签运算,现有的车载单元(On board Unit,OBU)已经无法满足要求。
相关技术中,可以在车载单元外接硬件安全模块(Hardware Security Module,HSM),这样,硬件安全模块可以通过串行外设接口(Serial Peripheral Interface,SPI)为车载单元中的数据提供加解密相关服务。
然而,通过串行外设接口进行数据传输的速度较慢,从而使得车载单元对数据提供的加解密相关服务的服务速度过慢,响应延迟高。
发明内容
本申请实施例提供了一种数据高速加解密方法及车载单元,用于解决通过串行外设接口进行数据传输的速度较慢,从而使得车载单元对数据提供的加解密相关服务的服务速度过慢,响应延迟高的问题。所述技术方案如下:
一方面,提供了一种数据高速加解密方法,用于车载单元中,所述车载单元中包括第一处理器、第一存储器、核间通信设备和嵌入式硬件安全模块,所述嵌入式硬件安全模块中包括第二处理器、直接存储器访问DMA和第二存储器,所述方法包括:
所述第一处理器获取待处理数据和操作指令,所述操作指令用于指示对所述待处理数据进行加密相关操作或解密相关操作;
所述第一处理器根据所述操作指令将所述待处理数据存储到所述第一存储器中,并通过所述核间通信设备向所述第二处理器发送所述操作指令;
所述第二处理器根据所述操作指令,控制所述DMA将所述待处理数据从所述第一存储器中搬运到所述第二存储器中,对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作。
在一种可能的实现方式中,所述操作指令中包括输入地址和输出地址,所述输入地址是用于存储所述待处理数据的地址,所述输出地址是用于存储加密相关操作或解密相关操作后得到的处理结果的地址;
所述第一处理器根据所述操作指令将所述待处理数据存储到所述第一存储器中,包括:所述第一处理器将所述待处理数据存储到所述第一存储器中的所述输入地址中;
所述方法还包括:所述第二处理器将得到的所述处理结果存储到所述第二存储器中,控制所述DMA将所述处理结果从所述第二存储器中搬运到所述第一存储器中的所述输出地址中。
在一种可能的实现方式中,所述操作指令为用于指示对所述待处理数据进行解密操作和比对操作的验签指令,且所述操作指令中包括输入地址,所述输入地址是用于存储所述待处理数据的地址;
所述第一处理器根据所述操作指令将所述待处理数据存储到所述第一存储器中,包括:所述第一处理器将所述待处理数据存储到所述第一存储器中的所述输入地址中;
所述方法还包括:所述第二处理器获取验签操作后得到的验签结果,通过所述核间通信设备将所述验签结果发送给所述第一处理器。
在一种可能的实现方式中,若所述操作指令中还包括密钥,则所述对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作,包括:所述第二处理器根据所述密钥对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作;
若所述操作指令中还包括密钥标识,则所述对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作,包括:所述第二处理器在预存的密钥表中查找与所述密钥标识对应的密钥,根据所述密钥对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作;
若所述操作指令中不包括密钥和密钥标识,则所述对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作,包括:所述第二处理器从外部获取密钥,根据所述密钥对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作。
在一种可能的实现方式中,所述车载单元中还包括应用程序和嵌入式硬件安全模块服务;
所述方法还包括:所述应用程序调用所述嵌入式硬件安全模块服务,并将生成的所述待处理数据和所述操作指令发送给所述嵌入式硬件安全模块服务;所述嵌入式硬件安全模块服务将所述待处理数据和所述操作指令发送给所述第一处理器;
所述第一处理器获取待处理数据和操作指令,包括:所述第一处理器接收所述嵌入式硬件安全模块服务发送的所述待处理数据和所述操作指令。
在一种可能的实现方式中,在所述应用程序调用所述嵌入式硬件安全模块服务之前,所述方法还包括:
在所述嵌入式硬件安全模块服务中加载驱动;
在驱动加载完成后,检测所述嵌入式硬件安全模块是否能够正常工作;
若所述嵌入式硬件安全模块能够正常工作,则对所述嵌入式硬件安全模块进行认证;
在认证成功后,完成所述嵌入式硬件安全模块服务的初始化。
在一种可能的实现方式中,所述方法还包括:
在认证成功后,所述嵌入式硬件安全模块服务获取所述嵌入式硬件安全模块发放的临时访问令牌;
所述嵌入式硬件安全模块服务将所述待处理数据和所述操作指令发送给所述第一处理器,包括:所述嵌入式硬件安全模块服务将所述临时访问令牌添加到所述操作指令中,并将得到的操作指令和所述待处理数据发送给所述第一处理器;
所述第二处理器根据所述操作指令,控制所述DMA将所述待处理数据从所述第一存储器中搬运到所述第二存储器中,包括:所述第二处理器对所述临时访问令牌进行验证,在验证通过后,控制所述DMA将所述待处理数据从所述第一存储器中搬运到所述第二存储器中。
在一种可能的实现方式中,所述临时访问令牌在所述车载单元断电后失效。
在一种可能的实现方式中,所述对所述嵌入式硬件安全模块进行认证,包括:
所述嵌入式硬件安全模块服务根据预定数据生成第一验证信息,将所述预定数据和所述第一验证信息发送给所述嵌入式硬件安全模块;
所述嵌入式硬件安全模块根据所述预定数据生成第二验证信息,将所述第二验证信息发送给所述嵌入式硬件安全模块服务;
所述嵌入式硬件安全模块验证所述第一验证信息和所述第二验证信息是否相同,且所述嵌入式硬件安全模块服务验证所述第一验证信息和所述第二验证信息是否相同;
若所述嵌入式硬件安全模块和所述嵌入式硬件安全模块服务都确定所述第一验证信息和所述第二验证信息相同,则确定认证成功。
一方面,提供了一种车载单元,所述车载单元包括:第一处理器、第一存储器、核间通信设备和嵌入式硬件安全模块,所述嵌入式硬件安全模块中包括第二处理器、直接存储器访问DMA和第二存储器,所述方法包括:
所述第一处理器,用于获取待处理数据和操作指令,所述操作指令用于指示对所述待处理数据进行加密相关操作或解密相关操作;
所述第一处理器,还用于根据所述操作指令将所述待处理数据存储到所述第一存储器中,并通过所述核间通信设备向所述第二处理器发送所述操作指令;
所述第二处理器,用于根据所述操作指令,控制所述DMA将所述待处理数据从所述第一存储器中搬运到所述第二存储器中,对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作。
本申请实施例提供的技术方案的有益效果至少包括:
由于车载单元中包括嵌入式硬件安全模块,所以,第一处理器可以通过核间通信设备向第二处理器发送操作指令,嵌入式硬件安全模块中的第二处理器可以根据操作指令,控制DMA将待处理数据从第一存储器中搬运到第二存储器中,对第二存储器中存储的待处理数据进行加密相关操作或解密相关操作。这样,可以在车载单元中设置嵌入式硬件安全模块,而无需在车载单元外接硬件安全模块,可以降低成本。另外,可以通过核间通信设备和DMA进行数据传输,相比于通过串行外设接口进行数据传输来说,可以提高数据的传输效率,从而可以提高加解密相关服务的效率,降低响应延迟。
由于车载单元中还包括应用程序和嵌入式硬件安全模块服务,且在嵌入式硬件安全模块服务初始化后,可以向应用程序提供数据高速加解密相关服务,使得上层的V2X协议栈等应用程序可以无感知地使用数据高速加解密相关服务。
在嵌入式硬件安全模块服务与嵌入式硬件安全模块认证成功后,嵌入式硬件安全模块可以向嵌入式硬件安全模块服务发放临时访问令牌,这样,嵌入式硬件安全模块可以在接收到操作指令时,对该操作指令中携带的临时访问令牌进行验证,在验证通过后才响应该操作指令,可以提高安全性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例提供的车载单元OBU的结构示意图;
图2是本申请一个实施例提供的嵌入式硬件安全模块服务的启动方法的方法流程图;
图3是本申请一个实施例提供的嵌入式硬件安全模块服务的结构示意图;
图4是本申请一个实施例提供的数据高速加解密方法的方法流程图;
图5是本申请再一实施例提供的车载单元的结构框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
请参考图1,图1示出了车载单元的结构示意图,该车载单元中包括V2X应用程序(V2X协议栈)、V2X安全模块、系统安全服务、其他服务、软件加解密库、inHSM服务(嵌入式硬件安全模块服务)、DDR(双倍速率同步动态随机存储器,也即第一存储器)和SOC(System-on-a-Chip,片上系统)。其中,SOC中包括CPU(中央处理器,也即第一处理器)、Mailbox(核间通信设备)和inHSM(嵌入式硬件安全模块),且inHSM中包括RAM(随机存取存储器,也即第二存储器)、DMA(Direct Memory Access,直接存储器访问)和CPU(也即第二处理器)。
在车载单元上电后,首先需要先启动嵌入式硬件安全模块服务,再由应用程序调用嵌入式硬件安全模块服务,由嵌入式硬件安全模块服务来控制嵌入式硬件安全模块进行加密相关操作或解密相关操作。
请参考图2,其示出了本申请一个实施例提供的嵌入式硬件安全模块服务的启动流程,该启动流程包括以下步骤。
步骤201,在嵌入式硬件安全模块服务中加载驱动。
如图3所述,嵌入式硬件安全模块服务中可以包括对外开放的inHSM服务API(Application Programming Interface,应用程序接口),位于中间的inHSM管理模块、inHSM认证模块和inHSM加解密模块,以及位于底层的inHSM驱动。其中,inHSM服务API可以由外部应用程序直接调用。inHSM管理模块用于实现对嵌入式硬件安全模块服务的管理,比如初始化等。inHSM认证模块用于对嵌入式硬件安全模块进行认证,保证inHSM加解密模块能合法的请求加解密相关服务。inHSM驱动为嵌入式硬件安全模块的硬件驱动部分。
在启动嵌入式硬件安全模块服务时,首先需要通过inHSM驱动加载驱动。
步骤202,在驱动加载完成后,检测嵌入式硬件安全模块是否能够正常工作。
在驱动加载完成后,可以由inHSM管理模块实施初始化。
在初始化嵌入式硬件安全模块服务时,需要先检测嵌入式硬件安全模块是否能够正常工作。比如,可以向嵌入式硬件安全模块发送消息,若嵌入式硬件安全模块能够响应该消息,则确定嵌入式硬件安全模块能够正常工作。当然,还可以通过其他检测方式来检测嵌入式硬件安全模块是否能够正常工作,本实施例不对检测方式作限定。
步骤203,若嵌入式硬件安全模块能够正常工作,则对嵌入式硬件安全模块进行认证。
具体的,对嵌入式硬件安全模块进行认证,可以包括:嵌入式硬件安全模块服务根据预定数据生成第一验证信息,将预定数据和第一验证信息发送给嵌入式硬件安全模块;嵌入式硬件安全模块根据预定数据生成第二验证信息,将第二验证信息发送给嵌入式硬件安全模块服务;嵌入式硬件安全模块验证第一验证信息和第二验证信息是否相同,且嵌入式硬件安全模块服务验证第一验证信息和第二验证信息是否相同;若嵌入式硬件安全模块和嵌入式硬件安全模块服务都确定第一验证信息和第二验证信息相同,则确定认证成功。
步骤204,在认证成功后,完成嵌入式硬件安全模块服务的初始化。
在认证成功后,确定完成嵌入式硬件安全模块服务的初始化,此时,嵌入式硬件安全模块服务可以通过inHSM服务API向上层应用程序提供加解密相关服务。
在认证成功后,嵌入式硬件安全模块服务还可以获取嵌入式硬件安全模块发放的临时访问令牌,该临时访问令牌在后续的数据加解密方法中使用,详见下文中的说明,此处不作赘述。
需要说明的是,临时访问令牌在车载单元断电后失效。
请参考图4,其示出了本申请一个实施例提供的数据高速加解密方法的方法流程图,该数据高速加解密方法可以应用于图1所示的车载单元中。该数据高速加解密方法,可以包括:
步骤401,应用程序调用嵌入式硬件安全模块服务,并将生成的待处理数据和操作指令发送给嵌入式硬件安全模块服务,操作指令用于指示对待处理数据进行加密相关操作或解密相关操作。
应用程序可以调用车载单元中操作系统的预定接口,操作系统将待处理数据和操作指令作为参数,调用inHSM服务API,嵌入式硬件安全模块服务获取到待处理数据和操作指令。比如,当需要对待处理数据进行验签操作时,预定接口可以是签名验签接口。其中,验签操作包括解密操作以及比对操作。
其中,根据不同的实现方式,操作指令中可以包括不同的内容,下面对操作指令进行说明。
在第一种实现方式中,当操作指令为加密指令或解密指令时,不仅需要将待处理数据存储在第一存储器中,还需要将加密相关操作或解密相关操作后得到的处理结果存储在第一存储器中,此时,操作指令中包括输入地址和输出地址,输入地址是用于存储待处理数据的地址,输出地址是用于存储加密相关操作或解密相关操作后得到的处理结果的地址。
在第二种实现方式中,当操作指令为用于指示对所述待处理数据进行解密操作和比对操作的验签指令时,只需要将待处理数据存储在第一存储器中,而无需将处理结果存储在第一存储器中,此时,操作指令中包括输入地址,输入地址是用于存储待处理数据的地址。
步骤402,嵌入式硬件安全模块服务将待处理数据和操作指令发送给第一处理器。
由于嵌入式硬件安全模块服务持有临时访问令牌,所以,嵌入式硬件安全模块服务将待处理数据和操作指令发送给第一处理器,可以包括:嵌入式硬件安全模块服务将临时访问令牌添加到操作指令中,并将得到的操作指令和待处理数据发送给第一处理器。
步骤403,第一处理器接收嵌入式硬件安全模块服务发送的待处理数据和操作指令。
步骤404,第一处理器根据操作指令将待处理数据存储到第一存储器中,并通过核间通信设备向第二处理器发送操作指令。
具体的,第一处理器根据操作指令将待处理数据存储到第一存储器中,可以包括:第一处理器将待处理数据存储到第一存储器中的输入地址中。
步骤405,第二处理器根据操作指令,控制DMA将待处理数据从第一存储器中搬运到第二存储器中,对第二存储器中存储的待处理数据进行加密相关操作或解密相关操作。
具体的,第二处理器根据操作指令,控制DMA将待处理数据从第一存储器中搬运到第二存储器中,可以包括:第二处理器对临时访问令牌进行验证,在验证通过后,控制DMA将待处理数据从第一存储器中搬运到第二存储器中。若验证失败,则第二处理器不响应本次的操作指令。
由于第二处理器需要根据密钥对待处理数据进行加密相关操作或解密相关操作,所以,若操作指令中还包括密钥,则对第二存储器中存储的待处理数据进行加密相关操作或解密相关操作,可以包括:第二处理器根据密钥对第二存储器中存储的待处理数据进行加密相关操作或解密相关操作;若操作指令中还包括密钥标识,则对第二存储器中存储的待处理数据进行加密相关操作或解密相关操作,可以包括:第二处理器在预存的密钥表中查找与密钥标识对应的密钥,根据密钥对第二存储器中存储的待处理数据进行加密相关操作或解密相关操作;若操作指令中不包括密钥和密钥标识,则对第二存储器中存储的待处理数据进行加密相关操作或解密相关操作,可以包括:第二处理器从外部获取密钥,根据密钥对第二存储器中存储的待处理数据进行加密相关操作或解密相关操作。
在得到处理结果后,第二处理器可以根据操作指令中是否包括输出地址来确定后续的操作。在第一种实现方式中,若操作指令中包括输出地址,则第二处理器可以将得到的处理结果存储到第二存储器中,控制DMA将处理结果从第二存储器中搬运到第一存储器中的输出地址中。在第二种实现方式中,若操作指令中不包括输出地址,则第二处理器可以获取验签操作后得到的验签结果,通过核间通信设备将验签结果发送给第一处理器。
综上所述,本申请实施例提供的数据高速加解密方法,由于车载单元中包括嵌入式硬件安全模块,所以,第一处理器可以通过核间通信设备向第二处理器发送操作指令,嵌入式硬件安全模块中的第二处理器可以根据操作指令,控制DMA将待处理数据从第一存储器中搬运到第二存储器中,对第二存储器中存储的待处理数据进行加密相关操作或解密相关操作。这样,可以在车载单元中设置嵌入式硬件安全模块,而无需在车载单元外接硬件安全模块,可以降低成本。另外,可以通过核间通信设备和DMA进行数据传输,相比于通过串行外设接口进行数据传输来说,可以提高数据的传输效率,从而可以提高加解密相关服务的效率,降低响应延迟。
由于车载单元中还包括应用程序和嵌入式硬件安全模块服务,且在嵌入式硬件安全模块服务初始化后,可以向应用程序提供数据高速加解密相关服务,使得上层的V2X协议栈等应用程序可以无感知地使用数据高速加解密相关服务。
在嵌入式硬件安全模块服务与嵌入式硬件安全模块认证成功后,嵌入式硬件安全模块可以向嵌入式硬件安全模块服务发放临时访问令牌,这样,嵌入式硬件安全模块可以在接收到操作指令时,对该操作指令中携带的临时访问令牌进行验证,在验证通过后才响应该操作指令,可以提高安全性。
请参考图5,其示出了本申请一个实施例提供的车载单元的结构框图。该车载单元,可以包括:第一处理器510、第一存储器520、核间通信设备530和嵌入式硬件安全模块540,嵌入式硬件安全模块540中包括第二处理器541、DMA542和第二存储器543,
第一处理器510,用于获取待处理数据和操作指令,操作指令用于指示对待处理数据进行加密相关操作或解密相关操作;
第一处理器510,还用于根据操作指令将待处理数据存储到第一存储器520中,并通过核间通信设备530向第二处理器541发送操作指令;
第二处理器541,用于根据操作指令,控制DMA542将待处理数据从第一存储器520中搬运到第二存储器543中,对第二存储器543中存储的待处理数据进行加密相关操作或解密相关操作。
在一个可选的实施例中,操作指令中包括输入地址和输出地址,输入地址是用于存储待处理数据的地址,输出地址是用于存储加密相关操作或解密相关操作后得到的处理结果的地址;
第一处理器510,还用于将待处理数据存储到第一存储器520中的输入地址中;
第二处理器541,还用于将得到的处理结果存储到第二存储器543中;
控制DMA542,还用于将处理结果从第二存储器543中搬运到第一存储器520中的输出地址中。
在一个可选的实施例中,操作指令为用于指示对所述待处理数据进行解密操作和比对操作的验签指令,且操作指令中包括输入地址,输入地址是用于存储待处理数据的地址;
第一处理器510,还用于将待处理数据存储到第一存储器520中的输入地址中;
第二处理器541,还用于获取验签操作后得到的验签结果,通过核间通信设备530将验签结果发送给第一处理器510。
在一个可选的实施例中,若操作指令中还包括密钥,则第二处理器541,还用于根据密钥对第二存储器543中存储的待处理数据进行加密相关操作或解密相关操作;
若操作指令中还包括密钥标识,则第二处理器541,还用于在预存的密钥表中查找与密钥标识对应的密钥,根据密钥对第二存储器543中存储的待处理数据进行加密相关操作或解密相关操作;
若操作指令中不包括密钥和密钥标识,则第二处理器541,还用于从外部获取密钥,根据密钥对第二存储器543中存储的待处理数据进行加密相关操作或解密相关操作。
在一个可选的实施例中,车载单元中还包括应用程序550和嵌入式硬件安全模块服务560;
应用程序550,用于调用嵌入式硬件安全模块服务560,并将生成的待处理数据和操作指令发送给嵌入式硬件安全模块服务560;
嵌入式硬件安全模块服务560,用于将待处理数据和操作指令发送给第一处理器510;
第一处理器510,还用于接收嵌入式硬件安全模块服务发送的待处理数据和操作指令。
在一个可选的实施例中,在应用程序550调用嵌入式硬件安全模块服务之前,嵌入式硬件安全模块服务560,还用于
在嵌入式硬件安全模块服务中加载驱动;
在驱动加载完成后,检测嵌入式硬件安全模块540是否能够正常工作;
若嵌入式硬件安全模块540能够正常工作,则对嵌入式硬件安全模块540进行认证;
在认证成功后,完成嵌入式硬件安全模块服务的初始化。
在一个可选的实施例中,在认证成功后,嵌入式硬件安全模块服务560,还用于获取嵌入式硬件安全模块540发放的临时访问令牌;
嵌入式硬件安全模块服务560,还用于将临时访问令牌添加到操作指令中,并将得到的操作指令和待处理数据发送给第一处理器510;
第二处理器541,还用于对临时访问令牌进行验证,在验证通过后,控制DMA542将待处理数据从第一存储器520中搬运到第二存储器543中。
在一个可选的实施例中,临时访问令牌在车载单元断电后失效。
在一个可选的实施例中,嵌入式硬件安全模块服务560,还用于根据预定数据生成第一验证信息,将预定数据和第一验证信息发送给嵌入式硬件安全模块540;
嵌入式硬件安全模块540,还用于根据预定数据生成第二验证信息,将第二验证信息发送给嵌入式硬件安全模块服务;
嵌入式硬件安全模块540,还用于验证第一验证信息和第二验证信息是否相同,且嵌入式硬件安全模块服务560,还用于验证第一验证信息和第二验证信息是否相同;
若嵌入式硬件安全模块540和嵌入式硬件安全模块服务都确定第一验证信息和第二验证信息相同,则确定认证成功。
综上所述,本申请实施例提供的车载单元,由于车载单元中包括嵌入式硬件安全模块,所以,第一处理器可以通过核间通信设备向第二处理器发送操作指令,嵌入式硬件安全模块中的第二处理器可以根据操作指令,控制DMA将待处理数据从第一存储器中搬运到第二存储器中,对第二存储器中存储的待处理数据进行加密相关操作或解密相关操作。这样,可以在车载单元中设置嵌入式硬件安全模块,而无需在车载单元外接硬件安全模块,可以降低成本。另外,可以通过核间通信设备和DMA进行数据传输,相比于通过串行外设接口进行数据传输来说,可以提高数据的传输效率,从而可以提高加解密相关服务的效率,降低响应延迟。
由于车载单元中还包括应用程序和嵌入式硬件安全模块服务,且在嵌入式硬件安全模块服务初始化后,可以向应用程序提供数据高速加解密相关服务,使得上层的V2X协议栈等应用程序可以无感知地使用数据高速加解密相关服务。
在嵌入式硬件安全模块服务与嵌入式硬件安全模块认证成功后,嵌入式硬件安全模块可以向嵌入式硬件安全模块服务发放临时访问令牌,这样,嵌入式硬件安全模块可以在接收到操作指令时,对该操作指令中携带的临时访问令牌进行验证,在验证通过后才响应该操作指令,可以提高安全性。
需要说明的是:上述实施例提供的车载单元在进行数据高速加解密时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将车载单元的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的车载单元与数据高速加解密方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请实施例的保护范围之内。
Claims (9)
1.一种数据高速加解密方法,其特征在于,用于车载单元中,所述车载单元中包括第一处理器、第一存储器、核间通信设备和嵌入式硬件安全模块,所述嵌入式硬件安全模块中包括第二处理器、直接存储器访问DMA和第二存储器,所述方法包括:
所述第一处理器获取待处理数据和操作指令,所述操作指令用于指示对所述待处理数据进行加密相关操作或解密相关操作;
所述第一处理器根据所述操作指令将所述待处理数据存储到所述第一存储器中,并通过所述核间通信设备向所述第二处理器发送所述操作指令;
所述第二处理器根据所述操作指令,控制所述DMA将所述待处理数据从所述第一存储器中搬运到所述第二存储器中,对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作;
所述车载单元中还包括应用程序和嵌入式硬件安全模块服务;
所述方法还包括:所述应用程序调用所述嵌入式硬件安全模块服务,并将生成的所述待处理数据和所述操作指令发送给所述嵌入式硬件安全模块服务;所述嵌入式硬件安全模块服务将所述待处理数据和所述操作指令发送给所述第一处理器;
所述第一处理器获取待处理数据和操作指令,包括:所述第一处理器接收所述嵌入式硬件安全模块服务发送的所述待处理数据和所述操作指令。
2.根据权利要求1所述的方法,其特征在于,所述操作指令中包括输入地址和输出地址,所述输入地址是用于存储所述待处理数据的地址,所述输出地址是用于存储加密相关操作或解密相关操作后得到的处理结果的地址;
所述第一处理器根据所述操作指令将所述待处理数据存储到所述第一存储器中,包括:所述第一处理器将所述待处理数据存储到所述第一存储器中的所述输入地址中;
所述方法还包括:所述第二处理器将得到的所述处理结果存储到所述第二存储器中,控制所述DMA将所述处理结果从所述第二存储器中搬运到所述第一存储器中的所述输出地址中。
3.根据权利要求1所述的方法,其特征在于,所述操作指令为用于指示对所述待处理数据进行解密操作和比对操作的验签指令,且所述操作指令中包括输入地址,所述输入地址是用于存储所述待处理数据的地址;
所述第一处理器根据所述操作指令将所述待处理数据存储到所述第一存储器中,包括:所述第一处理器将所述待处理数据存储到所述第一存储器中的所述输入地址中;
所述方法还包括:所述第二处理器获取验签操作后得到的验签结果,通过所述核间通信设备将所述验签结果发送给所述第一处理器。
4.根据权利要求1所述的方法,其特征在于,
若所述操作指令中包括密钥,则所述对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作,包括:所述第二处理器根据所述密钥对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作;
若所述操作指令中包括密钥标识,则所述对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作,包括:所述第二处理器在预存的密钥表中查找与所述密钥标识对应的密钥,根据所述密钥对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作;
若所述操作指令中不包括密钥和密钥标识,则所述对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作,包括:所述第二处理器从外部获取密钥,根据所述密钥对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作。
5.根据权利要求1所述的方法,其特征在于,在所述应用程序调用所述嵌入式硬件安全模块服务之前,所述方法还包括:
在所述嵌入式硬件安全模块服务中加载驱动;
在驱动加载完成后,检测所述嵌入式硬件安全模块是否能够正常工作;
若所述嵌入式硬件安全模块能够正常工作,则对所述嵌入式硬件安全模块进行认证;
在认证成功后,完成所述嵌入式硬件安全模块服务的初始化。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在认证成功后,所述嵌入式硬件安全模块服务获取所述嵌入式硬件安全模块发放的临时访问令牌;
所述嵌入式硬件安全模块服务将所述待处理数据和所述操作指令发送给所述第一处理器,包括:所述嵌入式硬件安全模块服务将所述临时访问令牌添加到所述操作指令中,并将得到的操作指令和所述待处理数据发送给所述第一处理器;
所述第二处理器根据所述操作指令,控制所述DMA将所述待处理数据从所述第一存储器中搬运到所述第二存储器中,包括:所述第二处理器对所述临时访问令牌进行验证,在验证通过后,控制所述DMA将所述待处理数据从所述第一存储器中搬运到所述第二存储器中。
7.根据权利要求6所述的方法,其特征在于,所述临时访问令牌在所述车载单元断电后失效。
8.根据权利要求5所述的方法,其特征在于,所述对所述嵌入式硬件安全模块进行认证,包括:
所述嵌入式硬件安全模块服务根据预定数据生成第一验证信息,将所述预定数据和所述第一验证信息发送给所述嵌入式硬件安全模块;
所述嵌入式硬件安全模块根据所述预定数据生成第二验证信息,将所述第二验证信息发送给所述嵌入式硬件安全模块服务;
所述嵌入式硬件安全模块验证所述第一验证信息和所述第二验证信息是否相同,且所述嵌入式硬件安全模块服务验证所述第一验证信息和所述第二验证信息是否相同;
若所述嵌入式硬件安全模块和所述嵌入式硬件安全模块服务都确定所述第一验证信息和所述第二验证信息相同,则确定认证成功。
9.一种车载单元,其特征在于,所述车载单元包括:第一处理器、第一存储器、核间通信设备和嵌入式硬件安全模块,所述嵌入式硬件安全模块中包括第二处理器、直接存储器访问DMA和第二存储器:
所述第一处理器,用于获取待处理数据和操作指令,所述操作指令用于指示对所述待处理数据进行加密相关操作或解密相关操作;
所述第一处理器,还用于根据所述操作指令将所述待处理数据存储到所述第一存储器中,并通过所述核间通信设备向所述第二处理器发送所述操作指令;
所述第二处理器,用于根据所述操作指令,控制所述DMA将所述待处理数据从所述第一存储器中搬运到所述第二存储器中,对所述第二存储器中存储的所述待处理数据进行加密相关操作或解密相关操作;
所述车载单元中还包括应用程序和嵌入式硬件安全模块服务;
所述应用程序,用于调用所述嵌入式硬件安全模块服务,并将生成的所述待处理数据和所述操作指令发送给所述嵌入式硬件安全模块服务;
所述嵌入式硬件安全模块服务,用于将所述待处理数据和所述操作指令发送给所述第一处理器;
所述第一处理器,还用于接收所述嵌入式硬件安全模块服务发送的所述待处理数据和所述操作指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110106980.3A CN112434325B (zh) | 2021-01-27 | 2021-01-27 | 数据高速加解密方法及车载单元 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110106980.3A CN112434325B (zh) | 2021-01-27 | 2021-01-27 | 数据高速加解密方法及车载单元 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112434325A CN112434325A (zh) | 2021-03-02 |
CN112434325B true CN112434325B (zh) | 2021-05-11 |
Family
ID=74697289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110106980.3A Active CN112434325B (zh) | 2021-01-27 | 2021-01-27 | 数据高速加解密方法及车载单元 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112434325B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11704444B2 (en) * | 2021-03-08 | 2023-07-18 | Micron Technology, Inc. | Managing encryption keys per logical block on a persistent memory device |
CN114821868B (zh) * | 2022-06-24 | 2022-09-23 | 宁波均联智行科技股份有限公司 | 一种车门解锁的控制系统及车辆 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201974884U (zh) * | 2010-06-24 | 2011-09-14 | 深圳市证通电子股份有限公司 | 车载系统 |
EP3357761B1 (en) * | 2015-09-30 | 2022-10-05 | Hitachi Astemo, Ltd. | In-vehicle control device |
CN110347633B (zh) * | 2019-07-15 | 2021-08-06 | 北京茵沃汽车科技有限公司 | 基于多核的叠加车辆信号状态图标的方法、装置、介质 |
CN110769393B (zh) * | 2019-11-07 | 2021-12-24 | 公安部交通管理科学研究所 | 一种车路协同的身份认证系统及方法 |
-
2021
- 2021-01-27 CN CN202110106980.3A patent/CN112434325B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112434325A (zh) | 2021-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112434325B (zh) | 数据高速加解密方法及车载单元 | |
CN106354687B (zh) | 一种数据传输方法及系统 | |
CN110570569B (zh) | 虚拟钥匙配置信息的激活方法、移动终端及服务器 | |
EP4206960A1 (en) | Device authentication method and apparatus, electronic device, server and storage medium | |
CN111143031A (zh) | 一种虚拟机的容量更改方法及装置 | |
CN100596219C (zh) | 通信终端及通信终端系统自举的方法及装置 | |
CN113496020B (zh) | 车机用户无感登录方法及其系统、车机、车辆 | |
CN112804222A (zh) | 基于云部署的数据传输方法、装置、设备及存储介质 | |
CN109583182B (zh) | 启动远程桌面的方法、装置、电子设备及计算机存储介质 | |
CN115935321B (zh) | 算法库的访问方法、装置及存储介质 | |
CN107707550B (zh) | 访问虚拟机的方法、装置及系统 | |
CN113935008B (zh) | 用户认证方法、装置、电子设备及计算机可读存储介质 | |
CN111108525A (zh) | 通过不安全通信信道的基于距离的安全通信的系统和方法 | |
CN112565251B (zh) | 车载应用的访问认证方法、装置及系统 | |
CN114785532A (zh) | 一种基于双向签名认证的安全芯片通信方法及装置 | |
CN114547592A (zh) | 一种数据处理方法、装置及电子设备 | |
CN114640991A (zh) | 网络请求的方法及其应用 | |
US10960833B2 (en) | Vehicle control apparatus and method for rewriting program therefor | |
CN114139121A (zh) | 身份验证方法、装置、电子设备及计算机可读存储介质 | |
CN114785531B (zh) | 一种基于服务节点切换的双向认证方法及装置 | |
CN116186709B (zh) | 基于虚拟化VirtIO技术卸载UEFI安全启动的方法、装置及介质 | |
CN116861445B (zh) | 可信执行环境的实现方法、系统级芯片及存储介质 | |
CN112738219B (zh) | 程序运行方法、装置、车辆及存储介质 | |
US20240064029A1 (en) | System for diagnosis of a vehicle and method thereof | |
US20230327869A1 (en) | Authentication method and apparatus |
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 |