CN112134911A - 一种远程程序升级方法、装置和介质 - Google Patents

一种远程程序升级方法、装置和介质 Download PDF

Info

Publication number
CN112134911A
CN112134911A CN201910557128.0A CN201910557128A CN112134911A CN 112134911 A CN112134911 A CN 112134911A CN 201910557128 A CN201910557128 A CN 201910557128A CN 112134911 A CN112134911 A CN 112134911A
Authority
CN
China
Prior art keywords
key
session key
file
program
encryption algorithm
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
CN201910557128.0A
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.)
United Automotive Electronic Systems Co Ltd
Original Assignee
United Automotive Electronic Systems 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 United Automotive Electronic Systems Co Ltd filed Critical United Automotive Electronic Systems Co Ltd
Priority to CN201910557128.0A priority Critical patent/CN112134911A/zh
Publication of CN112134911A publication Critical patent/CN112134911A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种远程程序升级方法、装置和介质,所述升级方法包括:随机生成会话密钥;基于对称加密算法,根据所述会话密钥对待发送的程序文件进行加密,得到加密程序文件;基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件;以及将所述加密程序文件和所述密钥文件发送给待升级车载设备。本发明可以有效减少云端服务器对会话密钥的管理成本,同时还可以实现会话密钥的动态变化。

Description

