CN114726539B - 一种基于可信密码模块tcm的离线升级方法 - Google Patents
一种基于可信密码模块tcm的离线升级方法 Download PDFInfo
- Publication number
- CN114726539B CN114726539B CN202210348131.3A CN202210348131A CN114726539B CN 114726539 B CN114726539 B CN 114726539B CN 202210348131 A CN202210348131 A CN 202210348131A CN 114726539 B CN114726539 B CN 114726539B
- Authority
- CN
- China
- Prior art keywords
- tcm
- firmware
- package
- firmware package
- certificate
- 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
- 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/3263—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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- 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/3247—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 digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于可信密码模块TCM的离线升级方法,包括先制作离线升级包,再升级离线升级包两大步骤,对待升级固件包进行了加解密和验签操作,并采用离线的升级方式,且固件包是使用特定的TCM终端设备公钥进行加密的,只有所述TCM终端设备才能解密该固件包,从而可以防止固件包的非法使用,保证安全升级。本发明巧妙灵活地将固件包、固件包的编译时间、固件包的版本号一起加密,再通过将固件包的编译时间和固件版本号与当前固件版本号进行比较,只有高于当前版本号才需要升级操作,从而有效避免误升级操作。
Description
技术领域
本发明涉及可信技术领域,具体是一种基于可信密码模块TCM的离线升级方法。
背景技术
随着物联网设备的发展普及,物联网的安全问题也越来越被重视。厂商生产出来的固件升级包在向终端客户发放,再到TCM终端设备升级的过程中,如何防范别有用心的人或组织通过伪造、仿制相同的TCM硬件模块进行恶意替换,以达到攻击的目的,是一个急需解决的技术问题。
中国专利公开了一种升级包的签名及验签方法、存储介质,申请号为202010014875.2,其技术方案为:所述签名方法通过生成第一签名文件、第二签名文件、第三签名文件,并将所述第一签名文件、第二签名文件、第三签名文件添入源升级包中的同一目录下,得到新升级包。所述验签方法根据所述新升级包中的所述第一签名文件、第二签名文件和第三签名文件对所述源升级包进行验签。其主要解决了如何在进入升级之前对升级包进行整包的签名及验证的问题,并且其升级包,在进行Android升级时,在解签、验签的过程中,使用者不用解压两次升级包,也不需要去关注解签及验签的函数及代码,只需应用接口即可使用,操作更加方便灵活,可见其非采用离线的升级方式,无法解决本申请的技术问题。
中国专利公开了一种基于TCM芯片的工控安全设备升级包安装方法,申请号为201910131468.7,其技术方案为:包括以下步骤:A、签名服务器向数字证书认证中心申请国密数字证书;B、数字证书认证中心为签名服务器颁发证书,并同时将自己的数字证书发送给签名服务器;C、计算哈希值,将HASH值发送给签名服务器作为签名请求;D、签名服务器利用自己的数字证书对升级包进行数字签名,得到签名值,并将签名值、根证书以及自己的证书一并发送给编译机,编译机生成最终的升级包;E、将根证书保存在内置的国密安全芯片TCM中,保证根证书的安全性;F、使用升级包进行在线升级。其技术方案能够改进现有技术的不足,避免由于升级包被篡改导致的安全性问题。虽然其可以达到避免由于升级包被篡改导致的安全性问题,但是其并非采用离线升级的技术方法。
发明内容
本发明要解决的技术问题是提供一种基于可信密码模块TCM的离线升级方法,能够解决现有技术的不足,避免升级非法固件包。
为解决上述技术问题,本发明所采取的技术方案如下:
一种基于可信密码模块TCM的离线升级方法,包括以下步骤:
S1:所述可信密码模块TCM出厂之前,在TCM终端设备上产生公私钥对,并使用所述TCM终端设备的序列号作为主题信息的一部分生成证书请求信息,并将所述证书请求信息发送给CA服务器用以请求签发TCM设备证书;所述TCM终端设备从所述CA服务器中获得CA证书;
S2:所述CA服务器收到所述证书请求信息后向所述TCM终端设备签发所述TCM设备证书,并存储所述TCM设备证书与TCM终端设备的序列号的对应关系;
S3:当所述TCM终端设备不具备联网功能而需要升级固件程序时,厂商从所述CA服务器获取所述TCM终端设备序列号对应的所述TCM设备证书,并使用所述TCM设备证书中的公钥对第一固件包进行加密生成第二固件包,再通过所述CA服务器对所述第一固件包进行签名生成第三固件包,最后将所述第二固件包和第三固件包组成为离线升级包;
S4:执行升级操作时,所述TCM终端设备使用其私钥对所述离线升级包进行解密得到第一固件包;再使用所述CA证书对所述离线升级包进行验签;如果验签通过,则说明所述第一固件包为可信固件包,从而升级所述第一固件包。
进一步地,所述TCM设备证书是所述CA服务器收到所述证书请求信息并校验通过后,给所述TCM终端设备签发的一个包含设备公钥信息的设备证书。
进一步地,所述证书请求信息是将所述TCM终端设备里的可信密码模块TCM的序列号、使用者、颁发者及有效期信息组成的P10请求信息。
进一步地,所述步骤S3中是使用所述TCM设备证书中的公钥对所述对第一固件包及其编译时间和版本号一起进行加密生成第二固件包,再通过所述CA服务器对所述第一固件包及其编译时间和版本号进行签名生成第三固件包,最后,将所述第二固件包和第三固件包组成为离线升级包。
进一步地,所述步骤S4中的具体方法为:使用所述TCM终端设备的私钥对所述离线升级包中的第二固件包进行解密,如果解密失败,则说明使用的非所述第二固件包,因而无法得到所述第一固件包;如果解密成功,则说明使用的是所述第二固件包,从而得到所述第一固件包;再使用所述CA证书对所述离线升级包进行验签;如果验签通过,则说明第一固件包为可信固件包,方可升级所述第一固件包操作。
进一步地,所述步骤S4中的具体方法为:使用所述TCM终端设备的私钥对所述离线升级包中的第二固件包进行解密,如果解密失败说明使用的不是所述第二固件包,因而无法得到所述第一固件包;如果解密成功,则说明使用的是所述第二固件包,从而得到所述第一固件包,以此可以确保只有指定设备的才可以解密得到所述第一固件包,避免所述第一固件包在分发过程中被非法利用;再使用所述CA证书对所述离线升级包进行验签;如果验签通过,则说明第一固件包为可信固件包,第一固件包的编译时间、版本号是可信的,再比较所述TCM终端设备得到的固件编译时间和固件版本号,如果第一固件包的编译时间和固件版本号比当前版本号新才进行升级,否则不升级,从而避免误升级。
本发明的有益效果:
1、本发明对待升级固件包进行了加解密和验签操作,并采用离线的升级方式,且固件包是使用特定的TCM终端设备公钥进行加密的,只有所述TCM终端设备才能解密该固件包,从而可以防止固件包的非法使用,保证安全升级。
2、本发明巧妙灵活地将固件包、固件包的编译时间、固件包的版本号一起加密,再通过将固件包的编译时间和固件版本号与当前固件版本号进行比较,只有高于当前版本号才需要升级操作,从而有效避免误升级操作。
附图说明
图1:本发明制作离线升级包的流程图。
图2:本发明升级固件包的流程图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例1:
一种基于可信密码模块TCM的离线升级方法,包括先制作离线升级包,再升级离线升级包两个步骤。
如图1所示,制作离线升级包的方法包括以下步骤:
S1:所述可信密码模块TCM出厂之前,在TCM终端设备上产生公私钥对,并使用TCM终端设备里的序列号、使用者、颁发者及有效期等信息组成的P10请求信息发送给CA服务器用以请求签发TCM设备证书;所述TCM终端设备是指包含了TCM芯片的设备,即是指包含了所述可信密码模块TCM的设备。所述序列号、使用者、颁发者及有效期等信息是指的可信密码模块TCM的信息。另外,TCM终端设备需要从所述CA服务器中获得CA证书;
S2:所述CA服务器收到所述P10请求信息后向所述TCM终端设备签发所述TCM设备证书,并存储所述TCM设备证书与TCM终端设备里序列号的对应关系;
S3:当TCM终端设备不具备联网功能而需要升级固件程序时,厂商从所述CA服务器获取所述TCM终端设备序列号对应的所述TCM设备证书,并使用所述TCM设备证书中的公钥对所述对第一固件包进行加密生成第二固件包,再通过所述CA服务器对所述第一固件包进行签名生成第三固件包,最后将所述第二固件包和第三固件包组成为离线升级包,从而完成第一步离线升级包的制作。
如图2所示,升级离线升级包的方法如下:
所述TCM终端设备使用其私钥对所述离线升级包中的第二固件包进行解密得到第一固件包;再使用所述CA证书对离线升级包进行验签;如果验签通过,则说明所述第一固件包为可信固件包,方可升级所述第一固件包操作。
本实施例对待升级固件包进行了加解密和验签操作,并采用离线的升级方式,且固件包是使用特定的TCM终端设备公钥进行加密的,只有所述TCM终端设备才能解密该固件包,从而可以防止固件包的非法使用,保证安全升级。
实施例2:
与上述实施例1的区别仅在于:
在制作离线升级包的步骤S3中是使用所述TCM设备证书中的公钥对所述对第一固件包、第一固件包的编译时间和第一固件包的固件版本号一起进行加密生成的第二固件包,再通过所述CA服务器对所述第一固件包、第一固件包的编译时间和第一固件包的固件版本号进行签名生成的第三固件包,最后将所述第二固件包和第三固件包组成为离线升级包,从而完成第一步离线升级包的制作。
升级离线升级包方法是使用所述TCM终端设备的私钥对所述离线升级包中的第二固件包进行解密,如果解密失败说明使用的不是所述第二固件包,因而无法得到所述第一固件包;如果解密成功,则说明使用的是所述第二固件包,从而得到所述第一固件包,以此可以确保只有指定设备的才可以解密得到所述第一固件包,避免所述第一固件包在分发过程中被非法利用,再使用所述CA证书对所述离线升级包进行验签;如果验签通过,则说明第一固件包为可信固件包,第一固件包的编译时间、版本号是可信的,再比较所述TCM终端设备得到的固件编译时间和固件版本号,如果第一固件包的编译时间和固件版本号比当前版本号新才进行升级,否则不升级,从而避免误升级。
本实施例巧妙灵活地将固件包、固件包的编译时间、固件包的版本号一起加密,再通过将固件包的编译时间和固件版本号与当前固件版本号进行比较,只有高于当前版本号才需要升级操作,从而有效避免误升级操作。
最后应说明的是:以上实施例仅用以说明本发明而并非限制本发明所描述的技术方案;因此,尽管本说明书参照上述的各个实施例对本发明已进行了详细的说明,但是,本领域的普通技术人员应当理解,仍然可以对本发明进行修改或等同替换;而一切不脱离本发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围中。
Claims (6)
1.一种基于可信密码模块TCM的离线升级方法,其特征在于,包括以下步骤:
S1:所述可信密码模块TCM出厂之前,在TCM终端设备上产生公私钥对,并使用所述TCM终端设备的序列号作为主题信息的一部分生成证书请求信息,并将所述证书请求信息发送给CA服务器用以请求签发TCM设备证书;所述TCM终端设备从所述CA服务器中获得CA证书;
S2:所述CA服务器收到所述证书请求信息后向所述TCM终端设备签发所述TCM设备证书,并存储所述TCM设备证书与TCM终端设备的序列号的对应关系;
S3:当所述TCM终端设备不具备联网功能而需要升级固件程序时,厂商从所述CA服务器获取所述TCM终端设备序列号对应的所述TCM设备证书,并使用所述TCM设备证书中的公钥对第一固件包进行加密生成第二固件包,再通过所述CA服务器对所述第一固件包进行签名生成第三固件包,最后将所述第二固件包和第三固件包组成为离线升级包;
S4:执行升级操作时,所述TCM终端设备使用其私钥对所述离线升级包进行解密得到第一固件包;再使用所述CA证书对所述离线升级包进行验签;如果验签通过,则说明所述第一固件包为可信固件包,从而升级所述第一固件包。
2.根据权利要求1所述的离线升级方法,其特征在于:所述TCM设备证书是所述CA服务器收到所述证书请求信息并校验通过后,给所述TCM终端设备签发的一个包含设备公钥信息的设备证书。
3.根据权利要求2所述的离线升级方法,其特征在于:所述证书请求信息是将所述TCM终端设备里的可信密码模块TCM的序列号、使用者、颁发者及有效期信息组成的P10请求信息。
4.根据权利要求1所述的离线升级方法,其特征在于:所述步骤S3中是使用所述TCM设备证书中的公钥对所述对第一固件包及其编译时间和版本号一起进行加密生成第二固件包,再通过所述CA服务器对所述第一固件包及其编译时间和版本号进行签名生成第三固件包,最后,将所述第二固件包和第三固件包组成为离线升级包。
5.根据权利要求1所述的离线升级方法,其特征在于:所述步骤S4中的具体方法为:使用所述TCM终端设备的私钥对所述离线升级包中的第二固件包进行解密,如果解密失败,则说明使用的非所述第二固件包,因而无法得到所述第一固件包;如果解密成功,则说明使用的是所述第二固件包,从而得到所述第一固件包;再使用所述CA证书对所述离线升级包进行验签;如果验签通过,则说明第一固件包为可信固件包,从而升级所述第一固件包。
6.根据权利要求4所述的离线升级方法,其特征在于:所述步骤S4中的具体方法为:使用所述TCM终端设备的私钥对所述离线升级包中的第二固件包进行解密,如果解密失败说明使用的不是所述第二固件包,因而无法得到所述第一固件包;如果解密成功,则说明使用的是所述第二固件包,从而得到所述第一固件包,再使用所述CA证书对所述离线升级包进行验签;如果验签通过,则说明第一固件包为可信固件包,第一固件包的编译时间、版本号是可信的,再比较所述TCM终端设备得到的固件编译时间和固件版本号,如果第一固件包的编译时间和固件版本号比当前版本号新才进行升级,否则不升级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210348131.3A CN114726539B (zh) | 2022-03-30 | 2022-03-30 | 一种基于可信密码模块tcm的离线升级方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210348131.3A CN114726539B (zh) | 2022-03-30 | 2022-03-30 | 一种基于可信密码模块tcm的离线升级方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114726539A CN114726539A (zh) | 2022-07-08 |
CN114726539B true CN114726539B (zh) | 2023-03-21 |
Family
ID=82241049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210348131.3A Active CN114726539B (zh) | 2022-03-30 | 2022-03-30 | 一种基于可信密码模块tcm的离线升级方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114726539B (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8392902B2 (en) * | 2007-10-24 | 2013-03-05 | Siemens Aktiengesellschaft | Upgrading software applications offline using a virtual machine |
CN109495307A (zh) * | 2018-11-27 | 2019-03-19 | 北京车和家信息技术有限公司 | 系统升级方法、ota升级包加密方法、终端设备及车辆 |
CN110324335B (zh) * | 2019-07-02 | 2020-04-28 | 成都信息工程大学 | 一种基于电子移动证书的汽车软件升级方法及系统 |
CN111382397B (zh) * | 2020-02-26 | 2023-03-24 | 浙江大华技术股份有限公司 | 升级软件包配置方法、软件升级方法、设备及存储装置 |
US11671428B2 (en) * | 2020-06-19 | 2023-06-06 | EMC IP Holding Company LLC | Granting access to upgrade resource with existing authorization infrastructure |
-
2022
- 2022-03-30 CN CN202210348131.3A patent/CN114726539B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN114726539A (zh) | 2022-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101145906B (zh) | 对单向网络中的接收终端进行合法性认证的方法及系统 | |
US9824353B2 (en) | Key protection method and system | |
CN1985466B (zh) | 使用分发cd按签署组向设备传递直接证据私钥的方法 | |
CN107743067B (zh) | 数字证书的颁发方法、系统、终端以及存储介质 | |
CN110519309B (zh) | 数据传输方法、装置、终端、服务器及存储介质 | |
CN109639427B (zh) | 一种数据发送的方法及设备 | |
US8495383B2 (en) | Method for the secure storing of program state data in an electronic device | |
CN112187544B (zh) | 固件升级方法、装置、计算机设备及存储介质 | |
US11811939B2 (en) | Advanced crypto token authentication | |
CN103078742B (zh) | 数字证书的生成方法和系统 | |
CN103988464A (zh) | 利用全球平台规范对发行者安全域进行密钥管理的系统和方法 | |
CN108595198B (zh) | 一种安全的固件更新方法 | |
CN111143856A (zh) | 一种plc远程固件升级系统及方法 | |
CN114662087B (zh) | 一种多端验证的安全芯片固件更新方法及装置 | |
CN110855426A (zh) | 一种用于软件使用授权的方法 | |
CN103825724A (zh) | 一种自动更新和恢复私钥的标识型密码系统及方法 | |
CN111510448A (zh) | 汽车ota升级中的通讯加密方法、装置及系统 | |
CN115374405A (zh) | 软件授权方法、许可授权方法、装置、设备和存储介质 | |
CN113840262A (zh) | 空中下载更新方法、更新服务器、终端设备和物联网系统 | |
KR20140071775A (ko) | 암호키 관리 시스템 및 방법 | |
JP2004140636A (ja) | 電子文書の署名委任システム、署名委任サーバ及び署名委任プログラム | |
CN114726539B (zh) | 一种基于可信密码模块tcm的离线升级方法 | |
CN113592484B (zh) | 一种账户的开立方法、系统及装置 | |
KR20130100032A (ko) | 코드 서명 기법을 이용한 스마트폰 어플리케이션 배포 방법 | |
CN113721965B (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 |