CN108566280A - 一种fpga硬件加速程序的远程升级方法和系统 - Google Patents

一种fpga硬件加速程序的远程升级方法和系统 Download PDF

Info

Publication number
CN108566280A
CN108566280A CN201810366551.8A CN201810366551A CN108566280A CN 108566280 A CN108566280 A CN 108566280A CN 201810366551 A CN201810366551 A CN 201810366551A CN 108566280 A CN108566280 A CN 108566280A
Authority
CN
China
Prior art keywords
program
fpga hardware
accelerates
upgrade package
hardware
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
CN201810366551.8A
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.)
Jinan Inspur Hi Tech Investment and Development Co Ltd
Original Assignee
Jinan Inspur Hi Tech Investment and Development 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 Jinan Inspur Hi Tech Investment and Development Co Ltd filed Critical Jinan Inspur Hi Tech Investment and Development Co Ltd
Priority to CN201810366551.8A priority Critical patent/CN108566280A/zh
Publication of CN108566280A publication Critical patent/CN108566280A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/32Cryptographic 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/3247Cryptographic 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
    • 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/10Protocols in which an application is distributed across nodes in the network
    • 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 
    • 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/32Cryptographic 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/3263Cryptographic 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种FPGA硬件加速程序的远程升级方法和系统,包括:云数据中心存储至少一个现场可编程门阵列FPGA硬件加速程序;根据至少一个FPGA硬件加速程序,生成至少一个FPGA硬件加速程序升级包;存储智能设备终端的注册信息;还包括:智能设备终端根据预先存储的下载地址访问云数据中心,根据注册信息,判断是否需要升级,如果是,根据注册信息,在至少一个FPGA硬件加速程序升级包中确定目标FPGA硬件加速程序升级包,下载目标FPGA硬件加速程序升级包;利用目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新,并根据目标FPGA硬件加速程序升级包更新注册信息。本发明提供的方案能够降低FPGA硬件加速程序升级的成本。

Description