一种远程程序升级方法、装置和介质
技术领域
本发明涉及设备升级技术领域,特别涉及一种远程程序升级方法、装置和介质。
背景技术
随着汽车智能网联趋势的发展,一个典型的应用场景是对车辆上的控制器进行远程程序升级。远程程序升级交互的双方,是云端后台服务器和车载电子控制器。通过从云端后台服务器下发程序升级包给到车载电子控制器,可以用于打补丁来修复控制器程序的bug,也可以推送新程序来丰富汽车的应用功能。然而,用于程序升级的程序包需要部署一些安全措施,保证程序包的机密性和不可篡改性。
常见做法是在不同的车辆上预置不同的会话密钥,在进行远程程序升级时,云端后台服务器利用不同的会话密钥对程序包进行加密,完成之后下发到车载电子控制器。在车载电子控制器中预置不同的会话密钥的方式,需要在云端后台部署密钥管理设备来存储车载电子控制器中的不同密钥,此种方式带来的管理成本比较高,并且每次用于加密的密钥是固定不变的。
发明内容
本发明的目的在于提供一种远程程序升级方法、装置和介质,可以减少云端服务器对会话密钥的管理成本,并且可以实现会话密钥的动态变化。
为达到上述目的,本发明提供一种远程程序升级方法,应用于汽车智能网联的云端服务器,包括:
随机生成会话密钥;
基于对称加密算法,根据所述会话密钥对待发送的程序文件进行加密,得到加密程序文件;
基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件;以及
将所述加密程序文件和所述密钥文件发送给待升级车载设备。
可选的,所述对所述会话密钥进行加密,具体为:根据自身的私钥或所述待升级车载设备的公钥对所述会话密钥进行加密。
可选的,所述基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件,包括:
在所述会话密钥中添加混杂信息;以及
基于非对称加密算法,对添加混杂信息之后的会话密钥进行加密,得到密钥文件。
可选的,所述混杂信息为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
为达到上述目的,本发明还提供一种远程程序升级方法,应用于待升级车载设备,包括:
接收云端服务器发送的加密程序文件和密钥文件;
基于非对称加密算法,对所述密钥文件进行解密,得到会话密钥;
根据所述会话密钥并基于对称加密算法,对所述加密程序文件进行解密,得到程序文件明文;以及
根据所述程序文件明文进行升级。
可选的,所述对所述密钥文件进行解密,具体为:根据所述云端服务器的公钥或自身的私钥对所述密钥文件进行解密。
可选的,所述密钥文件包括所述会话密钥和混杂信息。
可选的,所述混杂信息为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
为达到上述目的,本发明还提供一种远程程序升级装置,应用于汽车智能网联的云端服务器,包括:
生成模块,用于随机生成会话密钥;
第一加密模块,用于基于对称加密算法,根据所述会话密钥对待发送的程序文件进行加密,得到加密程序文件;
第二加密模块,用于基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件;以及
发送模块,用于将所述加密程序文件和所述密钥文件发送给待升级车载设备。
可选的,所述第二加密模块,具体用于,基于非对称加密算法,根据自身的私钥或所述待升级车载设备的公钥对所述会话密钥进行加密。
可选的,所述第二加密模块包括:
混杂子模块,用于在所述会话密钥中添加混杂信息;以及
加密子模块,用于对添加混杂信息之后的会话密钥进行加密,得到密钥文件。
可选的,所述混杂信息为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
为达到上述目的,本发明还提供一种远程程序升级装置,应用于待升级车载设备,包括:
接收模块,用于接收云端服务器发送的加密程序文件和密钥文件;
第一解密模块,用于基于非对称加密算法,对所述密钥文件进行解密,得到会话密钥;
第二解密模块,用于根据所述会话密钥并基于对称加密算法,对所述加密程序文件进行解密,得到程序文件明文;以及
升级模块,用于根据所述程序文件明文进行升级。
可选的,所述第一解密模块,具体用于根据所述云端服务器的公钥或自身的私钥对所述密钥文件进行解密。
可选的,所述密钥文件包括所述会话密钥和混杂信息。
可选的,所述混杂信息为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
为达到上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述任一项所述的远程程序升级方法。
与现有技术相比,本发明在每次进行远程程序升级时,云端服务器会随机生成会话密钥,然后基于对称加密算法,根据所述会话密钥对待发送的程序文件进行加密,得到加密程序文件,同时基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件,再将所述加密程序文件和所述密钥文件发送给待升级车载设备。由于在每次进行远程程序升级时,云端服务器都会随机生成会话密钥,云端服务器在每次完成远程程序升级后,即可删除该会话密钥,因此云端服务器不需要再部署密钥管理设备来存储这些会话密钥,从而可以有效减少云端服务器对会话密钥的管理成本,同时还可以实现会话密钥的动态变化,即所述云端服务器每次给待升级车载设备下发程序文件时,可以采用不同的会话密钥对所述程序文件进行加密。
附图说明
图1为本发明一实施方式的远程程序升级方法的流程图;
图2为本发明另一实施方式的远程程序升级方法的流程图;
图3为本发明一实施方式的远程程序升级装置的结构示意图;
图4为本发明另一实施方式的远程程序升级装置的结构示意图;
图5为本发明一实施方式的云端服务器的结构示意图;
图6为本发明一实施方式的待升级车载设备的结构示意图。
其中,附图标记如下:
生成模块-301;第一加密模块-302;第二加密模块-303;发送模块-304;接收模块-401;第一解密模块-402;第二解密模块-403;升级模块-404;第一处理器-501;第一通信接口-502;第一存储器-503;第一通信总线-504;第二处理器-601;第二通信接口-602;第二存储器-603;第二通信总线-604。
具体实施方式
以下结合附图1至6和具体实施方式对本发明提出的一种远程程序升级方法、装置和介质作进一步详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。为了使本发明的目的、特征和优点能够更加明显易懂,请参阅附图。须知,本说明书所附图式所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容能涵盖的范围内。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素
本发明的核心思想在于提供一种远程程序升级方法、装置和介质,以减少云端服务器对会话密钥的管理成本,并且可以实现密钥的动态变化。
需要说明的是,本发明实施方式的远程程序升级方法可应用于本发明实施方式的远程程序升级装置,该远程程序升级装置可被配置于汽车智能网联的云端服务器或汽车智能网联的待升级车载设备上,其中,待升级车载设备可以是需要下载程序文件实现升级的设备。程序文件是待升级车载设备进行系统升级所需的程序文件,或者是待升级车载设备内某些应用进行升级所需的程序文件,或者是云端服务器推送给待升级车载设备以丰富待升级车载设备的应用功能的新程序文件。
图1是本发明一实施方式提供的远程程序升级方法的流程示意图,所述远程程序升级方法可以由云端服务器来执行,如图1所示,所述远程程序升级方法,包括如下步骤:
S101:随机生成会话密钥。
在对称算法中,使用的密钥只有一个,在本实施方式中,该密钥为会话密钥,作为发送方的云端服务器使用所述会话密钥对程序文件进行加密,作为接收方的待升级车载设备使用所述会话密钥对加密的程序文件进行解密。
所述会话密钥是一种参数,它是在明文转换为密文或密文转换为明文的算法中输入的参数。
由于会话密钥是所述云端服务器随机生成的,从而可以实现会话密钥的动态变化。
S102:基于对称加密算法,根据所述会话密钥对待发送的程序文件进行加密,得到加密程序文件。
可选的,所述对称加密算法具体可以是DES算法、AES算法、3DES算法、TDEA算法、Blowfish算法、RC5算法和IDEA算法中的任意一种。
S103:基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件。
非对称加密算法需要一对密钥,该对密钥包括公钥和私钥,公钥是密钥对中公开的部分,私钥则是非公开的部分。如果用公钥加密,则需要用对应的私钥进行解密,或者用私钥加密,用对应的公钥进行解密。
可选的,在本实施方式中,所述云端服务器可根据其自身的私钥对所述会话密钥进行加密,对应的,所述待升级车载设备可根据所述云端服务器的公钥对加密的会话密钥进行解密。公钥和私钥可以是固定的,也可以是动态变化的。
此外,所述云端服务器还可根据所述待升级车载设备的公钥对所述会话密钥进行加密,对应的,所述待升级车载设备可根据自身的私钥对加密的会话密钥进行解密。
可选的,所述非对称加密算法具体可以是RSA算法、Elgamal算法、Rabin算法、D-H算法、ECC算法(椭圆曲线加密算法)或背包算法。
可选的,所述基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件,可包括:
在所述会话密钥中添加混杂信息;以及
基于非对称加密算法,对添加混杂信息之后的会话密钥进行加密,得到密钥文件。
由此,通过在会话密钥中添加混杂信息,可以造成一定的干扰,使得密钥文件很难被恶意攻击而破解出会话密钥,进一步提高会话密钥在传输过程中的安全性。
可选的,所述混杂信息可以为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
S104:将所述加密程序文件和所述密钥文件发送给待升级车载设备。
本实施方式提供的远程程序升级方法,在每次进行远程程序升级时,云端服务器会基于对称加密算法,随机生成会话密钥,然后根据会话密钥对待发送的程序文件进行加密,得到加密程序文件,同时也会对所述会话密钥进行加密,得到密钥文件,再将所述加密程序文件和所述密钥文件发送给待升级车载设备。由于在每次进行远程程序升级时,云端服务器都会随机生成会话密钥,云端服务器在每次完成远程程序升级后,即可删除该会话密钥,因此云端服务器不需要再部署密钥管理设备来存储这些会话密钥,从而可以有效减少云端服务器对会话密钥的管理成本,同时还可以实现会话密钥的动态变化。此外,本发明利用会话密钥对程序文件进行加密,同时又基于非对称加密算法,对所述会话密钥进行加密,从而实现程序文件的双重加密,使得程序文件在传输过程中的保密性强,难以被逆向,即便在传输的通信通道是非安全的情况下,因为程序文件的双重加密,所以很难被恶意攻击破解出程序文件明文,从而保证了程序文件中用户的隐私信息不被泄露。
图2示意性的给出了本发明另一实施方式提供的远程程序升级方法的流程图,本实施方式是在上述实施方式的基础上,从汽车智能网联的待升级车载设备为执行主体的角度提出的一种可选方案。如图2所示,本实施方式提供的远程程序升级方法包括:
S201:接收云端服务器发送的加密程序文件和密钥文件。
其中,所述加密程序文件是经过加密的程序文件,所述密钥文件是对会话密钥进行加密后的密钥文件。
S202:基于非对称加密算法,对所述密钥文件进行解密,得到会话密钥。
在本实施方式中,所述云端服务器的公钥和私钥或者所述待升级车载设备的私钥和公钥构成了非对称加密算法中的一对密钥,待升级车载设备可根据所述云端服务器的公钥或其自身的私钥对所述密钥文件进行解密。
可选的,所述密钥文件包括所述会话密钥和混杂信息。
进一步的,所述混杂信息可为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
S203:根据所述会话密钥并基于对称加密算法,对所述加密程序文件进行解密,得到程序文件明文。
可以理解的是,加密程序文件的加密算法是对称加密算法,其加密密钥和解密密钥是同一密钥,在本实施方式中为会话密钥,因此,利用所述会话密钥可以实现对所述加密程序文件的解密。
S204:根据所述程序文件明文进行升级。
可选的,根据所述程序文件明文可以对所述待升级车载设备的系统进行升级,也可以对所述待升级车载设备内某些应用进行升级,所述程序文件明文还可以是一些新程序文件,以丰富所述待升级车载设备的应用功能。
本实施方式提供的远程程序升级方法,通过接收云端服务器发送的加密程序文件和密钥文件,对密钥文件进行解密,得到会话密钥,再根据所述会话密钥对所述加密程序文件进行解密,得到程序文件明文,最后根据所述程序文件明文进行升级。由于程序文件是以加密的形式进行传输,且加密程序文件的会话密钥也是以加密的形式进行传输的,因此在传输过程中的保密性强,难以被逆向,保证了待升级车载设备接收到的程序文件的安全性。
图3示意性地给出了本发明一实施方式的远程程序升级装置,如图3所示,本实施方式提供的远程程序升级装置,应用于汽车智能网联的云端服务器,包括:
生成模块301,用于随机生成会话密钥;
第一加密模块302,用于基于对称加密算法,根据所述会话密钥对待发送的程序文件进行加密,得到加密程序文件;
第二加密模块303,用于基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件;以及
发送模块304,用于将所述加密程序文件和所述密钥文件发送给待升级车载设备。
可选的,所述第二加密模块303,具体用于,基于非对称加密算法,根据自身的私钥或所述待升级车载设备的公钥对所述会话密钥进行加密。
可选的,所述第二加密模块303包括:
混杂子模块,用于在所述会话密钥中添加混杂信息;以及
加密子模块,用于基于非对称加密算法,对添加混杂信息之后的会话密钥进行加密,得到密钥文件。
可选的,所述混杂信息为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
本实施方式提供的远程程序升级装置,在每次进行远程程序升级时,会随机生成会话密钥,再基于对称加密算法,根据所述会话密钥对待发送的程序文件进行加密,得到加密程序文件,同时也会对所述会话密钥进行加密,得到密钥文件,再将所述加密程序文件和所述密钥文件发送给待升级车载设备。由于在每次进行远程程序升级时,云端服务器都会随机生成会话密钥,云端服务器在每次完成远程程序升级后,即可删除该会话密钥,因此云端服务器不需要再部署密钥管理设备来存储这些会话密钥,从而可以有效减少云端服务器对会话密钥的管理成本,同时还可以实现会话密钥的动态变化。
图4示意性地给出了本发明另一实施方式的远程程序升级装置的结构示意图,如图4所示,本实施方式的远程程序升级装置,应用于待升级车载设备,包括:
接收模块401,用于接收云端服务器发送的加密程序文件和密钥文件;
第一解密模块402,用于基于非对称加密算法,对所述密钥文件进行解密,得到会话密钥;
第二解密模块403,用于根据所述会话密钥并基于对称加密算法,对所述加密程序文件进行解密,得到程序文件明文;以及
升级模块404,用于根据所述程序文件明文进行升级。
可选的,所述第一解密模块402,具体用于根据所述云端服务器的公钥或自身的私钥对所述密钥文件进行解密。
可选的,所述密钥文件包括所述会话密钥和混杂信息。
可选的,所述混杂信息为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
本实施方式提供的远程程序升级装置,通过接收云端服务器发送的加密程序文件和密钥文件,对密钥文件进行解密,得到会话密钥,再根据所述会话密钥对所述加密程序文件进行解密,得到程序文件明文,最后根据所述程序文件明文进行升级。由于程序文件是以加密的形式进行传输,且加密程序文件的会话密钥也是以加密的形式进行传输的,因此在传输过程中的保密性强,难以被逆向,保证了待升级车载设备接收到的程序文件的安全性。
图5示意性地给出了本发明一实施方式的云端服务器的结构示意图,图5所示的云端服务器仅仅是一个示例,不应对本发明实施方式的功能和使用范围带来任何限制。
如图5所示,所述云端服务器的组件可以包括但不限于:第一处理器501、第一通信接口502、第一存储器503和第一通信总线504,所述第一处理器501、所述第一通信接口502和所述第一存储器503通过所述第一通信总线504完成相互间的通信。
其中,所述第一存储器503,用于存放计算机程序。
所述第一处理器501,用于执行所述第一存储器503上所存放的程序时,实现如下步骤:
随机生成会话密钥;
基于对称加密算法,根据所述会话密钥对待发送的程序文件进行加密,得到加密程序文件;
基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件;以及
将所述加密程序文件和所述密钥文件发送给待升级车载设备。
所述第一处理器501执行所述第一存储器503上所存放的程序而实现的远程程序升级方法的其他实现方式,与前述图1所示的方法实施方式部分所提及的实现方式相同,这里不再赘述。
本发明提供的云端服务器,在每次进行远程程序升级时,会随机生成会话密钥,再基于对称加密算法,根据会话密钥对待发送的程序文件进行加密,得到加密程序文件,同时也会对所述会话密钥进行加密,得到密钥文件,再将所述加密程序文件和所述密钥文件发送给待升级车载设备。由于在每次进行远程程序升级时,云端服务器都会随机生成会话密钥,云端服务器在每次完成远程程序升级后,即可删除该会话密钥,因此云端服务器不需要再部署密钥管理设备来存储这些会话密钥,从而可以有效减少云端服务器对会话密钥的管理成本,同时还可以实现会话密钥的动态变化。
上述云端服务器提到的第一通信总线504可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。第一通信接口502还用于上述云端服务器与其他设备之间的通信。
所述第一处理器501可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述第一处理器501是所述云端服务器的控制中心,利用各种接口和线路连接整个云端服务器的各个部分。
所述第一存储器503可用于存储所述计算机程序,所述第一处理器501通过运行或执行存储在所述第一存储器503内的计算机程序,以及调用存储在所述第一存储器503内的数据,实现所述云端服务器的各种功能。
所述第一存储器503可以包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
图6示意性地给出了本发明一实施方式的待升级车载设备的结构示意图,图6所示的待升级车载设备仅仅是一个示例,不应对本发明实施方式的功能和使用范围带来任何限制。
如图6所示,所述待升级车载设备的组件可包括但不限于:第二处理器601、第二通信接口602、第二存储器603和第二通信总线604,所述第二处理器601、所述第二通信接口602和所述第二存储器603通过所述第二通信总线604完成相互间的通信。
其中,所述第二存储器603,用于存放计算机程序。
所述第二处理器601,用于执行所述第二存储器603上所存放的程序时,实现如下步骤:
接收云端服务器发送的加密程序文件和密钥文件;
基于非对称加密算法,对所述密钥文件进行解密,得到会话密钥;
根据所述会话密钥并基于对称加密算法,对所述加密程序文件进行解密,得到程序文件明文;以及
根据所述程序文件明文进行升级。
所述第二处理器601执行所述第二存储器603上所存放的程序而实现的远程程序升级方法的其他实现方式,与前述图2所示的方法实施方式部分所提及的实现方式相同,这里不再赘述。
本发明提供的待升级车载设备,通过接收云端服务器发送的加密程序文件和密钥文件,对密钥文件进行解密,得到会话密钥,再根据所述会话密钥对所述加密程序文件进行解密,得到程序文件明文,最后根据所述程序文件明文进行升级。由于程序文件是以加密的形式进行传输,且加密程序文件的会话密钥也是以加密的形式进行传输的,因此在传输过程中的保密性强,难以被逆向,保证了待升级车载设备接收到的程序文件的安全性。
所述第二通信总线604可以是外设部件互连标准(PeripheralComponentInterconnect,PCI)总线或扩展工业标准结构(Extended IndustryStandardArchitecture,EISA)总线等。该第二通信总线604可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。第二通信接口602还用于上述待升级车载设备与其他设备之间的通信。
所述第二处理器601可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述第二处理器601是所述待升级车载设备的控制中心,利用各种接口和线路连接整个待升级车载设备的各个部分。
所述第二存储器603可用于存储所述计算机程序,所述第二处理器601通过运行或执行存储在所述第二存储器603内的计算机程序,以及调用存储在所述第二存储器603内的数据,实现所述待升级车载设备的各种功能。
所述第二存储器603可以包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:
随机生成会话密钥;
基于对称加密算法,根据所述会话密钥对待发送的程序文件进行加密,得到加密程序文件;
基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件;以及
将所述加密程序文件和所述密钥文件发送给待升级车载设备。
或者实现如下步骤:
接收云端服务器发送的加密程序文件和密钥文件;
基于非对称加密算法,对所述密钥文件进行解密,得到会话密钥;
根据所述会话密钥并基于对称加密算法,对所述加密程序文件进行解密,得到程序文件明文;以及
根据所述程序文件明文进行升级。
处理器执行存储介质上所存放的程序而实现的远程程序升级方法的其他实现方式,与前述方法实施方式部分所提及的实现方式相同,这里不再赘述。
本发明实施方式的计算机可读存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机硬盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其组合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言-诸如Java、Smalltalk、C++、Python,还包括常规的过程式程序设计语言-诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
应当注意的是,在本文的实施方式中所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施方式仅仅是示意性的,例如,附图中的流程图和框图显示了根据本文的多个实施方式的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用于执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本文各个实施方式中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
上述描述仅是对本发明较佳实施方式的描述,并非对本发明范围的任何限定,本发明领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护范围。显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。

