CN115914294A - 一种车辆系统的升级方法、装置及设备 - Google Patents
一种车辆系统的升级方法、装置及设备 Download PDFInfo
- Publication number
- CN115914294A CN115914294A CN202211424218.0A CN202211424218A CN115914294A CN 115914294 A CN115914294 A CN 115914294A CN 202211424218 A CN202211424218 A CN 202211424218A CN 115914294 A CN115914294 A CN 115914294A
- Authority
- CN
- China
- Prior art keywords
- key
- authentication
- cloud platform
- response message
- upgrade
- 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
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种车辆系统的升级方法、装置及设备,方法由终端设备执行,包括:接收云平台反馈的认证响应报文,认证响应报文包括第一安全会话标识,认证响应报文为云平台和终端设备互相验证安全后,终端设备接收到的报文;利用预确定的第一密钥和预确定的第二密钥对认证响应报文进行解密,获取第一安全会话标识;基于第一安全会话标识生成响应信息,并将响应信息反馈至云平台,以便云平台基于响应信息获取升级包;接收云平台反馈的升级响应报文,升级响应报文中包括升级包密文;基于第二密钥、第一安全会话标识判断升级包密文的合法性;当确定升级包密文合法时,基于第一密钥对升级包密文进行解密;获取升级包,基于升级包对车辆系统进行升级。
Description
技术领域
本发明涉及汽车升级技术领域,具体涉及一种车辆系统的升级方法、装置及设备。
背景技术
空中下载技术(Over-the-Air Technology,简称OTA技术)是通过网络从远程服务器下载新的软件更新包,对车辆自身系统进行自动升级的技术。传统的汽车升级方式为,汽车厂家启动召回程序,在用户收到召回程序后将汽车返厂进行系统的统一升级。而该技术的出现,避免了传统升级过程中的经济和时间成本,使汽车领域的升级迭代变得高效。
但是,OTA技术也存在一些弊端,即在升级包下载的过程中会面临巨大的安全威胁,如,在车辆终端和远程服务器端可能存在非授权访问、假冒终端节点、恶意攻击等威胁,在传输过程中,可能存在传输数据截获、数据恶意篡改、隐私信息泄露的威胁。因此,在在线升级过程中,如何对升级数据包进行安全防护,是目前需要解决的问题。
发明内容
因此,本发明要解决的技术问题在于克服现有技术中车辆系统在升级过程中存在的威胁,从而提供一种车辆系统的升级方法、装置及设备。
第一方面,本发明提供了一种车辆系统的升级方法,方法由终端设备执行,包括:
接收云平台反馈的认证响应报文,其中,认证响应报文包括第一安全会话标识,认证响应报文为云平台和终端设备互相验证安全后,终端设备接收到的报文;利用预确定的第一密钥和预确定的第二密钥对认证响应报文进行解密,获取第一安全会话标识;基于第一安全会话标识生成响应信息,并将响应信息反馈至云平台,以便云平台基于响应信息获取升级包;接收云平台反馈的升级响应报文,升级响应报文中包括升级包密文;基于第二密钥、第一安全会话标识判断升级包密文的合法性;当确定升级包密文合法时,基于第一密钥对升级包密文进行解密;获取升级包,基于升级包对车辆系统进行升级。
在数据传输过程中,会存在两种不同类型的安全威胁。其一为,交互双端自身存在安全威胁,这种情况下,发出的数据本身是不安全的,且保存在双端的数据可能会被窃取或篡改。其二为,交互双端身份安全,但在数据传输过程中,被第三方截取或恶意攻击或截取。本发明为解决第一个问题,在进行升级数据传输之前,先由终端设备和云平台互相验证对方身份的安全性,通过这样的方式,可以避免由于终端被假冒或者云平台被恶意攻击而造成数据泄露的问题。在确定终端设备和云平台均处于安全状态之后,开始进行数据传输。数据传输过程中,首先,接收云平台反馈的认证响应报文,通过双方协商一致后确定的第一密钥和第二密钥对接收到的认证响应报文进行解密,并从认证响应报文中获取第一安全会话标识。在此过程中,由于第一密钥和第二密钥是双方协商后确认的,所以即使在数据传输过程中被第三方截取,第三方也无法对该认证升级包解密,从而不会造成数据丢失。然后,在终端收到第一安全会话标识后,随即生成响应信息,并将响应信息发送至云平台,以便云平台根据响应信息获取升级包。当接收云平台反馈的升级响应报文,通过第二密钥、第一安全会话标识判断升级包密文的合法性,通过此方式可以判断在传输过程中升级包密文是否被替换或修改,当确定升级密文不合法时,可直接将其丢弃。当验证合法时,说明传输过程安全,升级包并未被篡改,此时,再用经双方协商后的第一密钥对升级包密文进行解密,根据获取到的升级包完成对系统的升级。本发明中,在确认双方身份均安全的前提下,再通过双重加密的方式,避免了传输过程中存在的安全威胁,确保了数据传输过程中的安全性。
结合第一方面,在第一方面的第一实施例中,在接收云平台反馈的认证响应报文之前,验证云平台的安全性,包括:
接收系统升级指令,基于系统升级指令生成第一随机数;当第三密钥存在时,基于系统升级指令从预设存储位置获取设备编码和第三密钥;基于第一随机数和预获取的设备编码生成认证请求报文,将认证请求报文发送至云平台;接收云平台根据认证请求报文反馈的第一认证令牌;基于第一随机数,设备编码、预获取的第三密钥和第一认证令牌验证云平台的安全性。
结合第一方面,在第一方面的第二实施例中,在基于第一随机数,设备编码、预获取的第三密钥和第一认证令牌验证云平台的安全性之后,还包括:
当云平台处于安全状态时,生成第二随机数;从第一认证令牌中获取第三随机数;基于第二随机数,第三随机数,设备编码和第三密钥生成第二认证令牌,并将第二认证令牌发送至云平台,以便云平台基于第二认证令牌验证终端设备的安全性。
结合第一方面,在第一方面的第三实施例中,在接收系统升级指令之后,还包括:
当第三密钥不存在时,生成第四随机数;从预设存储位置获取设备编码、处理器编码、数据传输公钥、数据传输私钥、设备鉴证私钥和设备初始公钥;基于第四随机数、设备编码、处理器编码、数据传输公钥以及设备鉴证私钥生成注册请求报文,并将注册请求报文发送至云平台;当注册成功时,接收云平台反馈的注册响应报文,注册响应报文中包括第三密钥;利用设备初始公钥和数据传输私钥对注册响应报文进行解密,获取第三密钥。
结合第一方面,在第一方面的第四实施例中,基于第二密钥、第一安全会话标识判断升级包密文的合法性,包括:
利用第二密钥对升级响应报文进行解密,获取升级包密文,第一消息认证码,第二安全会话标识;当第一安全会话标识和第二安全会话标识一致时,基于第一会话标识和升级包密文确定第二消息认证码;将第一消息认证码和第二消息认证码进行比对,当第一消息认证码和第二消息认证码一致时,确定升级包密文合法。
本实施例中,终端设备会基于预先存储的第一安全会话标识和升级包密文得到第二消息认证码,通过第一消息认证码和第二消息认证码的一致性判断升级包密文是否在传输过程中被篡改或替换过,由此,保证传输过程的安全性。
第二方面,本发明提供了一种车辆系统的升级方法,方法由云平台执行,包括:
生成认证响应报文,并将认证响应报文发送至终端设备,认证响应报文包括安全会话标识,认证响应报文是在云平台和终端设备互相验证安全后生成;接收终端设备基于安全会话标识反馈的响应信息;基于响应信息获取升级包;基于升级包,安全会话标识,预确定的第一密钥和预确定的第二密钥生成升级响应报文,并将升级响应报文发送至终端设备。
结合第二方面,在第二方面的第一实施例中,在生成认证响应报文之前,验证终端设备的安全性,包括:
接收终端设备反馈的认证请求报文,认证请求报文中包括第一随机数和设备编码;基于设备编码判断终端设备的合法性;当终端设备合法时,生成第二随机数,并从数据库中获取与设备编码对应的第三密钥;基于第一随机数、第二随机数、设备编码和第三密钥生成第一认证令牌,并将第一认证令牌发送至终端设备,以便终端设备基于第一认证令牌验证云平台的安全性;接收终端设备反馈的第二认证令牌,第二认证令牌是终端设备验证云平台安全后,生成的令牌;基于第二随机数、设备编码、第三密钥和第二认证令牌验证终端设备的安全性。
第三方面,本发明提供了一种车辆系统的升级装置,装置应用于终端设备,包括:
第一接收模块,用于接收云平台反馈的认证响应报文,其中,认证响应报文包括第一安全会话标识,认证响应报文为云平台和终端设备互相验证安全后,终端设备接收到的报文;第一解密模块,用于利用预确定的第一密钥和预确定的第二密钥对认证响应报文进行解密,获取第一安全会话标识;生成模块,用于基于第一安全会话标识生成响应信息,并将响应信息反馈至云平台,以便云平台基于响应信息获取升级包;第二接收模块,用于接收云平台反馈的升级响应报文,升级响应报文中包括升级包密文;判断模块,用于基于第二密钥、第一安全会话标识判断升级包密文的合法性;第二解密模块,用于当确定升级包密文合法时,基于第一密钥对升级包密文进行解密;升级模块,用于获取升级包,基于升级包对车辆系统进行升级。
第四方面,本发明提供了一种车辆系统的升级装置,装置应用于云平台,包括:
第一生成模块,用于生成认证响应报文,并将认证响应报文发送至终端设备,认证响应报文包括安全会话标识,认证响应报文是在云平台和终端设备互相验证安全后生成;接收模块,用于接收终端设备基于安全会话标识反馈的响应信息;获取模块,用于基于响应信息获取升级包;第二生成模块,用于基于升级包,安全会话标识,预确定的第一密钥和预确定的第二密钥生成升级响应报文,并将升级响应报文发送至终端设备。
第五方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器用于存储计算机程序,计算机程序被终端设备的处理器执行时,使处理器执行如发明内容中由终端设备执行的任一项的车辆系统的升级方法,或者,计算机程序被云平台的处理器执行时,使处理器执行如发明内容中由云平台执行任一项的车辆系统的升级方法。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中提供的终端设备执行的车辆系统升级方法的流程图;
图2为本发明实施例提供的判断升级包密文的合法性的流程图;
图3为本发明实施例中提供的云平台执行的车辆系统升级方法的流程图;
图4为本发明实施例中提供的终端设备验证云平台安全性的流程图;
图5为本发明实施例中提供的云平台处于安全状态后终端设备执行的具体流程图;
图6为本发明实施例中提供的云平台验证终端设备安全性的流程图;
图7为本发明实施例中提供的认证和数据传输的双端交互的信令流程图;
图8为本发明实施例中提供的终端设备执行的注册流程图;
图9为本发明实施例中提供的云平台执行的注册流程图;
图10为本发明实施例中提供的终端注册时的双端交互的信令流程图;
图11为本发明实施例中提供的应用于终端设备的车辆系统升级装置连接图;
图12为本发明实施例中提供的应用于终端设备的车辆系统升级装置连接图;
图13为本发明实施例提供的计算机设备连接图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明公开了一种车辆系统的升级方法,该方法由终端设备执行,如图1所示,具体包括如下步骤:
步骤S11:接收云平台反馈的认证响应报文。
具体的,认证响应报文为云平台和终端设备互相验证对方身份安全后,由云平台产生,并发送到终端设备的报文。认证响应报文中包括第一安全会话标识,第一安全会话标识可以用数串或者字符串等形式体现,用于在获取到升级响应包后验证升级包密文的合法性。
步骤S12:利用预确定的第一密钥和预确定的第二密钥对认证响应报文进行解密,获取第一安全会话标识。
具体的,可根据第一密钥和第二密钥给认证响应报文加密的顺序,进行与之对应的顺序进行解密。第一认证密钥和第二认证密钥可以是终端设备和云平台经过协商后确定的密钥。可在双方协商的基础上,由双方各自生成。
步骤S13:基于第一安全会话标识生成响应信息,并将响应信息反馈至云平台,以便云平台基于响应信息获取升级包。
具体的,终端设备在获取到第一安全会话标识后,立即生成响应信息,并将响应信息发送至云平台。该响应信息仅用以指示目标终端已收到第一安全会话标识,以便于云平台基于响应信息获取升级包。
步骤S14:接收云平台反馈的升级响应报文,升级响应报文中包括升级包密文。
具体的,升级响应包中至少还包括安全会话标识、消息认证码等。
步骤S15:基于第二密钥、第一安全会话标识判断升级包密文的合法性。
具体的,判断升级包密文的合法性,具体包括如图2所示的执行步骤:
步骤S21:利用第二密钥对升级响应报文进行解密,获取升级包密文,第一消息认证码,第二安全会话标识。
升级响应报文中包括升级包密文,第一消息认证码,第二安全会话标识,其中,第一消息认证码是对升级包密文和第二安全会话标识进行哈希计算得到的。当升级包密文和第二安全会话标识中,当其中任一项发生变化时,生成的结果会与第一消息认证码不同。
步骤S22:当第一安全会话标识和第二安全会话标识一致时,基于第一会话标识和升级包密文确定第二消息认证码;
通过验证第一安全会话标识和第二安全会话标识一致性,可以判断传输过程中,是否存在第二安全会话标识被篡改的情况。当二者不一致时,表示传输过程不安全,则丢弃升级响应报文。当二者一致时,基于第一安全会话标识和获取的升级包密文进行哈希计算,生成第二消息认证码。
步骤S23:将第一消息认证码和第二消息认证码进行比对,当第一消息认证码和第二消息认证码一致时,确定升级包密文合法。
当第一消息认证码和第二消息认证码不一致时,表示升级包密文不合法,即存在被篡改的风险,则丢弃该升级包密文。当第一消息认证码和第二消息认证码一致时,确定升级包密文合法。
步骤S16:当确定升级包密文合法时,基于第一密钥对升级包密文进行解密。
具体的,利用第一密钥对升级包密文解密后,即可得到升级包明文。
步骤S17:获取升级包,基于升级包对车辆系统进行升级。
具体的,获取到升级包后,系统基于升级包完成对车辆系统的升级。至此,整个升级包的传输过程结束。
本发明公开了一种车辆系统的升级方法,方法由云平台执行,如图3所示,包括:
步骤S31:生成认证响应报文,并将认证响应报文发送至终端设备。
具体的,在云平台和终端设备互相验证安全后,云平台生成安全会话标识,并利用和终端设备协商好的第一密钥和第二密钥对安全会话标识进行加密,生成认证响应报文,并将认证响应报文发送至终端设备。
步骤S32:接收终端设备基于安全会话标识反馈的响应信息。
具体的,当云平台接收到终端设备基于安全会话标识反馈的响应信息后,得知终端设备已经接收到安全会话标识,此时,即可开始升级数据的传输过程。
步骤S33:基于响应信息获取升级包。
具体的,在接收到终端反馈的响应信息后,从数据库中下载升级包,获取升级包明文。
步骤S34:基于升级包,安全会话标识,预确定的第一密钥和预确定的第二密钥生成升级响应报文,并将升级响应报文发送至终端设备。
具体的,获取到升级包后,先利用双方协商好的第一密钥先对升级包进行加密,得到升级包密文;再对升级包密文和终端设备的安全会话标识做哈希计算,得到消息认证码;最后,利用第二密钥对升级包密文,安全会话标识,以及消息认证码进行加密,生成升级响应包,并将升级相应包发送至终端设备。以便终端设备基于升级相应包获取到升级包,完成对系统的升级任务。
在数据传输过程中,会存在两种不同类型的安全威胁。其一为,交互双端自身存在安全威胁,这种情况下,发出的数据本身是不安全的,且保存在双端的数据可能会被窃取或篡改。其二为,交互双端身份安全,但在数据传输过程中,被第三方截取或恶意攻击或截取。本发明为解决第一个问题,在进行升级数据传输之前,先由终端设备和云平台互相验证对方身份的安全性,通过这样的方式,可以避免由于终端被假冒或者云平台被恶意攻击而造成数据泄露的问题。在确定终端设备和云平台均处于安全状态之后,开始进行数据传输。数据传输过程中,首先,接收云平台反馈的认证响应报文,通过双方协商一致后确定的第一密钥和第二密钥对接收到的认证响应报文进行解密,并从认证响应报文中获取第一安全会话标识。在此过程中,由于第一密钥和第二密钥是双方协商后确认的,所以即使在数据传输过程中被第三方截取,第三方也无法对该认证升级包解密,从而不会造成数据丢失。然后,在终端收到第一安全会话标识后,随即生成响应信息,并将响应信息发送至云平台,以便云平台根据响应信息获取升级包。当接收云平台反馈的升级响应报文,通过第二密钥、第一安全会话标识判断升级包密文的合法性,通过此方式可以判断在传输过程中升级包密文是否被替换或修改,当确定升级密文不合法时,可直接将其丢弃。当验证合法时,说明传输过程安全,升级包并未被篡改,此时,再用经双方协商后的第一密钥对升级包密文进行解密,根据获取到的升级包完成对系统的升级。本发明中,在确认双方身份均安全的前提下,再通过双重加密的方式,避免了传输过程中存在的安全威胁,确保了数据传输过程中的安全性。
在一可选实施例中,在接收云平台反馈的认证响应报文之前,还需要验证云平台的安全性,该步骤由终端设备执行,具体验证流程如图4所示,包括:
步骤S41:接收系统升级指令,基于系统升级指令生成第一随机数。
具体的,系统升级指令可以是基于外界的触发生成的指令。如,用户在终端设备的显示页面点击“系统升级”后,终端设备就会接收到由于该触发产生的系统升级指令,并在接收到系统升级指令之后,生成第一随机数。该随机数是系统随机产生的具有一定长度的字符串或数串,如16位的字符串等。
步骤S42:当第三密钥存在时,基于系统升级指令从预设存储位置获取设备编码和第三密钥。
具体的,在终端设备生成第一随机数后,会从预设的存储位置获取设备编码和第三密钥。其中,设备编码为终端设备在制造完成时,制造商为该终端设备分配的可用于唯一指示该终端设备的编码。第三密钥是在终端设备注册完成时,由云平台产生的与终端设备唯一对应的密钥。因此,终端设备的预设存储位置中是否存在第三密钥是该终端设备是否完成注册的标志。当第三密钥不存在时,表示该终端设备并没有进行注册,因此,可认为该终端设备是不合法的,不能够进行数据传输。当第三密钥存在时,从预设存储位置获取终端设备的设备编码和第三密钥。其中,预设存储位置可以是终端设备中用于存储信息任一位置。
步骤S43:基于第一随机数和预获取的设备编码生成认证请求报文,将认证请求报文发送至云平台。
具体的,在终端设备生成认证请求报文后,将认证请求报文发送至云平台,该步骤是整个认证环节的起始步骤。
步骤S44:接收云平台根据认证请求报文反馈的第一认证令牌。
步骤S45:基于第一随机数,设备编码、预获取的第三密钥和第一认证令牌验证云平台的安全性。
具体的,基于第一随机数、设备编码和第三密钥生成第一认证密钥,利用第一认证密钥对第一认证令牌解密,当解密失败时,表示云平台处于不安全状态,存在内部存储的信息被泄露的威胁,则可丢弃第一认证令牌,同时生成认证失败的消息,并将该消息发送至云平台。当解密成功时,获取第一认证令牌中携带的第一校验码。其中,第一校验码是云平台根据终端设备发送的认证请求报文中的第一随机数产生的。
在对第一认证令牌解密,得到第一校验码后,将第一校验码和第一随机数进行对比,当第一校验码和第一随机数一致时,表示云平台处于安全状态。当第一校验码和第一随机数不一致时,表示传输过程中数据被篡改,则丢弃第一认证令牌。同时生成认证失败的消息,并将该消息发送至云平台。
在一可选实施例中,终端设备在基于第一随机数,设备编码、预获取的第三密钥和第一认证令牌验证云平台的安全性之后,还需要执行如图5所示的步骤:
步骤S51:当云平台处于安全状态时,生成第二随机数。
具体的,当根据第一认证令牌验证云平台处于安全状态后,立即生成第二随机数,第二随机数是不同于第一随机数的字符串或者数串。
步骤S52:从第一认证令牌中获取第三随机数。
第一认证令牌是用第一认证密钥加密后的令牌,第一认证令牌中携带的数据还包括第三随机数。第三随机数是云平台在验证终端设备合法后生成的一个随机数。云平台在收到第一认证令牌后,需要先验证终端设备的合法性,在终端设备合法的前提下,才可验证终端设备的安全性。
步骤S53:基于第二随机数,第三随机数,设备编码和第三密钥生成第二认证令牌,并将第二认证令牌发送至云平台,以便云平台基于第二认证令牌验证终端设备的安全性。
具体的,将第二随机数和第三随机数打包,利用密钥派生算法对第三随机数、设备编码和第三密钥进行计算,生成第二认证密钥;利用第二认证密钥对打包后的数据进行加密,生成加密后的数据包,利用对称密码算法对加密后的数据包进行计算,生成第二认证令牌,并将第二认证令牌发送至云平台,以便云平台基于第二认证令牌验证终端设备的安全性。
在将第二认证令牌发送至云平台后,终端设备利用密钥派生算法,对第二随机数、第三随机数和第三密钥进行计算,生成机密性密钥和完整性密钥,其中,机密性密钥和完整性密钥均是第二随机数、第三随机数和第三密钥生成,其区别在于利用密钥派生算法计算时选取的初始向量不同,所以生成的机密性和完整性密钥存在区别。机密性密钥即第一密钥,完整性密钥即第二密钥。第一密钥和第二密钥即为双方协商好的密钥,主要用于验证双方安全性以及保护数据传输过程中的安全性。
在一可选实施例中,云平台在生成认证响应报文之前,还需验证终端设备的安全性,云平台执行的验证步骤如图6所示,包括:
步骤S61:接收终端设备反馈的认证请求报文。
具体的,认证请求报文中包括第一随机数和设备编码。
步骤S62:基于设备编码判断终端设备的合法性。
具体的,当从认证请求报文中读取到设备编码后,再数据库中保存的终端信息表中查找是否存在该设备编码的绑定关系。其中,终端信息表用于存储终端设备的设备编码和处理器编码的绑定关系,查找绑定关系时,可以设备编码或处理器编码为索引进行查找。当不存在时,表示该终端设备不合法,则认证失败的信息,并将认证失败的信息反馈至终端设备。
当存在绑定关系时,基于该设备编码查找与之对应的终端注册表,从终端注册表中获取该终端设备对应的设备密钥的状态。当设备密钥为销毁时,表示该终端设备不合法,则认证失败的信息,并将认证失败的信息反馈至终端设备;当设备密钥为激活时,表示该终端设备合法,则继续执行认证过程。其中,终端注册表用于存储已经完成的终端设备的一些设备信息,如设备编码,处理器编码,设备密钥,设备密钥状态等信息。
步骤S63:当终端设备合法时,生成第二随机数,并从数据库中获取与设备编码对应的第三密钥。
具体的,第三密钥即为步骤S52中提及到的设备密钥。设备密钥是终端设备在注册完成时,由云平台产生的与终端设备唯一对应的密钥,并在生成后,存储于该终端设备的终端注册表中。
步骤S64:基于第一随机数、第二随机数、设备编码和第三密钥生成第一认证令牌,并将第一认证令牌发送至终端设备,以便终端设备基于第一认证令牌验证云平台的安全性。
具体的,将第一随机数和第二随机数打包,同时,利用密钥派生算法,对第一随机数、设备编码和第三密钥进行计算,生成第一认证密钥,利用第一认证密钥对打包后的第一随机数和第二随机数进行加密,生成加密包,使用对称密码算法对加密包进行计算,生成第一认证令牌,并将第一认证令牌发送至终端设备,以便终端设备基于第一认证令牌验证云平台的安全性。
步骤S65:接收终端设备反馈的第二认证令牌。
具体的,第二认证令牌是终端设备验证云平台安全后,生成的令牌。
步骤S66:基于第二随机数、设备编码、第三密钥和第二认证令牌验证终端设备的安全性。
具体的,利用密钥派生算法,基于第二随机数、设备编码和第三密钥生成第二认证密钥,利用第二认证密钥对第二认证令牌进行解密,当解密失败时,表示终端设备处于不安全状态,存在内部存储的信息被泄露的威胁,则可丢弃第二认证令牌,同时,生成认证失败的消息,并将该消息发送至终端设备。当解密成功时,获取第二认证令牌中携带的第二校验码,其中,第二校验码是终端设备根据云平台发送的第一认证令牌中的第二随机数产生的。
在得到第二校验码后,将第二校验码和第二随机数进行对比,当二者不一致时,表示传输过程中数据被篡改,则丢弃第二认证令牌,同时,生成认证失败的消息,并将该消息发送至终端设备。当二者一致时,表示终端设备处于安全状态。
至此,终端设备和云平台相互验证安全性的过程结束,图4和图5为认证过程中终端设备执行的具体步骤,图6为认证过程中云平台执行的具体步骤,图7为具体认证和数据传输过程中双方的交互实例图。
在一可选实施例中,如果在接收系统升级指令之后,在预设存储位置中不存在第三密钥时,表示当前终端设备还未进行注册,所以需要先对终端设备进行注册,注册成功后才能进行认证和数据传输。具体注册流程中,终端设备执行的具体步骤如图8所示,包括:
步骤S81:在接收系统升级指令之后,当第三密钥不存在时,生成第四随机数。
具体的,在接收系统升级指令之后,会从预设存储位置获取预存储的第三密钥,当第三密钥不存在时,生成第四随机数。
步骤S82:从预设存储位置获取设备编码、处理器编码、数据传输公钥、数据传输私钥、设备鉴证私钥和设备初始公钥。
具体的,在制造商制造终端设备时,会给制造好的终端设备分配一个唯一的设备编码,同时,给该终端设备中的处理器分配一个唯一的处理器编码,设备编码和处理器编码分别用以表征终端设备和处理器的唯一性。
设备初始公钥和设备初始私钥用于建立制造商和云平台之间的安全关系,是云平台在制造商注册时生成,并将设备初始公钥下发给制造商,将设备初始私钥保存在云平台,当制造商制造好一个终端设备时,就会将设备初始公钥添加到终端设备的设备信息中。
设备鉴证公钥和设备鉴证私钥用于建立某批次的制造商设备与云平台之间的信任关系,由制造商在生产某批次处理器时产生,作为某批次处理器的设备鉴证密钥,并将设备鉴证公钥和设备鉴证私钥存储至终端设备的预设位置。
数据传输公钥和数据传输私钥用于保护数据传输过程中的安全性,由终端处理器产生,仅在终端注册和密钥更新时起作用,并将数据传输公钥和数据传输私钥存储至终端设备的预设位置。
上文中所述的预设位置可以是某个存储器,或者是终端设备的数据库等可用于存储数据的任一位置。
步骤S83:基于第四随机数、设备编码、处理器编码、数据传输公钥以及设备鉴证私钥生成注册请求报文,并将注册请求报文发送至云平台。
具体的,利用设备鉴证私钥对数据传输公钥进行加密,生成数据传输公钥签名,将第四随机数、设备编码、处理器编码、数据传输公钥以及数据传输公钥签名打包,生成注册请求报文,并将注册请求报文发送至云平台。
步骤S84:当注册成功时,接收云平台反馈的注册响应报文,注册响应报文中包括第三密钥。
步骤S85:利用设备初始公钥和数据传输私钥对注册响应报文进行解密,获取第三密钥。
具体的,先利用设备初始公钥对注册响应报文进行解密,得到第三密钥的密文,利用数据传输私钥对第三密钥的密文进行解密,获取第三密钥,并将所述第三密钥保存至终端设备的预设存储位置。
在一可选实施例中,云平台执行的注册流程如图9所示,包括:
步骤S91:接收终端设备反馈的注册请求报文,基于注册请求报文确定传输过程的安全性。
获取注册请求报文中的设备编码,基于设备编码获取设备鉴证公钥,利用设备鉴证公钥对数据传输公钥签名解密,得到解密后的数据传输公钥,将解密后的数据传输公钥与注册请求报文中的数据传输公钥进行比对,当二者一致时,表示传输过程安全。当二者不一致时,则丢弃该注册请求报文,并生成注册失败信息,将注册失败信息反馈至终端设备。
步骤S92:当传输过程安全时,基于注册请求报文判断终端设备是否已完成注册。
根据注册请求报文中的设备编码和处理器编码,从数据库中查找是否存在设备编码和处理器编码的绑定关系,当不存在该绑定关系时,表示终端设备在此之前并没有完成注册,则执行步骤S53。
当存在绑定关系时,从数据库中获取该设备编码对应的注册信息,从注册信息中读取注册随机数,将注册随机数与注册请求报文中的第四随机数进行比对,当注册随机数与第四随机数一致时,丢弃该条注册请求报文,并生成注册失败信息,将注册失败信息反馈至终端设备。当注册随机数与第四随机数不一致时,从注册信息中读取第三密钥的状态,当第三密钥的状态为销毁时,则生成注册失败信息,将注册失败信息反馈至终端设备。第三密钥的状态为激活时,则生成已完成注册的信息,并将该信息反馈至终端设备。
步骤S93:当终端设备未完成注册时,则生成第三密钥,基于第三密钥和注册请求报文创建终端设备的注册信息。
在生成第三密钥后,基于设备编码、处理器编码、第四随机数以及生成的第三密钥写入终端设备的注册信息中,并将注册信息写入云平台的数据库中。
步骤S94:基于第三密钥、设备初始公钥和数据传输私钥生成注册响应报文,并将注册响应报文发送至终端设备。
利用数据传输私钥对第三密钥进行加密,生成第三密钥的密文,再利用设备初始公钥对第三密钥的密文进行加密,生成注册响应报文,并将注册响应报文发送至终端设备。由于数据传输私钥是终端和云平台之间约定的密钥,因此,传输过程中,即使有第三方恶意截取注册响应报文,也无法对注册响应报文进行解密。从而保证传输过程中的安全性。
至此,注册流程结束,图8和图9分别为注册过程中终端设备和云平台执行的具体步骤,图10为注册过程中双方的交互的实例图。
本发明公开了一种车辆系统的升级装置,装置应用于终端设备,如图11所示,包括:
第一接收模块111,用于接收云平台反馈的认证响应报文,其中,认证响应报文包括第一安全会话标识,认证响应报文为云平台和终端设备互相验证安全后,终端设备接收到的报文。
第一解密模块112,用于利用预确定的第一密钥和预确定的第二密钥对认证响应报文进行解密,获取第一安全会话标识。
生成模块113,用于基于第一安全会话标识生成响应信息,并将响应信息反馈至云平台,以便云平台基于响应信息获取升级包。
第二接收模块114,用于接收云平台反馈的升级响应报文,升级响应报文中包括升级包密文。
判断模块115,用于基于第二密钥、第一安全会话标识判断升级包密文的合法性。
第二解密模块116,用于当确定升级包密文合法时,基于第一密钥对升级包密文进行解密。
升级模块117,用于获取升级包,基于升级包对车辆系统进行升级。
本发明公开了一种车辆系统的升级装置,装置应用于云平台,如图12所示,包括:
第一生成模块121,用于生成认证响应报文,并将认证响应报文发送至终端设备,认证响应报文包括安全会话标识,认证响应报文是在云平台和终端设备互相验证安全后生成。
接收模块122,用于接收终端设备基于安全会话标识反馈的响应信息。
获取模块123,用于基于响应信息获取升级包。
第二生成模块124,用于基于升级包,安全会话标识,预确定的第一密钥和预确定的第二密钥生成升级响应报文,并将升级响应报文发送至终端设备。
本实施例提供一种计算机设备,如图13所示,该计算机设备应用于应用系统,可以包括至少一个处理器131、至少一个通信接口132、至少一个通信总线133和至少一个存储器134,其中,通信接口132可以包括显示屏(Display)、键盘(Keyboard),可选通信接口132还可以包括标准的有线接口、无线接口。存储器134可以是高速RAM存储器(Random AccessMemory,易挥发性随机存取存储器),也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器134可选的还可以是至少一个位于远离前述处理器131的存储装置。其中处理器131可以结合图13所描述的装置,存储器134中存储应用程序,且处理器131调用存储器134中存储的程序代码,以用于执行上述终端设备或云平台端任一方法实施例的车辆系统的升级方法的步骤。
其中,通信总线133可以是外设部件互连标准(peripheral componentinterconnect,简称PCI)总线或扩展工业标准结构(extended industry standardarchitecture,简称EISA)总线等。通信总线133可以分为地址总线、数据总线、控制总线等。为便于表示,图13中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器134可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(英文:hard diskdrive,缩写:HDD)或固态硬盘(英文:sol标识-state drive,缩写:SSD);存储器134还可以包括上述种类的存储器的组合。
其中,处理器131可以是中央处理器(英文:central processing unit,缩写:CPU),网络处理器(英文:network processor,缩写:NP)或者CPU和NP的组合。
其中,处理器131还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),可编程逻辑器件(英文:programmable logic device,缩写:PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(英文:complex programmable logic device,缩写:CPLD),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),通用阵列逻辑(英文:generic arraylogic,缩写:GAL)或其任意组合。可选地,存储器134还用于存储程序指令。处理器131可以调用程序指令,实现本发明终端设备或云平台端任一实施例中的车辆系统的升级方法。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (10)
1.一种车辆系统的升级方法,其特征在于,所述方法由终端设备执行,包括:
接收云平台反馈的认证响应报文,其中,所述认证响应报文包括第一安全会话标识,所述认证响应报文为所述云平台和所述终端设备互相验证安全后,所述终端设备接收到的报文;
利用预确定的第一密钥和预确定的第二密钥对所述认证响应报文进行解密,获取第一安全会话标识;
基于所述第一安全会话标识生成响应信息,并将所述响应信息反馈至所述云平台,以便所述云平台基于所述响应信息获取升级包;
接收所述云平台反馈的升级响应报文,所述升级响应报文中包括升级包密文;
基于所述第二密钥、所述第一安全会话标识判断所述升级包密文的合法性;
当确定所述升级包密文合法时,基于所述第一密钥对所述升级包密文进行解密;
获取升级包,基于所述升级包对所述车辆系统进行升级。
2.根据权利要求1所述的车辆系统的升级方法,其特征在于,在所述接收云平台反馈的认证响应报文之前,验证所述云平台的安全性,包括:
接收系统升级指令,基于所述系统升级指令生成第一随机数;
当第三密钥存在时,基于所述系统升级指令从预设存储位置获取设备编码和第三密钥;
基于所述第一随机数和预获取的所述设备编码生成认证请求报文,将所述认证请求报文发送至云平台;
接收所述云平台根据所述认证请求报文反馈的第一认证令牌;
基于所述第一随机数,所述设备编码、预获取的所述第三密钥和所述第一认证令牌验证所述云平台的安全性。
3.根据权利要求2所述的车辆系统的升级方法,其特征在于,在所述基于所述第一随机数,所述设备编码、预获取的第三密钥和所述第一认证令牌验证所述云平台的安全性之后,还包括:
当所述云平台处于安全状态时,生成第二随机数;
从所述第一认证令牌中获取第三随机数;
基于所述第二随机数,所述第三随机数,所述设备编码和所述第三密钥生成第二认证令牌,并将所述第二认证令牌发送至所述云平台,以便所述云平台基于所述第二认证令牌验证所述终端设备的安全性。
4.根据权利要求2所述的车辆系统的升级方法,其特征在于,在所述接收系统升级指令之后,还包括:
当所述第三密钥不存在时,生成第四随机数;
从预设存储位置获取所述设备编码、处理器编码、数据传输公钥、数据传输私钥、设备鉴证私钥和设备初始公钥;
基于所述第四随机数、所述设备编码、所述处理器编码、所述数据传输公钥以及所述设备鉴证私钥生成注册请求报文,并将所述注册请求报文发送至所述云平台;
当注册成功时,接收所述云平台反馈的注册响应报文,所述注册响应报文中包括所述第三密钥;
利用所述设备初始公钥和所述数据传输私钥对所述注册响应报文进行解密,获取所述第三密钥。
5.根据权利要求1-4中任一项所述的车辆系统的升级方法,其特征在于,所述基于所述第二密钥、所述第一安全会话标识判断所述升级包密文的合法性,包括:
利用所述第二密钥对所述升级响应报文进行解密,获取升级包密文,第一消息认证码,第二安全会话标识;
当所述第一安全会话标识和所述第二安全会话标识一致时,基于第一会话标识和所述升级包密文确定第二消息认证码;
将所述第一消息认证码和所述第二消息认证码进行比对,当所述第一消息认证码和所述第二消息认证码一致时,确定所述升级包密文合法。
6.一种车辆系统的升级方法,其特征在于,所述方法由云平台执行,包括:
生成认证响应报文,并将所述认证响应报文发送至终端设备,所述认证响应报文包括安全会话标识,所述认证响应报文是在所述云平台和所述终端设备互相验证安全后生成;
接收终端设备基于所述安全会话标识反馈的响应信息;
基于所述响应信息获取升级包;
基于所述升级包,所述安全会话标识,预确定的第一密钥和预确定的第二密钥生成升级响应报文,并将所述升级响应报文发送至所述终端设备。
7.根据权利要求6所述的车辆系统的升级方法,其特征在于,在所述生成认证响应报文之前,验证所述终端设备的安全性,包括:
接收所述终端设备反馈的认证请求报文,所述认证请求报文中包括第一随机数和设备编码;
基于所述设备编码判断所述终端设备的合法性;
当所述终端设备合法时,生成第二随机数,并从数据库中获取与所述设备编码对应的第三密钥;
基于所述第一随机数、所述第二随机数、所述设备编码和所述第三密钥生成第一认证令牌,并将所述第一认证令牌发送至所述终端设备,以便所述终端设备基于所述第一认证令牌验证所述云平台的安全性;
接收所述终端设备反馈的所述第二认证令牌,所述第二认证令牌是所述终端设备验证所述云平台安全后,生成的令牌;
基于第二随机数、所述设备编码、所述第三密钥和所述第二认证令牌验证所述终端设备的安全性。
8.一种车辆系统的升级装置,其特征在于,所述装置应用于终端设备,包括:
第一接收模块,用于接收云平台反馈的认证响应报文,其中,所述认证响应报文包括第一安全会话标识,所述认证响应报文为所述云平台和所述终端设备互相验证安全后,所述终端设备接收到的报文;
第一解密模块,用于利用预确定的第一密钥和预确定的第二密钥对所述认证响应报文进行解密,获取第一安全会话标识;
生成模块,用于基于所述第一安全会话标识生成响应信息,并将所述响应信息反馈至所述云平台,以便所述云平台基于所述响应信息获取升级包;
第二接收模块,用于接收所述云平台反馈的升级响应报文,所述升级响应报文中包括升级包密文;
判断模块,用于基于所述第二密钥、所述第一安全会话标识判断所述升级包密文的合法性;
第二解密模块,用于当确定所述升级包密文合法时,基于所述第一密钥对所述升级包密文进行解密;
升级模块,用于获取升级包,基于所述升级包对所述车辆系统进行升级。
9.一种车辆系统的升级装置,其特征在于,所述装置应用于云平台,包括:
第一生成模块,用于生成认证响应报文,并将所述认证响应报文发送至终端设备,所述认证响应报文包括安全会话标识,所述认证响应报文是在所述云平台和所述终端设备互相验证安全后生成;
接收模块,用于接收终端设备基于所述安全会话标识反馈的响应信息;
获取模块,用于基于所述响应信息获取升级包;
第二生成模块,用于基于所述升级包,所述安全会话标识,预确定的第一密钥和预确定的第二密钥生成升级响应报文,并将所述升级响应报文发送至所述终端设备。
10.一种计算机设备,其特征在于,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器用于存储计算机程序,所述计算机程序被所述终端设备的处理器执行时,使所述处理器执行如权利要求1-5中任一项所述的车辆系统的升级方法,或者,所述计算机程序被所述云平台的处理器执行时,使所述处理器执行如权利要求6-7中任一项所述的车辆系统的升级方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211424218.0A CN115914294A (zh) | 2022-11-15 | 2022-11-15 | 一种车辆系统的升级方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211424218.0A CN115914294A (zh) | 2022-11-15 | 2022-11-15 | 一种车辆系统的升级方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115914294A true CN115914294A (zh) | 2023-04-04 |
Family
ID=86477175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211424218.0A Pending CN115914294A (zh) | 2022-11-15 | 2022-11-15 | 一种车辆系统的升级方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115914294A (zh) |
-
2022
- 2022-11-15 CN CN202211424218.0A patent/CN115914294A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110677418B (zh) | 可信声纹认证方法、装置、电子设备及存储介质 | |
US7506381B2 (en) | Method for securing an electronic device, a security system and an electronic device | |
US9824353B2 (en) | Key protection method and system | |
CN110519309B (zh) | 数据传输方法、装置、终端、服务器及存储介质 | |
CN110401615B (zh) | 一种身份认证方法、装置、设备、系统及可读存储介质 | |
CN110990827A (zh) | 一种身份信息验证方法、服务器及存储介质 | |
CN100512201C (zh) | 用于处理分组业务的接入-请求消息的方法 | |
CN111107066A (zh) | 敏感数据的传输方法和系统、电子设备、存储介质 | |
CN108243176B (zh) | 数据传输方法和装置 | |
JP2004265026A (ja) | アプリケーション認証システムと装置 | |
CN109831311B (zh) | 一种服务器验证方法、系统、用户终端及可读存储介质 | |
CN110113355B (zh) | 物联网云端的接入方法及装置 | |
KR20150059347A (ko) | 휴대 단말기, 단말기 및 보안쿠키를 이용한 인증 방법 | |
CN104753674A (zh) | 一种应用身份的验证方法和设备 | |
CN111143856A (zh) | 一种plc远程固件升级系统及方法 | |
CN112257093B (zh) | 数据对象的鉴权方法、终端及存储介质 | |
CN115396121A (zh) | 安全芯片ota数据包的安全认证方法及安全芯片装置 | |
CN111130798A (zh) | 一种请求鉴权方法及相关设备 | |
CN113612852A (zh) | 一种基于车载终端的通信方法、装置、设备及存储介质 | |
CN112765626A (zh) | 基于托管密钥授权签名方法、装置、系统及存储介质 | |
CN111460410A (zh) | 服务器登录方法、装置、系统与计算机可读存储介质 | |
CN112446782A (zh) | 初始密钥下载的方法、计算机设备及存储介质 | |
CN109302442B (zh) | 一种数据存储证明方法及相关设备 | |
CN116528230A (zh) | 验证码处理方法、移动终端及可信服务系统 | |
CN107343276B (zh) | 一种终端的sim卡锁数据的保护方法及系统 |
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 |