一种FPGA硬件加速程序的远程升级方法和系统
技术领域
本发明涉及计算机技术领域,特别涉及一种FPGA硬件加速程序的远程升级方法和系统。
背景技术
随着人工智能技术的发展,智能设备终端的智能化、网联化趋势更加明显,智能设备终端的能力逐步增强。为了保证智能设备终端适应业务需求,需要定期对智能设备终端进行维护,例如,定期对FPGA(Field-Programmable Gate Array,现场可编程门阵列)硬件加速程序进行升级。
现有技术中,当对FPGA硬件加速程序进行升级时,需要停止智能设备终端的运行。
但是,该方法成本较高。
发明内容
本发明实施例提供了一种FPGA硬件加速程序的远程升级方法和系统,能够降低FPGA硬件加速程序升级的成本。
第一方面,本发明实施例提供了一种FPGA硬件加速程序的远程升级方法,包括:
云数据中心存储至少一个FPGA硬件加速程序;根据所述至少一个FPGA硬件加速程序,生成至少一个FPGA硬件加速程序升级包;存储智能设备终端的注册信息;
还包括:
所述智能设备终端根据预先存储的下载地址访问所述云数据中心,根据所述注册信息,判断是否需要升级,如果是,
根据所述注册信息,在所述至少一个FPGA硬件加速程序升级包中确定目标FPGA硬件加速程序升级包,下载所述目标FPGA硬件加速程序升级包;
利用所述目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新,并根据所述目标FPGA硬件加速程序升级包更新所述注册信息。
优选地,
进一步包括:
所述云数据中心生成主密钥对和签名密钥对,利用所述主密钥对的私钥对所述签名密钥对进行签名,生成第一签名信息;
所述智能设备终端存储所述主密钥对的公钥;
所述根据所述至少一个FPGA硬件加速程序,生成至少一个FPGA硬件加速程序升级包,包括:
针对每一个所述FPGA硬件加速程序,均执行:利用所述签名密钥对的私钥对当前FPGA硬件加速程序进行签名,生成第二签名信息;根据所述第一签名信息、所述第二签名信息和所述当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
在所述下载所述目标FPGA硬件加速程序升级包之后,在所述利用所述目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新之前,进一步包括:
所述智能设备终端利用所述主密钥对的公钥对所述目标FPGA硬件加速程序升级包中的第一签名信息进行验证,当验证通过时,
利用所述签名密钥的公钥对所述目标FPGA硬件加速程序升级包中的第二签名信息进行验证,当验证通过时,执行所述利用所述目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新。
优选地,
进一步包括:
所述云数据中心向数字认证中心发送证书申请;
所述数字认证中心根据所述证书申请对所述云数据中心进行验证,当验证通过时,根据所述签名密钥对的公钥生成数字证书,将所述数字证书反馈给所述云数据中心;
所述根据所述第一签名信息、所述第二签名信息和所述当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包,包括:
根据所述第一签名信息、所述第二签名信息、所述数字证书和所述当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
在所述利用所述签名密钥的公钥对所述目标FPGA硬件加速程序升级包中的第二签名信息进行验证之前,进一步包括:
利用预先存储的所述数字认证中心的公钥对所述目标FPGA硬件加速程序升级包中的所述数字证书进行解密,得到标准公钥,当所述签名密钥的公钥与所述标准公钥相同时,执行所述利用所述签名密钥的公钥对所述目标FPGA硬件加速程序升级包中的第二签名信息进行验证。
优选地,
所述注册信息,包括:终端标识、FPGA类型、FPGA程序版本中任意一种或多种的组合。
第二方面,本发明实施例提供了一种FPGA硬件加速程序的远程升级系统,包括:云数据中心和至少一个智能设备终端;
所述云数据中心,用于存储至少一个FPGA硬件加速程序;根据所述至少一个FPGA硬件加速程序,生成至少一个FPGA硬件加速程序升级包;存储智能设备终端的注册信息;
所述智能设备终端,用于根据预先存储的下载地址访问所述云数据中心,根据所述注册信息,判断是否需要升级,如果是,根据所述注册信息,在所述至少一个FPGA硬件加速程序升级包中确定目标FPGA硬件加速程序升级包,下载所述目标FPGA硬件加速程序升级包;利用所述目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新,并根据所述目标FPGA硬件加速程序升级包更新所述注册信息。
优选地,
所述云数据中心,进一步用于生成主密钥对和签名密钥对,利用所述主密钥对的私钥对所述签名密钥对进行签名,生成第一签名信息;
所述云数据中心,用于针对每一个所述FPGA硬件加速程序,均执行:利用所述签名密钥对的私钥对当前FPGA硬件加速程序进行签名,生成第二签名信息;根据所述第一签名信息、所述第二签名信息和所述当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
所述智能设备终端,进一步用于存储所述主密钥对的公钥;利用所述主密钥对的公钥对所述目标FPGA硬件加速程序升级包中的第一签名信息进行验证,当验证通过时,利用所述签名密钥的公钥对所述目标FPGA硬件加速程序升级包中的第二签名信息进行验证,当验证通过时,执行所述利用所述目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新。
优选地,
进一步包括:数字认证中心;
所述云数据中心,进一步用于向所述数字认证中心发送证书申请;
所述数字认证中心,用于根据所述证书申请对所述云数据中心进行验证,当验证通过时,根据所述签名密钥对的公钥生成数字证书,将所述数字证书反馈给所述云数据中心;
所述云数据中心,用于根据所述第一签名信息、所述第二签名信息、所述数字证书和所述当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
所述智能设备终端,进一步用于利用预先存储的所述数字认证中心的公钥对所述目标FPGA硬件加速程序升级包中的所述数字证书进行解密,得到标准公钥,当所述签名密钥的公钥与所述标准公钥相同时,执行所述利用所述签名密钥的公钥对所述目标FPGA硬件加速程序升级包中的第二签名信息进行验证。
优选地,
所述注册信息,包括:终端标识、FPGA类型、FPGA程序版本中任意一种或多种的组合。
本发明实施例提供了一种FPGA硬件加速程序的远程升级方法和系统,在该方法中,云数据中心存储多个FPGA硬件加速程序升级包,智能设备终端能够周期性地访问云数据中心,并根据注册信息确定升级所需的目标FPGA硬件加速程序升级包,并将其下载至本地存储,并利用目标FPGA硬件加速程序升级包在不掉电的情况下,对已安装的FPGA硬件加速程序进行更新。该方法不需要停止智能设备终端的运行,能够节约成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种FPGA硬件加速程序的远程升级方法的流程图;
图2是本发明一个实施例提供的一种FPGA硬件加速程序的远程升级系统的结构示意图;
图3是本发明另一个实施例提供的一种FPGA硬件加速程序的远程升级系统的结构示意图;
图4是本发明另一个实施例提供的一种FPGA硬件加速程序的远程升级方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种FPGA硬件加速程序的远程升级方法,该方法可以包括以下步骤:
步骤101:云数据中心存储至少一个FPGA硬件加速程序;根据至少一个FPGA硬件加速程序,生成至少一个FPGA硬件加速程序升级包;存储智能设备终端的注册信息;
步骤102:智能设备终端根据预先存储的下载地址访问云数据中心;
步骤103:根据注册信息,判断是否需要升级,如果是,执行步骤104;
步骤104:根据注册信息,在至少一个FPGA硬件加速程序升级包中确定目标FPGA硬件加速程序升级包,下载目标FPGA硬件加速程序升级包;
步骤105:利用目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新,并根据目标FPGA硬件加速程序升级包更新注册信息。
在该方法中,云数据中心存储多个FPGA硬件加速程序升级包,智能设备终端能够周期性地访问云数据中心,并根据注册信息确定升级所需的目标FPGA硬件加速程序升级包,并将其下载至本地存储,并利用目标FPGA硬件加速程序升级包在不掉电的情况下,对已安装的FPGA硬件加速程序进行更新。该方法不需要停止智能设备终端的运行,能够节约成本。
在本发明的一个实施例中,为了提高升级过程的安全性,该方法还包括:
云数据中心生成主密钥对和签名密钥对,利用主密钥对的私钥对签名密钥对进行签名,生成第一签名信息;
智能设备终端存储主密钥对的公钥;
根据至少一个FPGA硬件加速程序,生成至少一个FPGA硬件加速程序升级包,包括:
针对每一个FPGA硬件加速程序,均执行:利用签名密钥对的私钥对当前FPGA硬件加速程序进行签名,生成第二签名信息;根据第一签名信息、第二签名信息和当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
在下载目标FPGA硬件加速程序升级包之后,在利用目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新之前,进一步包括:
智能设备终端利用主密钥对的公钥对目标FPGA硬件加速程序升级包中的第一签名信息进行验证,当验证通过时,
利用签名密钥的公钥对目标FPGA硬件加速程序升级包中的第二签名信息进行验证,当验证通过时,执行利用目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新。
在本发明实施例中,智能设备终端利用主密钥对的公钥通过验证数字签名来验证签名密钥对及其身份的合法性,再利用签名密钥对的公钥通过验证数字签名来验证升级所需的FPGA硬件加速程序的合法性。
在本发明的一个实施例中,为了进一步提高升级过程的安全性,该方法还包括:
云数据中心向数字认证中心发送证书申请;
数字认证中心根据证书申请对云数据中心进行验证,当验证通过时,根据签名密钥对的公钥生成数字证书,将数字证书反馈给云数据中心;
根据第一签名信息、第二签名信息和当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包,包括:
根据第一签名信息、第二签名信息、数字证书和当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
在利用签名密钥的公钥对目标FPGA硬件加速程序升级包中的第二签名信息进行验证之前,进一步包括:
利用预先存储的数字认证中心的公钥对目标FPGA硬件加速程序升级包中的数字证书进行解密,得到标准公钥,当签名密钥的公钥与标准公钥相同时,执行利用签名密钥的公钥对目标FPGA硬件加速程序升级包中的第二签名信息进行验证。
在本发明实施例中,通过数字证书验证签名密钥的公钥,以防止不法分子篡改签名密钥的公钥,提高升级过程的安全性。
在本发明的一个实施例中,注册信息,包括:终端标识、FPGA类型、FPGA程序版本中任意一种或多种的组合。
根据注册信息可以得知当前安装的FPGA硬件加速程序的版本,由此可以确定升级所需的目标FPGA硬件加速程序。
需要说明的是,在实际应用场景中,注册信息还可以包括智能设备终端中的硬件信息等。
如图2所示,本发明实施例提供了一种FPGA硬件加速程序的远程升级系统,包括:云数据中心201和至少一个智能设备终端202;
云数据中心201,用于存储至少一个FPGA硬件加速程序;根据至少一个FPGA硬件加速程序,生成至少一个FPGA硬件加速程序升级包;存储智能设备终端202的注册信息;
智能设备终端202,用于根据预先存储的下载地址访问云数据中心201,根据注册信息,判断是否需要升级,如果是,根据注册信息,在至少一个FPGA硬件加速程序升级包中确定目标FPGA硬件加速程序升级包,下载目标FPGA硬件加速程序升级包;利用目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新,并根据目标FPGA硬件加速程序升级包更新注册信息。
在本发明的一个实施例中,云数据中心201,进一步用于生成主密钥对和签名密钥对,利用主密钥对的私钥对签名密钥对进行签名,生成第一签名信息;
云数据中心201,用于针对每一个FPGA硬件加速程序,均执行:利用签名密钥对的私钥对当前FPGA硬件加速程序进行签名,生成第二签名信息;根据第一签名信息、第二签名信息和当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
智能设备终端202,进一步用于存储主密钥对的公钥;利用主密钥对的公钥对目标FPGA硬件加速程序升级包中的第一签名信息进行验证,当验证通过时,利用签名密钥的公钥对目标FPGA硬件加速程序升级包中的第二签名信息进行验证,当验证通过时,执行利用目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新。
在本发明的一个实施例中,如图3所示,该系统还包括:数字认证中心203;
云数据中心201,进一步用于向数字认证中心203发送证书申请;
数字认证中心203,用于根据证书申请对云数据中心201进行验证,当验证通过时,根据签名密钥对的公钥生成数字证书,将数字证书反馈给云数据中心201;
云数据中心201,用于根据第一签名信息、第二签名信息、数字证书和当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
智能设备终端202,进一步用于利用预先存储的数字认证中心203的公钥对目标FPGA硬件加速程序升级包中的数字证书进行解密,得到标准公钥,当签名密钥的公钥与标准公钥相同时,执行利用签名密钥的公钥对目标FPGA硬件加速程序升级包中的第二签名信息进行验证。
在本发明的一个实施例中,注册信息,包括:终端标识、FPGA类型、FPGA程序版本中任意一种或多种的组合。
如图4所示,本发明实施例以智能设备终端、云数据中心、数字认证中心形成的FPGA硬件加速程序的远程升级系统为例,对FPGA硬件加速程序的远程升级方法进行详细地说明,该方法包括:
步骤401:云数据中心存储智能设备终端的注册信息和至少一个FPGA硬件加速程序;生成主密钥对和签名密钥对。
注册信息,包括:终端标识、FPGA类型、FPGA程序版本中任意一种或多种的组合。
步骤402:智能设备终端存储主密钥对的公钥。
步骤403:云数据中心向数字认证中心发送证书申请。
步骤404:数字认证中心根据证书申请对云数据中心进行验证,当验证通过时,根据签名密钥对的公钥生成数字证书,将数字证书反馈给云数据中心。
步骤405:云数据中心利用主密钥对的私钥对签名密钥对进行签名,生成第一签名信息;针对每一个FPGA硬件加速程序,均执行:利用签名密钥对的私钥对当前FPGA硬件加速程序进行签名,生成第二签名信息;根据第一签名信息、第二签名信息、数字证书和当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包。
步骤406:智能设备终端根据预先存储的下载地址访问云数据中心,根据注册信息,判断是否需要升级,如果是,执行步骤407。
步骤407:根据注册信息,在至少一个FPGA硬件加速程序升级包中确定目标FPGA硬件加速程序升级包,下载目标FPGA硬件加速程序升级包。
步骤408:智能设备终端利用主密钥对的公钥对目标FPGA硬件加速程序升级包中的第一签名信息进行验证,当验证通过时,执行步骤409。
步骤409:利用预先存储的数字认证中心的公钥对目标FPGA硬件加速程序升级包中的数字证书进行解密,得到标准公钥,当签名密钥的公钥与标准公钥相同时,执行步骤410。
步骤410:利用签名密钥的公钥对目标FPGA硬件加速程序升级包中的第二签名信息进行验证,当验证通过时,执行步骤411。
步骤411:利用目标FPGA硬件加速程序升级包中的FPGA硬件加速程序对当前安装的FPGA硬件加速程序进行更新,并根据目标FPGA硬件加速程序升级包中的FPGA硬件加速程序更新注册信息。
上述系统内的各装置之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
综上,本发明各个实施例至少具有如下效果:
1、在本发明实施例中,云数据中心存储多个FPGA硬件加速程序升级包,智能设备终端能够周期性地访问云数据中心,并根据注册信息确定升级所需的目标FPGA硬件加速程序升级包,并将其下载至本地存储,并利用目标FPGA硬件加速程序升级包在不掉电的情况下,对已安装的FPGA硬件加速程序进行更新。该方法不需要停止智能设备终端的运行,能够节约成本。
2、在本发明实施例中,通过云数据中心统一管理智能终端设备,有效的解决智能终端业务远程维护问题,用FPGA功耗低、实时并行处理能力强的特点,满足物联网智能设备终端对功耗、计算力、体积限制的要求,同时FPGA具有动态可擦洗的能力,根据边缘侧应用个性化的需求进行不掉电动态升级优化,实时响应客户业务需求的变化。通过数字签名来验证远程FPGA硬件加速程序升级包的合法性,保证了升级过程的安全性。并且,采用设备单向访问的方式,由智能设备终端发起请求,也满足智能制造、工业现场等客户应用场景的网络安全性要求。另外,采用两级数字签名也增强了认证的安全性。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (8)