Claims (17)

1.一种远程程序升级方法,应用于汽车智能网联的云端服务器,其特征在于,包括:
随机生成会话密钥;
基于对称加密算法,根据所述会话密钥对待发送的程序文件进行加密,得到加密程序文件;
基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件;以及
将所述加密程序文件和所述密钥文件发送给待升级车载设备。
2.根据权利要求1所述的远程程序升级方法,其特征在于,所述对所述会话密钥进行加密,具体为:根据自身的私钥或所述待升级车载设备的公钥对所述会话密钥进行加密。
3.根据权利要求1所述的远程程序升级方法,其特征在于,所述基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件,包括:
在所述会话密钥中添加混杂信息;以及
基于非对称加密算法,对添加混杂信息之后的会话密钥进行加密,得到密钥文件。
4.根据权利要求3所述的远程程序升级方法,其特征在于,所述混杂信息为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
5.一种远程程序升级方法,应用于汽车智能网联的待升级车载设备,其特征在于,包括:
接收云端服务器发送的加密程序文件和密钥文件;
基于非对称加密算法,对所述密钥文件进行解密,得到会话密钥;
根据所述会话密钥并基于对称加密算法,对所述加密程序文件进行解密,得到程序文件明文;以及
根据所述程序文件明文进行升级。
6.根据权利要求5所述的远程程序升级方法,其特征在于,所述对所述密钥文件进行解密,具体为:根据所述云端服务器的公钥或自身的私钥对所述密钥文件进行解密。
7.根据权利要求5所述的远程程序升级方法,其特征在于,所述密钥文件包括所述会话密钥和混杂信息。
8.根据权利要求7所述的远程程序升级方法,其特征在于,所述混杂信息为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
9.一种远程程序升级装置,应用于汽车智能网联的云端服务器,其特征在于,包括:
生成模块,用于随机生成会话密钥;
第一加密模块,用于基于对称加密算法,根据所述会话密钥对待发送的程序文件进行加密,得到加密程序文件;
第二加密模块,用于基于非对称加密算法,对所述会话密钥进行加密,得到密钥文件;以及
发送模块,用于将所述加密程序文件和所述密钥文件发送给待升级车载设备。
10.根据权利要求9所述的远程程序升级装置,其特征在于,所述第二加密模块,具体用于,基于非对称加密算法,根据自身的私钥或所述待升级车载设备的公钥对所述会话密钥进行加密。
11.根据权利要求9所述的远程程序升级装置,其特征在于,所述第二加密模块包括:
混杂子模块,用于在所述会话密钥中添加混杂信息;以及
加密子模块,用于基于非对称加密算法,对添加混杂信息之后的会话密钥进行加密,得到密钥文件。
12.根据权利要求11所述的远程程序升级装置,其特征在于,所述混杂信息为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
13.一种远程程序升级装置,应用于汽车智能网联的待升级车载设备,其特征在于,包括:
接收模块,用于接收云端服务器发送的加密程序文件和密钥文件;
第一解密模块,用于基于非对称加密算法,对所述密钥文件进行解密,得到会话密钥;
第二解密模块,用于根据所述会话密钥并基于对称加密算法,对所述加密程序文件进行解密,得到程序文件明文;以及
升级模块,用于根据所述程序文件明文进行升级。
14.根据权利要求13所述的远程程序升级装置,其特征在于,所述第一解密模块,具体用于根据所述云端服务器的公钥或自身的私钥对所述密钥文件进行解密。
15.根据权利要求13所述的远程程序升级装置,其特征在于,所述密钥文件包括所述会话密钥和混杂信息。
16.根据权利要求15所述的远程程序升级装置,其特征在于,所述混杂信息为所述会话密钥的长度、时间戳、所述会话密钥的哈希值和随机数中的任一种或他们的任意组合。
17.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至4中任一项所述的方法,或者实现权利要求5至8中任一项所述的方法。
CN201910557128.0A 2019-06-25 2019-06-25 一种远程程序升级方法、装置和介质 Pending CN112134911A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910557128.0A CN112134911A (zh) 2019-06-25 2019-06-25 一种远程程序升级方法、装置和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910557128.0A CN112134911A (zh) 2019-06-25 2019-06-25 一种远程程序升级方法、装置和介质

