CN116301961A - 网络电源程序的在线更新方法、装置及网络电源 - Google Patents
网络电源程序的在线更新方法、装置及网络电源 Download PDFInfo
- Publication number
- CN116301961A CN116301961A CN202310015287.4A CN202310015287A CN116301961A CN 116301961 A CN116301961 A CN 116301961A CN 202310015287 A CN202310015287 A CN 202310015287A CN 116301961 A CN116301961 A CN 116301961A
- Authority
- CN
- China
- Prior art keywords
- updated
- application
- ciphertext
- power supply
- program
- 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
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000012795 verification Methods 0.000 claims abstract description 79
- 238000010586 diagram Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- WABPQHHGFIMREM-UHFFFAOYSA-N lead(0) Chemical compound [Pb] WABPQHHGFIMREM-UHFFFAOYSA-N 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
Images
Classifications
-
- 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
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- 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/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
- Y04S40/20—Information technology specific aspects, e.g. CAD, simulation, modelling, system security
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Power Sources (AREA)
Abstract
本申请提供一种网络电源程序的在线更新方法、装置及网络电源。包括:接收系统端发送的待更新应用的密文;其中,所述待更新应用的密文是采用预设的密钥对待更新应用的程序进行加密所产生;所述网络电源根据预先存储的密钥,对所述待更新应用的密文进行校验,得到校验结果;若所述校验结果为校验通过,则对所述待更新应用的密文进行解密,并根据解密后得到的程序更新所述待更新应用。本申请避免了传输的明文数据被篡改,也避免了系统端遭攻击而带来的密钥泄露问题,提高了应用程序更新的安全性。
Description
技术领域
本申请涉及通信技术,尤其涉及一种网络电源程序的在线更新方法、装置及网络电源。
背景技术
网络电源为系统端的数据中心设备稳定供电,使数据中心的设备能够对外提供网络服务。网络电源的模块可以包括硬件层和应用层,系统端通过通讯总线来更新网络电源应用层的程序,实现对网络电源程序的在线更新。
现有技术中,系统端向网络电源下发应用程序的更新内容,但是,在数据传输过程中,很容易造成信息的泄露和篡改,应用程序更新的安全性较低。
发明内容
本申请提供一种网络电源程序的在线更新方法、装置及网络电源,用以提高应用程序在线更新的安全性。
第一方面,本申请提供一种网络电源程序的在线更新方法,包括:
接收系统端发送的待更新应用的密文;其中,所述待更新应用的密文是采用预设的密钥对待更新应用的程序进行加密所产生;
根据所述网络电源中预先存储的密钥,对所述待更新应用的密文进行校验,得到校验结果;
若所述校验结果为校验通过,则对所述待更新应用的密文进行解密,并根据解密后得到的程序更新所述待更新应用。
第二方面,本申请提供一种网络电源程序的在线更新装置,包括:
密文接收模块,用于接收系统端发送的待更新应用的密文;其中,所述待更新应用的密文是采用预设的密钥对待更新应用的程序进行加密所产生;
密文校验模块,用于根据所述网络电源中预先存储的密钥,对所述待更新应用的密文进行校验,得到校验结果;
应用更新模块,用于若所述校验结果为校验通过,则对所述待更新应用的密文进行解密,并根据解密后得到的程序更新所述待更新应用。
第三方面,本申请提供一种实现如本申请第一方面所述的网络电源程序的在线更新方法的网络电源。
本申请提供的一种网络电源程序的在线更新方法、装置及网络电源,网络电源中预先存储有密钥,在网络电源接收到待更新应用的密文后,采用预存的密钥对密文进行校验。若校验通过,则可以对密文进行解密,更新对应的待更新应用。解决了现有技术中,系统端将明文传输给网络电源所造成的数据泄露和篡改等问题。密钥存储在网络电源中,而不是存储在系统端,避免了系统端中的密钥泄露,从而造成网络电源的软件被篡改。通过将密钥存储在网络电源,有效提高了密文校验的安全性,进而保证网络电源的正常工作。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的网络电源和系统端之间的关系示意图;
图2为本申请实施例提供的一种网络电源程序的在线更新方法的流程示意图;
图3为本申请实施例提供的一种网络电源程序的在线更新方法的流程示意图;
图4为本申请实施例提供的待更新应用的密文的组成示意图;
图5为本申请实施例提供的一种网络电源程序的在线更新方法的流程示意图;
图6为本申请实施例提供的一种网络电源程序的在线更新装置的结构框图;
图7为本申请实施例提供的一种网络电源程序的在线更新装置的结构框图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例方式作进一步地详细描述。
应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
需要注意的是,由于篇幅所限,本申请说明书没有穷举所有可选的实施方式,本领域技术人员在阅读本申请说明书后,应该能够想到,只要技术特征不互相矛盾,那么技术特征的任意组合均可以构成可选的实施方式。下面对各实施例进行详细说明。
网络电源作为电源端,为系统端的数据中心进行稳定供电,使数据中心的设备可以对外提供网络服务。例如,网络电源可以将从大电网接入的交流电源转换为数据中心设备所需的电压等级和功率,供给数据中心设备使用,例如,可以将220V交流电转换为12V直流电或54V直流电等。网络电源的控制芯片中的程序可以包括应用区和Boot(备用)区,网络电源程序的在线更新,是指系统端通过通讯总线向网络电源下发程序更新指令,网络电源利用Boot区程序来更新应用区程序,而不用开机壳或引线来烧写程序。应用区中存储网络电源实现数字控制、监控等功能的运行程序。图1为网络电源和系统端之间的关系示意图。网络电源为系统端供电,系统端可以向网络电源下发数据,所下发的数据可以是待更新的应用程序的代码以及系统端下发的指令等数据。
已有的网络电源程序的在线更新方法,系统端下发的软件是明文,但是,系统端下发明文更新,所下发的数据未经保护,很容易被篡改。若待更新的数据被篡改但校验通过,电源程序更新成被篡改后的程序,则可能造成系统端的供电出现问题。
系统端也可以对下发的数据进行加密,向网络电源发送密文,系统端拥有加密的密钥。若系统端被黑客攻击而导致密钥泄露,则黑客能够通过系统端篡改待更新的应用程序,从而导致网络电源无法正常工作,影响数据中心设备的工作。
本申请提供的一种网络电源程序的在线更新方法、装置及网络电源,旨在解决现有技术的如上技术问题。
下面以具体的实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图2是根据本申请实施例提供的一种网络电源程序的在线更新方法的流程示意图,该方法可以应用于网络电源,可以由一种网络电源程序的在线更新装置执行。如图2所示,该方法包括以下步骤:
S201、接收系统端发送的待更新应用的密文;其中,待更新应用的密文是采用预设的密钥对待更新应用的程序进行加密所产生。
示例性地,网络电源为电源端,在对网络电源中的应用程序进行在线更新时,需要系统端将待更新应用的程序发送给网络电源,网络电源在接收到待更新应用的程序后,对待更新应用进行更新。系统端与网络电源之间可以进行数据通信,将待更新应用的程序发送给网络电源。系统端还可以用于通过预设的数据中心设备对外提供网络服务,例如,数据中心设备可以是系统端的服务器等计算机设备,对外提供的网络服务可以是数据查询和修改等服务。
系统端向网络电源发送的待更新应用的程序是以密文的形式发送,即,系统端向网络电源发送待更新应用的密文。待更新应用的密文是采用预设的密钥对待更新应用的程序进行加密所产生的数据,密钥例如是网络电源的软件开发者在编写程序时预先设定,并存储在网络电源中,便于网络电源后续进行解密。
本实施例中,待更新应用的密文可以是软件开发者通过预设的密钥对待更新应用的程序进行加密所产生。
具体的,待更新应用的密文由网络电源的软件开发者发送给系统端,再由系统端发送给网络电源。因此,待更新应用的密文是由软件开发者生成。软件开发者确定待更新应用的程序,根据预设的密钥对待更新应用的程序进行加密,得到待更新应用的密文。系统端中没有密钥,也不需要对待更新应用的程序进行加密,只需要将待更新应用的密文下发给电源,减轻了系统端的工作量。
这样设置的有益效果在于,系统端中不存储密钥,也不对待更新应用的程序进行加密,避免系统端被黑客攻击而导致密钥泄露或待更新应用的程序被篡改,提高应用程序更新的安全性。
网络电源的控制芯片可以包括应用区和Boot区,网络电源在接收待更新应用的密文时,可以在Boot区或应用区进行密文的接收。在Boot区或应用区完成接收之后,会在Boot区进行密文的校验和解密。在确定密文正确后,可以用解密后的程序更新原有应用区程序,应用区更新成功后即用解密后的程序进行运行。在Boot区或应用区接收到待更新应用的密文后,还可以对待更新应用的密文进行保存。
本实施例中,在接收系统端发送的待更新应用的密文之后,还包括:将待更新应用的密文存储至网络电源中预设的存储位置处。
具体的,网络电源中,应用区和Boot区的程序,都需要基于控制芯片进行运行。在控制芯片上还可以部署一个存储单元,即,网络电源中包括存储单元,将存储单元预设为待更新应用的密文的存储位置。在网络电源接收到待更新应用的密文后,可以将待更新应用的密文存储至网络电源中预设的存储位置处,即,将待更新应用的密文存储至控制芯片的存储单元中。
这样设置的有益效果在于,将待更新应用的密文存储在网络电源的存储单元中,便于Boot区对待更新应用的密文的获取,若在后续应用的运行中,出现程序错误,可以基于存储单元中的密文进行检查,决定是否采用此备份的待更新应用程序,进而保证网络电源对数据中心设备的正常供电。
本实施例中,在接收系统端发送的待更新应用的密文之后,还包括:将待更新应用的密文存储至一外置存储器中。
具体的,网络电源在得到待更新应用的密文后,还可以将待更新应用的密文存储在预设的外置存储器中,同样地,便于Boot区对待更新应用的密文的获取,若在后续应用的运行中,出现程序错误,可以基于存外置存储器中的密文进行检查,决定是否采用此备份的待更新应用程序,保证程序的正常运行,进而保证网络电源对数据中心设备的正常供电。
这样设置的有益效果在于,将待更新应用的密文存储在网络电源的存储单元中或者外置存储器中,可避免网络电源被破坏导致数据丢失,提高数据存储的可靠性。
S202、根据网络电源中预先存储的密钥,对待更新应用的密文进行校验,得到校验结果。
示例性地,网络电源中预先存储有密钥,密钥可以是由软件开发者确定,并在网络电源出厂时存储在网络电源中。网络电源在接收到待更新应用的密文后,可以获取预先存储的密钥,根据预先存储的密钥,对待更新应用的密文进行校验。例如,软件开发者采用对称加密的方法对待更新应用的程序进行加密,软件开发者所使用的密钥与网络电源存储的密钥一致;或者,软件开发者采用非对称密钥的方法对待更新应用的程序进行加密,软件开发者所使用的密钥为公钥,网络电源存储的密钥为私钥。
网络电源对待更新应用的密文进行校验,可以是对待更新应用的密文的完整性和真实性进行校验,例如,对待更新应用的密文进行CRC(Cyclic Redundancy Check,循环冗余校验)校验。
在校验完成后,可以得到校验结果,校验结果可以包括校验通过和校验不通过。例如,软件开发者与网络电源预先约定一个校验标识,网络电源在收到待更新应用的密文后,采用预存的密钥对待更新应用的密文进行计算,将待更新应用的密文转换成一串字符串。例如,可以根据预设的校验算法,对待更新应用的密文进行计算,得到的计算结果为一串字符串。将计算出的字符串与预先约定的校验标识进行比较,若二者一致,则确定校验结果为校验通过;若二者不一致,则认为待更新应用的密文在传输过程中被篡改或泄露,网络电源接收到的密文不是系统端发送的真实完整的密文,可以确定校验结果为校验不通过。
S203、若校验结果为校验通过,则对待更新应用的密文进行解密,并根据解密得到的程序更新待更新应用。
示例性地,若校验结果为校验不通过,则网络电源可以向系统端发出提示信息,提示系统端重新向网络电源发送待更新应用的密文。对于校验不通过的密文,网络电源不需要进行解密,也不需要对待更新的应用进行更新。
若校验结果为校验通过,则网络电源可以根据预设的密钥,对待更新应用的密文进行解密。具体的,可以在Boot区对待更新应用的密文进行解密。解密完成后,采用解密后的程序替换当前程序,实现对待更新应用的更新。网络电源可以从Boot区跳转到应用区,在应用区运行更新后的待更新应用。
本申请实施例提供的一种网络电源程序的在线更新方法,网络电源中预先存储有密钥,在网络电源接收到待更新应用的密文后,采用预存的密钥对密文进行校验。若校验通过,则可以对密文进行解密,更新对应的待更新应用。解决了现有技术中,系统端将明文传输给网络电源所造成的数据泄露和篡改等问题。密钥存储在网络电源中,而不是存储在系统端,避免了系统端中的密钥泄露,从而造成网络电源的软件被篡改。通过将密钥存储在网络电源,有效提高了密文校验的安全性,进而保证网络电源的正常工作。
图3为本申请实施例提供的一种网络电源程序的在线更新方法的流程示意图,该实施例是在上述实施例基础上的可选实施例。
本实施例中,根据网络电源中预先存储的密钥,对待更新应用的密文进行校验,得到校验结果,可细化为:获取网络电源出厂时,预先存储在网络电源中的密钥;根据网络电源中预先存储的密钥,基于预设的第一加密算法,对待更新应用的密文进行计算,得到第一校验值;根据第一校验值,对待更新应用的密文进行真实性和完整性校验,得到校验结果。
如图3示,该方法包括以下步骤:
S301、接收系统端发送的待更新应用的密文;其中,待更新应用的密文是采用预设的密钥对待更新应用的程序进行加密所产生。
示例性地,本步骤可以参见上述步骤S201,不再赘述。
S302、获取网络电源出厂时,预先存储在网络电源中的密钥。
示例性地,网络电源在出厂时,软件开发者预先将密钥存储在网络电源中boot区程序中。网络电源在接收到待更新应用的密文后,获取自身中存储的密钥。例如,网络电源在出厂时,软件开发者将密钥存储在预设的密钥存储位置处,则网络电源可以从预设的密钥存储位置处获取密钥。
S303、根据网络电源中预先存储的密钥,基于预设的第一加密算法,对待更新应用的密文进行计算,得到第一校验值。
示例性地,预先设置第一加密算法,第一加密算法可以是AES-GCM(AdvancedEncryption Standard Galois/Counter Mode,高级加密标准-对称加密Counter模式)算法,例如,可以采用AES-128-GCM算法。
根据第一加密算法和预存的密钥,对待更新应用的密文进行计算,例如,可以将待更新应用的密文计算成128位的附加校验值信息。将计算出的结果确定为第一校验值。
本实施例中,根据网络电源中预先存储的密钥,基于预设的第一加密算法,对待更新应用的密文进行计算,得到第一校验值,包括:获取待更新应用的密文中,位于预设的第一位置处的字符串,为待校验字符串;根据网络电源中预先存储的密钥,基于预设的第一加密算法,对待校验字符串进行计算,得到第一校验值。
具体的,软件开发者对待更新应用的程序进行加密,得到待更新应用的程序的加密数据。软件开发者可以基于预设的第一加密算法和密钥,对待更新应用的程序的加密数据进行计算,将得到的结果确定为第一目标值。将待更新应用的程序的加密数据和第一目标值进行组合,得到待更新应用的密文。即,待更新应用的密文中不仅包括待更新应用的程序加密后的数据,还可以包括对待更新应用的程序加密后的数据再进行校验计算的结果。示例性地,图4为一实施例中待更新应用的密文的组成示意图。图4中,待更新应用的密文由130个字符组成,其中,第0至127位是待更新应用的程序加密后的数据,第128和129位是指,根据第一加密算法,对第0至127位的字符进行计算得到的第一目标值。
预设待更新应用的程序加密后的数据在待更新应用的密文中的位置,作为第一位置,以及预设第一目标值在待更新应用的密文中的位置,作为第二位置。即,软件开发者在得到待更新应用的程序加密后的数据后,将待更新应用的程序加密后的数据放置在预设的第一位置处;在得到第一目标值后,将第一目标值放置在预设的第二位置处,从而得到完整的待更新应用的密文。
网络电源在接收到待更新应用的密文后,获取待更新应用的密文中,位于预设的第一位置处的字符串,作为待校验字符串。待校验字符串即为对待更新应用的程序进行加密后得到的数据。根据预设的第一加密算法和预存的密钥,对待校验字符串进行计算,得到的结果作为第一校验值。
这样设置的有益效果在于,将待更新应用的密文划分成两部分,只需要对其中的一部分进行加密计算,便于根据计算结果与另一部分的数据进行校验,提高校验效率。
S304、根据第一校验值,对待更新应用的密文进行真实性和完整性校验,得到校验结果。
示例性地,在得到第一校验值后,可以根据预设的校验规则,对第一校验值进行校验,得到校验结果。对第一校验值的校验是对待更新应用的密文的真实性和完整性的校验,真实性和完整性校验是指,校验待更新应用的密文在传输过程中是否被篡改或丢失。
本实施例中,根据第一校验值,对待更新应用的密文进行真实性和完整性校验,得到校验结果,包括:获取待更新应用的密文中,位于预设的第二位置处的字符串,为第一目标值;其中,第一目标值表示在生成待更新应用的密文时,基于预设的第一加密算法,对位于预设的第一位置处的字符串进行计算所得到的字符串;将第一校验值与第一目标值进行比较,若第一校验值和第一目标值一致,则确定待更新应用的密文的真实性和完整性的校验结果为校验通过。
具体的,从待更新应用的密文中,获取位于预设的第二位置处的字符串,得到第一目标值。第一目标值是针对待更新应用的程序进行加密后得到的数据,再进行校验计算所得到的数据。待更新应用的程序进行加密后得到的数据即为在生成待更新应用的密文时,位于第一位置处的字符串。因此,第一目标值是指,在生成待更新应用的密文时,基于预设的第一加密算法,对位于预设的第一位置处的字符串进行计算所得到的字符串。
第一校验值与第一目标值均是基于第一加密算法计算出来的,在得到第一校验值与第一目标值后,将第一校验值与第一目标值进行比较,若二者一致,则说明生成第一目标值时的字符串与生成第一校验值时的字符串一致,即确定待更新应用的密文在传输过程中没有被篡改或丢失,待更新应用的密文的真实性和完整性的校验结果为校验通过;若二者不一致,则说明生成第一目标值时的字符串与生成第一校验值时的字符串不一致,即确定待更新应用的密文的真实性和完整性的校验结果为校验不通过。
这样设置的有益效果在于,根据待更新应用的密文自身中的第一目标值,对待更新应用的密文进行校验,有效确定密文是否被篡改,提高校验的精度和效率。且校验的密钥存储在网络电源中,而不在系统端中,避免系统端被攻击导致密钥泄露或被篡改,提高应用更新的安全性。
本实施例中,在将第一校验值与第一目标值进行比较之后,还包括:若第一校验值和第一目标值不一致,则向系统端发送提示信息,以提示系统端重新发送待更新应用的密文。
具体的,若第一校验值和第一目标值不一致,则说明待更新应用的密文在系统端存储或传输过程中出现问题,可能存在数据丢失或数据篡改等情况。网络电源可以向系统端发送提示信息,提示信息用于提示系统端检查待更新应用的密文,重新向网络电源进行发送。
这样设置的有益效果在于,在待更新应用的密文出现问题时,及时提醒系统端重新发送,避免影响网络电源的使用,进而保证数据中心设备的正常工作。
S305、若校验结果为校验通过,则对待更新应用的密文进行解密,并根据解密后得到的程序更新待更新应用。
示例性地,本步骤可以参见上述步骤S203,不再赘述。
本申请实施例提供的一种网络电源程序的在线更新方法,网络电源中预先存储有密钥,在网络电源接收到待更新应用的密文后,采用预存的密钥对密文进行校验。若校验通过,则可以对密文进行解密,更新对应的待更新应用。解决了现有技术中,系统端将明文传输给网络电源所造成的数据泄露和篡改等问题。密钥存储在网络电源中,而不是存储在系统端,避免了系统端中的密钥泄露,从而造成网络电源的软件被篡改。通过将密钥存储在网络电源,有效提高了密文校验的安全性,进而保证网络电源的正常工作。
图5为本申请实施例提供的一种网络电源程序的在线更新方法的流程示意图,该实施例是在上述实施例基础上的可选实施例。
本实施例中,根据解密后得到的程序更新待更新应用,可细化为:擦除待更新应用的当前程序,将解密后得到的程序作为目标程序,更新待更新应用;运行待更新应用的目标程序。
如图5示,该方法包括以下步骤:
S501、接收系统端发送的待更新应用的密文;其中,待更新应用的密文是采用预设的密钥对待更新应用的程序进行加密所产生。
示例性地,本步骤可以参见上述步骤S201,不再赘述。
S502、根据网络电源中预先存储的密钥,对待更新应用的密文进行校验,得到校验结果。
示例性地,本步骤可以参见上述步骤S202,不再赘述。
S503、若校验结果为校验通过,则对待更新应用的密文进行解密;擦除待更新应用的当前程序,并将解密后得到的程序作为目标程序,更新待更新应用;运行待更新应用的目标程序。
示例性地,若确定校验结果为校验通过,则可以根据待更新应用的密文,对待更新应用进行更新。可以根据预设的密钥对待更新应用的密文进行解密,得到待更新应用的程序,将解密后得到的程序确定为目标程序。网络电源确定自身的待更新应用的当前程序,删除待更新应用的当前程序,采用目标程序替换当前程序。采用更新后的目标程序,运行该待更新应用,从而完成应用的更新。通过擦除待更新应用的当前程序,可以避免待更新应用继续运行当前程序,保证待更新应用为最新版本,提高应用更新的准确性。
本实施例中,在运行待更新应用的目标程序之前,还包括:获取目标程序中,位于预设的第三位置处的字符串;根据预设的第二算法,对第三位置处的字符串进行计算,得到第二校验值;获取目标程序中,位于预设的第四位置处的字符串,为第二目标值;其中,第二目标值表示在生成目标程序时,基于预设的第二算法,对位于预设的第三位置处的字符串进行计算所得到的字符串;将第二校验值与第二目标值进行比较,若第二校验值和第二目标值一致,则确定目标程序校验通过,执行运行待更新应用的目标程序。
具体的,在得到目标程序,即得到待更新应用的程序后,从待更新应用的程序中获取位于预设的第三位置处的字符串。待更新应用的程序可以包括两部分,分别是位于第三位置处的字符串和位于第四位置处的字符串。第三位置处的字符串用于表示软件开发者编写的待更新应用的运行代码,第四位置处的字符串是软件开发者在编写完代码后,采用预设的第二算法,对代码进行计算所得到的结果。即,软件开发者在编写完运行代码后,基于预设的第二算法,对运行代码进行计算,计算的结果作为第二目标值。将运行代码放置在待更新应用的程序中的第三位置处,将第二目标值放置在待更新应用的程序中的第四位置处。
在网络电源得到目标程序后,从目标程序中获取位于预设的第三位置处的字符串。根据预设的第二算法,对第三位置处的字符串进行计算,得到的结果为第二校验值。本实施例中,对第二算法不做具体限制,例如,第二算法可以是哈希算法,对第三位置处的字符串进行哈希计算;也可以根据预设的密钥,基于预设的第二算法,对第三位置处的字符串进行计算。
从目标程序中,获取位于第四位置处的字符串,得到第二目标值。第二目标值是,在生成目标程序时,即在生成待更新应用的程序时,基于预设的第二算法,对位于第三位置处的字符串进行计算所得到的字符串。若网络电源从第三位置处得到的字符串与软件开发者在生成待更新应用的程序时第三位置处的字符串一致,则第二校验值与第二目标值应该一致。因此,将第二校验值与第二目标值进行比较,若二者一致,则说明目标程序是软件开发者所确定的程序,目标程序的校验通过,网络电源可以运行待更新应用的目标程序;若二者不一致,则说明软件开发者所确定的程序被人篡改,网络电源可以向系统端发出提示信息,提示工作人员对待更新应用的程序进行检查,网络电源不运行错误的目标程序。
这样设置的有益效果在于,在解密得到目标程序后,再次对目标程序进行校验,确保目标程序正确,避免网络电源运行错误的程序,导致网络电源无法向数据中心设备供电,有效提高应用更新的准确性,并保证数据中心设备正常运行。
本申请实施例提供的一种网络电源程序的在线更新方法,网络电源中预先存储有密钥,在网络电源接收到待更新应用的密文后,采用预存的密钥对密文进行校验。若校验通过,则可以对密文进行解密,更新对应的待更新应用。解决了现有技术中,系统端将明文传输给网络电源所造成的数据泄露和篡改等问题。密钥不是存储在系统端,避免了系统端中的密钥泄露,从而造成网络电源的软件被篡改。通过将密钥存储在网络电源,有效提高了密文校验的安全性,进而保证网络电源的正常工作。
图6为本申请实施例提供的一种网络电源程序的在线更新装置的结构框图。为了便于说明,仅示出了与本公开实施例相关的部分。参照图6,该装置包括:密文接收模块601、密文校验模块602和应用更新模块603。
密文接收模块601,用于接收系统端发送的待更新应用的密文;其中,所述待更新应用的密文是采用预设的密钥对待更新应用的程序进行加密所产生;
密文校验模块602,用于根据所述网络电源中预先存储的密钥,对所述待更新应用的密文进行校验,得到校验结果;
应用更新模块603,用于若所述校验结果为校验通过,则对所述待更新应用的密文进行解密,并根据解密后得到的程序更新所述待更新应用。
图7为本申请实施例提供的一种网络电源程序的在线更新装置的结构框图,在图6所示实施例的基础上,如图7所示,密文校验模块602包括密钥获取单元6021、第一计算单元6022和第一校验单元6023。
密钥获取单元6021,用于获取所述网络电源出厂时,预先存储在所述网络电源中的密钥;
第一计算单元6022,用于根据所述网络电源中预先存储的密钥,基于预设的第一加密算法,对所述待更新应用的密文进行计算,得到第一校验值;
第一校验单元6023,用于根据所述第一校验值,对所述待更新应用的密文进行真实性和完整性校验,得到所述校验结果。
一个示例中,第一计算单元6022,具体用于:
获取所述待更新应用的密文中,位于预设的第一位置处的字符串,为待校验字符串;
根据所述网络电源中预先存储的密钥,基于预设的第一加密算法,对所述待校验字符串进行计算,得到第一校验值。
一个示例中,第一校验单元6023,具体用于:
获取所述待更新应用的密文中,位于预设的第二位置处的字符串,为第一目标值;其中,所述第一目标值表示在生成待更新应用的密文时,基于预设的第一加密算法,对位于预设的第一位置处的字符串进行计算所得到的字符串;
将所述第一校验值与所述第一目标值进行比较,若所述第一校验值和所述第一目标值一致,则确定所述待更新应用的密文的真实性和完整性的校验结果为校验通过。
一个示例中,该装置还包括:
提示发送模块,用于在将所述第一校验值与所述第一目标值进行比较之后,若所述第一校验值和所述第一目标值不一致,则向所述系统端发送提示信息,以提示系统端重新发送所述待更新应用的密文。
一个示例中,该装置还包括:
第一存储模块,用于在接收系统端发送的待更新应用的密文之后,将所述待更新应用的密文存储至所述网络电源中预设的存储位置处。
一个示例中,该装置还包括:
第二存储模块,用于在接收系统端发送的待更新应用的密文之后,将所述待更新应用的密文存储至一外置存储器中。
一个示例中,应用更新模块603,包括:
程序替换单元,用于擦除所述待更新应用的当前程序,将解密后得到的程序作为目标程序,更新所述待更新应用;
程序运行单元,用于运行所述待更新应用的目标程序。
一个示例中,该装置还包括:
字符串获取模块,用于在运行所述待更新应用的目标程序之前,获取所述目标程序中,位于预设的第三位置处的字符串;
第二计算模块,用于根据预设的第二算法,对所述第三位置处的字符串进行计算,得到第二校验值;
目标值获取模块,用于获取所述目标程序中,位于预设的第四位置处的字符串,为第二目标值;其中,所述第二目标值表示在生成所述目标程序时,基于预设的第二算法,对位于预设的第三位置处的字符串进行计算所得到的字符串;
第二校验模块,用于将所述第二校验值与所述第二目标值进行比较,若所述第二校验值和所述第二目标值一致,则确定所述目标程序校验通过,执行所述运行所述待更新应用的目标程序。
一个示例中,待更新应用的密文是软件开发者通过预设的密钥对所述待更新应用的程序进行加密所产生。
本申请实施例还公开了一种网络电源,网络电源中设置有网络电源程序的在线更新装置,网络电源能够执行如本申请任意实施例所述的网络电源程序的在线更新方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。
Claims (13)
1.一种网络电源程序的在线更新方法,其特征在于,所述方法包括:
接收系统端发送的待更新应用的密文;其中,所述待更新应用的密文是采用预设的密钥对待更新应用的程序进行加密所产生;
根据所述网络电源中预先存储的密钥,对所述待更新应用的密文进行校验,得到校验结果;
若所述校验结果为校验通过,则对所述待更新应用的密文进行解密,并根据解密后得到的程序更新所述待更新应用。
2.根据权利要求1所述的方法,其特征在于,根据所述网络电源中预先存储的密钥,对所述待更新应用的密文进行校验,得到校验结果,包括:
获取所述网络电源出厂时,预先存储在所述网络电源中的密钥;
根据所述网络电源中预先存储的密钥,基于预设的第一加密算法,对所述待更新应用的密文进行计算,得到第一校验值;
根据所述第一校验值,对所述待更新应用的密文进行真实性和完整性校验,得到所述校验结果。
3.根据权利要求2所述的方法,其特征在于,根据所述网络电源中预先存储的密钥,基于预设的第一加密算法,对所述待更新应用的密文进行计算,得到第一校验值,包括:
获取所述待更新应用的密文中,位于预设的第一位置处的字符串,为待校验字符串;
根据所述网络电源中预先存储的密钥,基于预设的第一加密算法,对所述待校验字符串进行计算,得到第一校验值。
4.根据权利要求3所述的方法,其特征在于,根据所述第一校验值,对所述待更新应用的密文进行真实性和完整性校验,得到所述校验结果,包括:
获取所述待更新应用的密文中,位于预设的第二位置处的字符串,为第一目标值;其中,所述第一目标值表示在生成待更新应用的密文时,基于预设的第一加密算法,对位于预设的第一位置处的字符串进行计算所得到的字符串;
将所述第一校验值与所述第一目标值进行比较,若所述第一校验值和所述第一目标值一致,则确定所述待更新应用的密文的真实性和完整性的校验结果为校验通过。
5.根据权利要求4所述的方法,其特征在于,在将所述第一校验值与所述第一目标值进行比较之后,还包括:
若所述第一校验值和所述第一目标值不一致,则向所述系统端发送提示信息,以提示系统端重新发送所述待更新应用的密文。
6.根据权利要求1所述的方法,其特征在于,在接收系统端发送的待更新应用的密文之后,还包括:
将所述待更新应用的密文存储至所述网络电源中预设的存储位置处。
7.根据权利要求1所述的方法,其特征在于,在接收系统端发送的待更新应用的密文之后,还包括:
将所述待更新应用的密文存储至一外置存储器中。
8.根据权利要求1所述的方法,其特征在于,根据解密后得到的程序更新所述待更新应用,包括:
擦除所述待更新应用的当前程序,将解密后得到的程序作为目标程序,更新所述待更新应用;
运行所述待更新应用的目标程序。
9.根据权利要求8所述的方法,其特征在于,在运行所述待更新应用的目标程序之前,还包括:
获取所述目标程序中,位于预设的第三位置处的字符串;
根据预设的第二算法,对所述第三位置处的字符串进行计算,得到第二校验值;
获取所述目标程序中,位于预设的第四位置处的字符串,为第二目标值;其中,所述第二目标值表示在生成所述目标程序时,基于预设的第二算法,对位于预设的第三位置处的字符串进行计算所得到的字符串;
将所述第二校验值与所述第二目标值进行比较,若所述第二校验值和所述第二目标值一致,则确定所述目标程序校验通过,执行所述运行所述待更新应用的目标程序。
10.根据权利要求1所述的方法,其特征在于,所述待更新应用的密文是软件开发者通过预设的密钥对所述待更新应用的程序进行加密所产生。
11.一种网络电源程序的在线更新装置,其特征在于,所述装置包括:
密文接收模块,用于接收系统端发送的待更新应用的密文;其中,所述待更新应用的密文是采用预设的密钥对待更新应用的程序进行加密所产生;
密文校验模块,用于根据所述网络电源中预先存储的密钥,对所述待更新应用的密文进行校验,得到校验结果;
应用更新模块,用于若所述校验结果为校验通过,则对所述待更新应用的密文进行解密,并根据解密后得到的程序更新所述待更新应用。
12.根据权利要求11所述的装置,其特征在于,所述密文校验模块包括:
密钥获取单元,用于获取所述网络电源出厂时,预先存储在所述网络电源中的密钥;
第一计算单元,用于根据所述网络电源中预先存储的密钥,基于预设的第一加密算法,对所述待更新应用的密文进行计算,得到第一校验值;
第一校验单元,用于根据所述第一校验值,对所述待更新应用的密文进行真实性和完整性校验,得到所述校验结果。
13.一种实现如权利要求1-10中任一项所述的网络电源程序的在线更新方法的网络电源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310015287.4A CN116301961A (zh) | 2023-01-05 | 2023-01-05 | 网络电源程序的在线更新方法、装置及网络电源 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310015287.4A CN116301961A (zh) | 2023-01-05 | 2023-01-05 | 网络电源程序的在线更新方法、装置及网络电源 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116301961A true CN116301961A (zh) | 2023-06-23 |
Family
ID=86776935
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310015287.4A Pending CN116301961A (zh) | 2023-01-05 | 2023-01-05 | 网络电源程序的在线更新方法、装置及网络电源 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116301961A (zh) |
-
2023
- 2023-01-05 CN CN202310015287.4A patent/CN116301961A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230353390A1 (en) | Method for upgrading certificate of pos terminal, server, and pos terminal | |
CN101145906B (zh) | 对单向网络中的接收终端进行合法性认证的方法及系统 | |
JP4501349B2 (ja) | システムモジュール実行装置 | |
CN112887282B (zh) | 一种身份认证方法、装置、系统及电子设备 | |
CN110688660B (zh) | 一种终端安全启动的方法及装置、存储介质 | |
CN113014444B (zh) | 一种物联网设备生产测试系统及安全保护方法 | |
CN103138939A (zh) | 云存储模式下基于可信平台模块的密钥使用次数管理方法 | |
CN111162911B (zh) | 一种plc固件升级系统及方法 | |
KR20180046593A (ko) | 펌웨어 서명 검증과 보안키 관리를 위한 사물인터넷 디바이스의 펌웨어 업데이트 시스템 | |
CN111143856A (zh) | 一种plc远程固件升级系统及方法 | |
CN110912892B (zh) | 一种证书管理方法、装置、电子设备及存储介质 | |
US20050049970A1 (en) | Program creation apparatus | |
CN113703911B (zh) | 一种虚拟机迁移方法、装置、设备、存储介质 | |
CN112182551B (zh) | Plc设备身份认证系统和plc设备身份认证方法 | |
CN112417422B (zh) | 安全芯片升级方法及计算机可读存储介质 | |
US11190351B2 (en) | Key generation method and acquisition method, private key update method, chip, and server | |
JPWO2019142307A1 (ja) | 半導体装置、更新データ提供方法、更新データ受取方法およびプログラム | |
CN111400771A (zh) | 目标分区的校验方法及装置、存储介质、计算机设备 | |
CN113708920A (zh) | 一种基于冗余密码算法进行安全启动的方法及设备 | |
CN116301961A (zh) | 网络电源程序的在线更新方法、装置及网络电源 | |
US20240231800A1 (en) | Method for online updating program of network power supply, network power supply and communication system | |
CN114024702A (zh) | 信息安全保护的方法以及计算设备 | |
CN110740041A (zh) | 基于可信计算模块的嵌入式系统安全启动与可信度量的方法 | |
CN114726539B (zh) | 一种基于可信密码模块tcm的离线升级方法 | |
JP2020150310A (ja) | 情報処理装置、暗号化データの復号方法及び電子機器 |
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 |