1.一种FPGA硬件加速程序的远程升级方法,其特征在于,
云数据中心存储至少一个现场可编程门阵列FPGA硬件加速程序;根据所述至少一个FPGA硬件加速程序,生成至少一个FPGA硬件加速程序升级包;存储智能设备终端的注册信息;
还包括:
所述智能设备终端根据预先存储的下载地址访问所述云数据中心,根据所述注册信息,判断是否需要升级,如果是,
根据所述注册信息,在所述至少一个FPGA硬件加速程序升级包中确定目标FPGA硬件加速程序升级包,下载所述目标FPGA硬件加速程序升级包;
利用所述目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新,并根据所述目标FPGA硬件加速程序升级包更新所述注册信息。
2.根据权利要求1所述的FPGA硬件加速程序的远程升级方法,其特征在于,进一步包括:
所述云数据中心生成主密钥对和签名密钥对,利用所述主密钥对的私钥对所述签名密钥对进行签名,生成第一签名信息;
所述智能设备终端存储所述主密钥对的公钥;
所述根据所述至少一个FPGA硬件加速程序,生成至少一个FPGA硬件加速程序升级包,包括:
针对每一个所述FPGA硬件加速程序,均执行:利用所述签名密钥对的私钥对当前FPGA硬件加速程序进行签名,生成第二签名信息;根据所述第一签名信息、所述第二签名信息和所述当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
在所述下载所述目标FPGA硬件加速程序升级包之后,在所述利用所述目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新之前,进一步包括:
所述智能设备终端利用所述主密钥对的公钥对所述目标FPGA硬件加速程序升级包中的第一签名信息进行验证,当验证通过时,
利用所述签名密钥的公钥对所述目标FPGA硬件加速程序升级包中的第二签名信息进行验证,当验证通过时,执行所述利用所述目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新。
3.根据权利要求2所述的FPGA硬件加速程序的远程升级方法,其特征在于,进一步包括:
所述云数据中心向数字认证中心发送证书申请;
所述数字认证中心根据所述证书申请对所述云数据中心进行验证,当验证通过时,根据所述签名密钥对的公钥生成数字证书,将所述数字证书反馈给所述云数据中心;
所述根据所述第一签名信息、所述第二签名信息和所述当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包,包括:
根据所述第一签名信息、所述第二签名信息、所述数字证书和所述当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
在所述利用所述签名密钥的公钥对所述目标FPGA硬件加速程序升级包中的第二签名信息进行验证之前,进一步包括:
利用预先存储的所述数字认证中心的公钥对所述目标FPGA硬件加速程序升级包中的所述数字证书进行解密,得到标准公钥,当所述签名密钥的公钥与所述标准公钥相同时,执行所述利用所述签名密钥的公钥对所述目标FPGA硬件加速程序升级包中的第二签名信息进行验证。
4.根据权利要求1-3中任一所述的FPGA硬件加速程序的远程升级方法,其特征在于,
所述注册信息,包括:终端标识、FPGA类型、FPGA程序版本中任意一种或多种的组合。
5.一种FPGA硬件加速程序的远程升级系统,其特征在于,包括:云数据中心和至少一个智能设备终端;
所述云数据中心,用于存储至少一个现场可编程门阵列FPGA硬件加速程序;根据所述至少一个FPGA硬件加速程序,生成至少一个FPGA硬件加速程序升级包;存储智能设备终端的注册信息;
所述智能设备终端,用于根据预先存储的下载地址访问所述云数据中心,根据所述注册信息,判断是否需要升级,如果是,根据所述注册信息,在所述至少一个FPGA硬件加速程序升级包中确定目标FPGA硬件加速程序升级包,下载所述目标FPGA硬件加速程序升级包;利用所述目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新,并根据所述目标FPGA硬件加速程序升级包更新所述注册信息。
6.根据权利要求5所述的FPGA硬件加速程序的远程升级系统,其特征在于,
所述云数据中心,进一步用于生成主密钥对和签名密钥对,利用所述主密钥对的私钥对所述签名密钥对进行签名,生成第一签名信息;
所述云数据中心,用于针对每一个所述FPGA硬件加速程序,均执行:利用所述签名密钥对的私钥对当前FPGA硬件加速程序进行签名,生成第二签名信息;根据所述第一签名信息、所述第二签名信息和所述当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
所述智能设备终端,进一步用于存储所述主密钥对的公钥;利用所述主密钥对的公钥对所述目标FPGA硬件加速程序升级包中的第一签名信息进行验证,当验证通过时,利用所述签名密钥的公钥对所述目标FPGA硬件加速程序升级包中的第二签名信息进行验证,当验证通过时,执行所述利用所述目标FPGA硬件加速程序升级包对当前安装的FPGA硬件加速程序进行更新。
7.根据权利要求6所述的FPGA硬件加速程序的远程升级系统,其特征在于,进一步包括:数字认证中心;
所述云数据中心,进一步用于向所述数字认证中心发送证书申请;
所述数字认证中心,用于根据所述证书申请对所述云数据中心进行验证,当验证通过时,根据所述签名密钥对的公钥生成数字证书,将所述数字证书反馈给所述云数据中心;
所述云数据中心,用于根据所述第一签名信息、所述第二签名信息、所述数字证书和所述当前FPGA硬件加速程序,生成当前FPGA硬件加速程序升级包;
所述智能设备终端,进一步用于利用预先存储的所述数字认证中心的公钥对所述目标FPGA硬件加速程序升级包中的所述数字证书进行解密,得到标准公钥,当所述签名密钥的公钥与所述标准公钥相同时,执行所述利用所述签名密钥的公钥对所述目标FPGA硬件加速程序升级包中的第二签名信息进行验证。
8.根据权利要求5-7中任一所述的FPGA硬件加速程序的远程升级系统,其特征在于,
所述注册信息,包括:终端标识、FPGA类型、FPGA程序版本中任意一种或多种的组合。
CN201810366551.8A 2018-04-23 2018-04-23 一种fpga硬件加速程序的远程升级方法和系统 Pending CN108566280A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810366551.8A CN108566280A (zh) 2018-04-23 2018-04-23 一种fpga硬件加速程序的远程升级方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810366551.8A CN108566280A (zh) 2018-04-23 2018-04-23 一种fpga硬件加速程序的远程升级方法和系统