Publications (1)

Publication Number Publication Date
CN112134911A true CN112134911A (zh) 2020-12-25

Family

ID=73849571

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910557128.0A Pending CN112134911A (zh) 2019-06-25 2019-06-25 一种远程程序升级方法、装置和介质

Country Status (1)

Country Link
CN (1) CN112134911A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113783887A (zh) * 2021-09-22 2021-12-10 广东九联科技股份有限公司 基于网络通信的远程控制方法、系统及存储介质
CN115102715A (zh) * 2022-05-24 2022-09-23 北京科技大学 网络化数控系统中软件更新的数据传输安全方法及系统
CN115174195A (zh) * 2022-06-30 2022-10-11 中国第一汽车股份有限公司 一种数据库文件处理方法、加密端和解密端

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217363A (zh) * 2007-12-28 2008-07-09 北京深思洛克数据保护中心 一种通过共享密钥实现远程升级的方法
CN106603485A (zh) * 2016-10-31 2017-04-26 美的智慧家居科技有限公司 密钥协商方法及装置
CN107404469A (zh) * 2016-05-20 2017-11-28 广州市动景计算机科技有限公司 一种会话安全处理系统、设备、装置及方法
CN108111507A (zh) * 2017-12-19 2018-06-01 恒宝股份有限公司 一种设备远程升级的方法及系统
CN108173644A (zh) * 2017-12-04 2018-06-15 珠海格力电器股份有限公司 数据传输加密方法、装置、存储介质、设备及服务器
CN108566381A (zh) * 2018-03-19 2018-09-21 百度在线网络技术(北京)有限公司 一种安全升级方法、装置、服务器、设备和介质
CN109560931A (zh) * 2018-11-30 2019-04-02 江苏恒宝智能系统技术有限公司 一种基于无证书体系的设备远程升级方法
WO2019083440A2 (zh) * 2017-10-24 2019-05-02 华为国际有限公司 一种车载设备升级方法及相关设备
CN109857421A (zh) * 2018-12-17 2019-06-07 航天信息股份有限公司 嵌入式设备的加密升级方法及系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217363A (zh) * 2007-12-28 2008-07-09 北京深思洛克数据保护中心 一种通过共享密钥实现远程升级的方法
CN107404469A (zh) * 2016-05-20 2017-11-28 广州市动景计算机科技有限公司 一种会话安全处理系统、设备、装置及方法
CN106603485A (zh) * 2016-10-31 2017-04-26 美的智慧家居科技有限公司 密钥协商方法及装置
WO2019083440A2 (zh) * 2017-10-24 2019-05-02 华为国际有限公司 一种车载设备升级方法及相关设备
CN108173644A (zh) * 2017-12-04 2018-06-15 珠海格力电器股份有限公司 数据传输加密方法、装置、存储介质、设备及服务器
CN108111507A (zh) * 2017-12-19 2018-06-01 恒宝股份有限公司 一种设备远程升级的方法及系统
CN108566381A (zh) * 2018-03-19 2018-09-21 百度在线网络技术(北京)有限公司 一种安全升级方法、装置、服务器、设备和介质
CN109560931A (zh) * 2018-11-30 2019-04-02 江苏恒宝智能系统技术有限公司 一种基于无证书体系的设备远程升级方法
CN109857421A (zh) * 2018-12-17 2019-06-07 航天信息股份有限公司 嵌入式设备的加密升级方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113783887A (zh) * 2021-09-22 2021-12-10 广东九联科技股份有限公司 基于网络通信的远程控制方法、系统及存储介质
CN115102715A (zh) * 2022-05-24 2022-09-23 北京科技大学 网络化数控系统中软件更新的数据传输安全方法及系统
CN115174195A (zh) * 2022-06-30 2022-10-11 中国第一汽车股份有限公司 一种数据库文件处理方法、加密端和解密端