Publications (1)

Publication Number Publication Date
CN108566280A true CN108566280A (zh) 2018-09-21

Family

ID=63535991

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810366551.8A Pending CN108566280A (zh) 2018-04-23 2018-04-23 一种fpga硬件加速程序的远程升级方法和系统

Country Status (1)

Country Link
CN (1) CN108566280A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543320A (zh) * 2019-09-06 2019-12-06 山东浪潮人工智能研究院有限公司 一种基于云端的车载obd远程升级方法和系统
CN111142915A (zh) * 2018-11-06 2020-05-12 阿里巴巴集团控股有限公司 更新方法、装置和设备
CN112328279A (zh) * 2020-11-02 2021-02-05 宁波和利时信息安全研究院有限公司 系统固件文件升级方法、装置及系统
CN114115022A (zh) * 2021-11-19 2022-03-01 云南电网有限责任公司电力科学研究院 一种fpga硬件加速阵列升级方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103546576A (zh) * 2013-10-31 2014-01-29 中安消技术有限公司 一种嵌入式设备远程自动升级方法和系统
CN103595802A (zh) * 2013-11-19 2014-02-19 烽火通信科技股份有限公司 家庭网关软件远程自动升级的方法
CN105933150A (zh) * 2016-04-20 2016-09-07 努比亚技术有限公司 Ota升级方法、装置及系统
CN106027580A (zh) * 2015-03-18 2016-10-12 青岛海尔空调电子有限公司 一种程序远程升级方法
US20170019399A1 (en) * 2015-07-14 2017-01-19 Kabushiki Kaisha Toshiba Secure update processing of terminal device using an encryption key stored in a memory device of the terminal device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103546576A (zh) * 2013-10-31 2014-01-29 中安消技术有限公司 一种嵌入式设备远程自动升级方法和系统
CN103595802A (zh) * 2013-11-19 2014-02-19 烽火通信科技股份有限公司 家庭网关软件远程自动升级的方法
CN106027580A (zh) * 2015-03-18 2016-10-12 青岛海尔空调电子有限公司 一种程序远程升级方法
US20170019399A1 (en) * 2015-07-14 2017-01-19 Kabushiki Kaisha Toshiba Secure update processing of terminal device using an encryption key stored in a memory device of the terminal device
CN105933150A (zh) * 2016-04-20 2016-09-07 努比亚技术有限公司 Ota升级方法、装置及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李歌: "FPGA系统远程升级安全机制的研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111142915A (zh) * 2018-11-06 2020-05-12 阿里巴巴集团控股有限公司 更新方法、装置和设备
CN111142915B (zh) * 2018-11-06 2023-04-25 阿里巴巴集团控股有限公司 更新方法、装置和设备
CN110543320A (zh) * 2019-09-06 2019-12-06 山东浪潮人工智能研究院有限公司 一种基于云端的车载obd远程升级方法和系统
CN112328279A (zh) * 2020-11-02 2021-02-05 宁波和利时信息安全研究院有限公司 系统固件文件升级方法、装置及系统
CN114115022A (zh) * 2021-11-19 2022-03-01 云南电网有限责任公司电力科学研究院 一种fpga硬件加速阵列升级方法及系统