Similar Documents

Publication Publication Date Title
US11706026B2 (en) Location aware cryptography
US10951595B2 (en) Method, system and apparatus for storing website private key plaintext
CN109104279B (zh) 一种电力数据的加密方法、系统及终端设备
US9037870B1 (en) Method and system for providing a rotating key encrypted file system
US10880100B2 (en) Apparatus and method for certificate enrollment
CN112913189B (zh) 一种ota升级方法及装置
US10887085B2 (en) System and method for controlling usage of cryptographic keys
CN109450620B (zh) 一种移动终端中共享安全应用的方法及移动终端
CN111274611A (zh) 数据脱敏方法、装置及计算机可读存储介质
CN112134911A (zh) 一种远程程序升级方法、装置和介质
CN110177099B (zh) 基于非对称加密技术的数据交换方法、发送终端和介质
CN113438205B (zh) 区块链数据访问控制方法、节点以及系统
US20140059341A1 (en) Creating and accessing encrypted web based content in hybrid applications
CN110636067A (zh) 数据加密方法、数据解密方法和装置
TW201712590A (zh) 雲端加密系統及方法
CN115150821A (zh) 离线包的传输、存储方法及装置
CN114629724B (zh) 车联网数据传输方法、装置、服务器及存储介质
KR20220000537A (ko) 차량 네트워크 기반의 데이터 송수신 시스템 및 그 방법
CN112329044A (zh) 信息获取方法、装置、电子设备和计算机可读介质
CN111181944A (zh) 通信系统及信息发布方法、装置、介质、设备
CN110995422A (zh) 一种数据分析方法、系统、设备及计算机可读存储介质
CN113704789A (zh) 一种车载通讯安全处理方法、装置、设备及存储介质
CN117354016A (zh) 一种整车ota安全升级方法、装置、设备及介质
CN114615087B (zh) 数据共享方法、装置、设备及介质
CN114430345A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20201225