Similar Documents

Publication Publication Date Title
Nikitin et al. {CHAINIAC}: Proactive {Software-Update} transparency via collectively signed skipchains and verified builds
CN108566280A (zh) 一种fpga硬件加速程序的远程升级方法和系统
CN110838065B (zh) 一种交易数据处理方法及装置
CN111182025B (zh) 一种报文处理方法、装置、服务器及存储介质
CN103685138B (zh) 移动互联网上的Android平台应用软件的认证方法和系统
CN110138592A (zh) 一种智能合约的管理方法及系统
CN112527912B (zh) 基于区块链网络的数据处理方法、装置及计算机设备
CN107786344A (zh) 数字证书申请、使用的实现方法和装置
CN107645512A (zh) 一种身份验证的方法、装置及服务器
US20170300696A1 (en) Software verification method and apparatus
CN109246197A (zh) 基于智能合约的数据处理方法及装置
CN103888252A (zh) 一种基于uid、pid、appid控制应用访问权限方法
CN110286849B (zh) 数据存储系统的数据处理方法和装置
CN103369038B (zh) 平台即服务PaaS管理平台及方法
CN110460447A (zh) 基于哈希二叉树的边缘计算数据审计系统及审计方法
CN114268508A (zh) 物联网设备安全接入方法、装置、设备及介质
CN114219490A (zh) 交易行为数据的更新方法、装置、设备及存储介质
CN115378737B (zh) 跨域设备通信信任方法、装置、设备和介质
CN105187218A (zh) 一种多核心基础设施的数字化记录签名、验证方法
CN115701078A (zh) 跨链交易处理方法、装置、电子设备以及存储介质
CN109670289A (zh) 一种识别后台服务器合法性的方法及系统
CN112000943B (zh) 基于边缘计算和云边融合的信息验证方法及中心云平台
CN105453519B (zh) 一种信息安全验证方法及设备
CN104009846B (zh) 一种单点登录装置和方法
CN110113339A (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

Application publication date: 20180921

RJ01 Rejection of invention patent application after publication