CN115203708B - 一种应用数据部署至协处理器的方法及系统 - Google Patents

一种应用数据部署至协处理器的方法及系统 Download PDF

Info

Publication number
CN115203708B
CN115203708B CN202211113088.9A CN202211113088A CN115203708B CN 115203708 B CN115203708 B CN 115203708B CN 202211113088 A CN202211113088 A CN 202211113088A CN 115203708 B CN115203708 B CN 115203708B
Authority
CN
China
Prior art keywords
coprocessor
data
user terminal
mirror image
image data
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
Application number
CN202211113088.9A
Other languages
English (en)
Other versions
CN115203708A (zh
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.)
International Digital Economy Academy IDEA
Original Assignee
International Digital Economy Academy IDEA
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 International Digital Economy Academy IDEA filed Critical International Digital Economy Academy IDEA
Priority to CN202211113088.9A priority Critical patent/CN115203708B/zh
Publication of CN115203708A publication Critical patent/CN115203708A/zh
Application granted granted Critical
Publication of CN115203708B publication Critical patent/CN115203708B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/045Network 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 hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC

Abstract

本发明公开了一种应用数据部署至协处理器的方法及系统,方法应用于应用数据部署至协处理器的系统中,系统包括用户终端、云服务器以及处理器;方法包括:用户终端获取待运行的应用数据所对应的文件夹数据以及脚本数据,然后基于文件夹数据与脚本数据进行压缩处理以及一系列的加密处理,得到待运行的应用数据所对应的镜像数据。然后用户终端基于云服务器,将镜像数据上传至协处理器。协处理器对镜像数据进行校验后得到的校验结果,并将校验结果反馈给用户终端,用户终端再根据校验结果来确定待运行的应用数据的部署结果。由此可见,本发明可保证镜像数据不被窥探、不被篡改,从而保证待运行的应用数据的可以安全完整地部署至协处理器上。

Description

一种应用数据部署至协处理器的方法及系统
技术领域
本发明涉及可信安全计算技术领域,尤其涉及一种应用数据部署至协处理器的方法及系统。
背景技术
硬件可信计算执行环境(TEE)目前主流的技术有SGX(SGX是一组 CPU 指令扩展,能创造出一个可信执行环境来保护代码和数据,即使root 权限也无法访问)和TrustZone(TrustZone是基于硬件的安全功能,它通过对原有硬件架构进行修改,在处理器层次引入了两个不同权限的保护域——安全世界和普通世界,任何时刻处理器仅在其中的一个环境内运行)。TEE可以在系统软件(如操作系统)不可信的情况下保障应用和数据的安全,一个常见的使用场景是在云服务器上,租户将应用程序或者服务部署在云服务器上时需通过使用TEE的技术来保障安全性。
但是,由于云服务器是不可信的,容易被攻击,因此现有技术中将应用程序或者服务部署在云服务器难以保证应用程序与服务的安全性。安全协处理器(SPU,SecureProcessing Unit)提供一种全新的软硬件架构,独立部署在硬件中,采用硬件级的加密隔离手段杜绝敏感数据泄露问题,因此将应用程序或者服务部署至协处理器上,就可以有效避免应用程序或者服务器被篡改或被偷窥的问题。但是,现有技术中缺乏一种可以安全地将应用程序或者服务部署至协处理器上的方法。
因此,现有技术还有待改进和提高。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种应用数据部署至协处理器的方法及系统,旨在解决现有技术中缺乏可以安全地将应用程序或者服务部署至协处理器上的方法的问题。
为了解决上述技术问题,本发明所采用的技术方案如下:
第一方面,本发明提供一种应用数据部署至协处理器的方法,其中,所述方法应用于应用数据部署至协处理器的系统中的用户终端,所述系统包括:用户终端、与所述用户终端通信连接的云服务器以及与所述云服务器通信连接的协处理器;所述方法包括:
获取待运行的应用数据所对应的文件夹数据以及脚本数据,并对所述文件夹数据与所述脚本数据进行压缩处理,得到初始压缩包;
确定对称加密密钥,基于所述对称加密密钥对所述初始压缩包进行加密处理,得到加密压缩包;
计算所述加密压缩包所对应的初始哈希值,并基于所述对称加密密钥对所述初始哈希值进行加密处理,得到加密哈希值;
获取协处理器的公钥,并基于所述公钥对所述对称加密密钥进行加密处理,得到密钥加密数据;
根据所述密钥加密数据、所述加密哈希值以及所述加密压缩包,得到所述待运行的应用数据所对应的镜像数据;
基于预设的云服务器,将所述镜像数据上传至所述协处理器,并接收所述协处理器对所述镜像数据进行校验后得到的校验结果,根据所述校验结果确定所述待运行的应用数据的部署结果。
在一种实现方式中,所述获取待运行的应用数据所对应的文件夹数据以及脚本数据之前,包括:
获取与所述待运行的应用数据相关联的关联文件,并将所述待运行的应用数据与所述关联文件存储至目标文件夹中,得到所述文件夹数据;
获取用于对所述待运行的应用数据进行控制的脚本命令,并根据所述脚本命令,生成所述脚本数据,其中,所述脚本命令包括:启动命令、停止命令以及查询命令。
在一种实现方式中,所述确定对称加密密钥,包括:
查询指定密钥信息,得到查询结果;
若所述查询结果为存在所述指定密钥信息,则将所述指定密钥信息作为所述对称加密密钥;
若所述查询结果为不存在所述指定密钥信息,则随机生成所述对称加密密钥,并保存所述对称加密密钥。
在一种实现方式中,所述根据所述密钥加密数据、所述加密哈希值以及所述加密压缩包,得到所述待运行的应用数据所对应的镜像数据,包括:
将所述密钥加密数据、所述加密哈希值以及所述加密压缩包依次进行拼接处理,得到所述镜像数据。
在一种实现方式中,所述基于预设的云服务器,将所述镜像数据上传至所述协处理器,包括:
根据输入的IP信息,确定与所述IP信息所对应的云服务器,并与所述云服务器建立通信连接;
基于所述云服务器向所述协处理器发送连接请求信息;
基于所述云服务器接收所述协处理器响应所述连接请求信息所作出的反馈信息,并根据所述反馈信息,将所述镜像数据上传至所述协处理器,其中,所述反馈信息包括会话通道信息,所述会话通道信息用于反映所述协处理器与所述用户终端之间的连接通道。
在一种实现方式中,所述根据所述反馈信息,将所述镜像数据上传至所述协处理器,包括:
基于所述会话通道信息,确定所述会话通道信息对应的加密通道,并基于所述加密通道,向所述协处理器发送数据上传请求信息,所述数据上传请求信息包括所述镜像数据的内存信息;
接收所述协处理器响应所述数据上传请求信息所生成的答复信息,所述答复信息中包括基于所述镜像数据的内存信息所生成的空间分配信息;
根据所述答复信息,将所述镜像数据上传至所述协处理器中与所述空间分配信息所对应的存储区域。
在一种实现方式中,所述根据所述校验结果确定所述待运行的应用数据的部署结果,包括:
基于所述协处理器的公钥,对所述校验结果进行解密处理,得到所述协处理器基于所述加密压缩包计算得到的校验哈希值,以及所述协处理器对所述加密哈希值进行解密处理后得到的初始哈希值;
若所述初始哈希值与所述校验哈希值是相同的,则确定所述待运行的应用数据的部署结果为已安全部署至协处理器。
在一种实现方式中,所述方法还包括:
若所述待运行的应用数据的部署结果为已安全部署至协处理器,则向所述协处理器发送运行请求,所述运行请求用于请求运行所述镜像数据。
第二方面,本发明实施例还提供一种应用数据部署至协处理器的方法,其中,所述方法应用于应用数据部署至协处理器的系统中的协处理器,所述系统包括:用户终端、与所述用户终端通信连接的云服务器以及与所述云服务器通信连接的协处理器;所述方法包括:
基于预设的云服务器接收用户终端上传的镜像数据,所述镜像数据用于反映所述用户终端基于确定的对称加密密钥对待运行的应用数据所对应的初始压缩包进行加密处理后得到的加密压缩包、用于反映所述用户终端基于所述对称加密密钥对所述加密压缩包对应的初始哈希值进行加密处理后得到的加密哈希值、用于反映所述用户终端基于协处理器的公钥对所述对称加密密钥进行加密处理后得到的密钥加密数据;
对所述镜像数据进行校验处理,得到校验结果,并将所述校验结果经过协处理器携带的私钥加密后发送至所述用户终端,以使得所述用户终端根据所述校验结果确定所述待运行的应用数据的部署结果。
在一种实现方式中,所述基于预设的云服务器接收用户终端上传的镜像数据,包括:
基于所述云服务器接收所述用户终端发送来的连接请求信息;
根据所述连接请求信息,生成反馈信息,并将所述反馈信息发送至所述用户终端,所述反馈信息包括会话通道信息,所述会话通道信息用于反映所述协处理器与所述用户终端之间的连接通道;
接收所述用户终端响应所述反馈信息所上传的所述镜像数据。
在一种实现方式中,所述接收所述用户终端响应所述反馈信息所上传的所述镜像数据,包括:
基于所述会话通道信息,确定所述会话通道信息对应的加密通道,并接收所述用户终端基于所述加密通道发送来的数据上传请求信息,所述数据上传请求信息包括所述镜像数据的内存信息;
基于所述数据上传请求信息生成答复信息,所述答复信息中包括基于所述镜像数据的内存信息所生成的空间分配信息;
将所述答复信息发送至所述用户终端,并接收所述用户终端响应所述答复信息所上传的所述镜像数据;
将所述镜像数据存储至与所述空间分配信息所对应的存储区域。
在一种实现方式中,所述对所述镜像数据进行校验处理,得到校验结果,包括:
获取所述镜像数据中的加密密钥数据,并使用协处理器携带的私钥对所述加密密钥数据进行解密处理,得到所述对称加密密钥;
获取所述镜像数据中的加密哈希值,并使用所述对称加密密钥对所述加密哈希值进行解密处理,得到初始哈希值;
获取所述镜像数据中的加密压缩包,并计算所述加密压缩包对应的校验哈希值;
将所述初始哈希值与所述校验哈希值作为所述校验结果。
在一种实现方式中,所述方法还包括:
接收所述用户终端发送的运行请求,并根据所述运行请求,使用所述对称加密密钥对所述加密压缩包进行解密处理,得到初始压缩包;
对所述初始压缩包进行解析,得到所述待运行的应用数据所对应的文件夹数据以及脚本数据;
获取所述脚本数据中的脚本命令,并根据所述脚本命令运行所述文件夹数据,得到运行结果,其中,所述脚本命令包括:启动命令、停止命令以及查询命令;
将所述运行结果反馈给所述用户终端。
第三方面,本发明实施例还提供一种应用数据部署至协处理器的系统,其中,所述系统包括:用户终端、与所述用户终端通信连接的云服务器以及与所述云服务器通信连接的协处理器;其中,所述用户终端包括:
数据压缩模块,用于获取待运行的应用数据所对应的文件夹数据以及脚本数据,并对所述文件夹数据与所述脚本数据进行压缩处理,得到初始压缩包;
压缩包加密模块,用于确定对称加密密钥,基于所述对称加密密钥对所述初始压缩包进行加密处理,得到加密压缩包;
哈希值计算模块,用于计算所述加密压缩包所对应的初始哈希值,并基于所述对称加密密钥对所述初始哈希值进行加密处理,得到加密哈希值;
密钥加密模块,用于获取协处理器的公钥,并基于所述公钥对所述对称加密密钥进行加密处理,得到密钥加密数据;
镜像数据制作模块,用于根据所述密钥加密数据、所述加密哈希值以及所述加密压缩包,得到所述待运行的应用数据所对应的镜像数据;
部署结果确定模块,用于基于预设的云服务器,将所述镜像数据上传至所述协处理器,并接收所述协处理器对所述镜像数据进行校验后得到的校验结果,根据所述校验结果确定所述待运行的应用数据的部署结果;
所述协处理器包括:
镜像数据接收模块,用于基于预设的云服务器接收用户终端上传的镜像数据,所述镜像数据用于反映所述用户终端基于确定的对称加密密钥对待运行的应用数据所对应的初始压缩包进行加密处理后得到的加密压缩包、用于反映所述用户终端基于所述对称加密密钥对所述加密压缩包对应的初始哈希值进行加密处理后得到的加密哈希值、用于反映所述用户终端基于协处理器的公钥对所述对称加密密钥进行加密处理后得到的密钥加密数据;
镜像数据校验模块,用于对所述镜像数据进行校验处理,得到校验结果,并将所述校验结果经过协处理器携带的私钥加密后发送至所述用户终端,以使得所述用户终端根据所述校验结果确定所述待运行的应用数据的部署结果。
第四方面,本发明实施例还提供一种用户终端,其中,所述终端设备包括用户终端或者协处理器,所述终端设备包括存储器、处理器及存储在所述存储器中并可在处理器上运行的应用数据部署至协处理器的程序,所述处理器执行所述应用数据部署至协处理器的程序时,实现上述方案中任一项所述的应用数据部署至协处理器的方法的步骤。
第五方面,本发明实施例还提供一种计算机可读存储介质,其中,所述计算机可读存储介质上存储有应用数据部署至协处理器的程序,所述应用数据部署至协处理器的程序被处理器执行时,实现上述方案中任一项所述的应用数据部署至协处理器的方法的步骤。
有益效果:与现有技术相比,本发明提供了一种应用数据部署至协处理器的方法,该方法应用于应用数据部署至协处理器的系统中的用户终端,该系统包括用户终端、与所述用户终端通信连接的云服务器以及与所述云服务器通信连接的协处理器。本发明的方法包括:用户终端获取待运行的应用数据所对应的文件夹数据以及脚本数据,并对所述文件夹数据与所述脚本数据进行压缩处理,得到初始压缩包。然后,用户终端确定对称加密密钥,基于所述对称加密密钥对所述初始压缩包进行加密处理,得到加密压缩包。接着,用户终端计算所述加密压缩包所对应的初始哈希值,并基于所述对称加密密钥对所述初始哈希值进行加密处理,得到加密哈希值。再然后,用户终端获取协处理器的公钥,并基于所述公钥对所述对称加密密钥进行加密处理,得到密钥加密数据。然后,用户终端根据所述密钥加密数据、所述加密哈希值以及所述加密压缩包,得到所述待运行的应用数据所对应的镜像数据。可见,本发明是在用户终端制作镜像数据的,并且该镜像数据是基于待运行的应用数据所对应的文件夹数据以及脚本数据进行一系列的加密处理后得到的,因此该镜像数据可有效避免被窥探以及被篡改。
当镜像数据制作完成后,用户终端基于预设的云服务器,将所述镜像数据上传至所述协处理器。协处理器可对镜像数据进行校验处理,得到校验结果,并将所述校验结果经过云服务器发送至用户终端。用户终端就可以根据所述校验结果确定所述待运行的应用数据的部署结果。本发明基于协处理器的校验,可进一步确认镜像数据是否被篡改,从而确保镜像数据的机密性与完整性,从而保证待运行的应用数据的可以安全地、完整地部署至协处理器上。
附图说明
图1为本发明实施例提供的应用数据部署至协处理器的系统的示意图。
图2为本发明实施例提供的应用数据部署至协处理器的方法应用于用户终端时的具体实施方式的流程图。
图3为本发明实施例提供的应用数据部署至协处理器的方法应用于协处理器时的具体实施方式的流程图。
图4为本发明实施例提供的应用数据部署至协处理器的系统的原理框图。
图5为本发明实施例提供的用户终端的原理框图。
具体实施方式
为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供一种应用数据部署至协处理器的方法,具体实施时,用户终端获取待运行的应用数据所对应的文件夹数据以及脚本数据,并对所述文件夹数据与所述脚本数据进行压缩处理,得到初始压缩包。然后,用户终端确定对称加密密钥,基于所述对称加密密钥对所述初始压缩包进行加密处理,得到加密压缩包。接着,用户终端计算所述加密压缩包所对应的初始哈希值,并基于所述对称加密密钥对所述初始哈希值进行加密处理,得到加密哈希值。再然后,用户终端获取协处理器的公钥,并基于所述公钥对所述对称加密密钥进行加密处理,得到密钥加密数据。然后,用户终端根据所述密钥加密数据、所述加密哈希值以及所述加密压缩包,得到所述待运行的应用数据所对应的镜像数据。当镜像数据制作完成后,用户终端基于预设的云服务器,将所述镜像数据上传至所述协处理器。协处理器可对镜像数据进行校验处理,得到校验结果,并将所述校验结果经过云服务器发送至用户终端。用户终端就可以根据所述校验结果确定所述待运行的应用数据的部署结果。由于本实施例是在用户终端制作镜像数据的,并且该镜像数据是基于待运行的应用数据所对应的文件夹数据以及脚本数据进行一系列的加密处理后得到的,因此该镜像数据可有效避免被窥探以及被篡改。此外,本实施例基于协处理器对镜像数据的校验,可进一步确认镜像数据是否被篡改,从而确保镜像数据的机密性与完整性,从而保证待运行的应用数据的可以安全地、完整地部署至协处理器上。
举例说明,若本实施例需要将应用程序A部署至协处理器,此时,可在用户终端中制作应用程序A所对应的镜像数据。具体地,用户终端可获取应用程序A对应的文件夹数据以及脚本数据,该文件夹数据可为与应用程序A相关的所有文件,该脚本数据可为用于对应用程序A进行控制的脚本命令所组成的数据。用户终端可对应用程序A对应的文件夹数据以及脚本数据进行压缩,得到初始压缩包Tar,接着对该初始压缩包Tar使用对称加密密钥key进行加密处理,即可得到加密压缩包Tar。用户终端可计算出加密压缩包的初始哈希值h,然后再使用对称加密密钥key来对初始哈希值h进行加密处理,得到加密哈希值h。接着,用户终端获取协处理器的公钥PKspu,使用该公钥PKspu来对该对称加密密钥key进行加密处理,得到密钥加密数据key。用户终端就可以根据密钥加密数据key、加密哈希值h以及加密压缩包Tar,得到应用程序A所对应的镜像数据,然后将该镜像数据通过云服务器发送至协处理器上。协处理器接收到该镜像数据后,就会对该镜像数据进行校验,得到校验结果,在校验时,协处理器会对该镜像数据进行一些系列的解密操作以及进行哈希值校验,来确定该镜像数据是否被篡改。协处理器将校验后得到的校验结果经过云服务器反馈给用户终端,用户终端就可以基于该校验结果来确定应用程序A的部署结果。比如,如果校验结果表示的是镜像数据并未被篡改,则该镜像数据是完整地、安全地,因此也就说明应用程序A被安全地部署至协处理器上。
示例性方法
本实施例的应用数据部署至协处理器的方法可应用于应用数据部署至协处理器的系统中,该系统包括用户终端、与所述用户终端通信连接的云服务器以及与所述云服务器通信连接的协处理器,如图1中所示。本实施例中的协处理器不限定个数,可为1个也可为n个,无论是1个还是n个,如图1中的SPU1......SPUn。均可以基于本实施例的应用数据部署至协处理器的方法来实现。
本实施例提供一种应用数据部署至协处理器的方法,该方法可应用于应用数据部署至协处理器的系统中的用户终端,该用户终端可为个人电脑、公司内网服务器等智能化产品终端。具体地,如图2中所示,本实施例的方法包括如下步骤:
步骤S100、用户终端获取待运行的应用数据所对应的文件夹数据以及脚本数据,并对所述文件夹数据与所述脚本数据进行压缩处理,得到初始压缩包。
本实施例中的用户终端与协处理器之间的交互是基于云服务器来实现的,如图1中所示。而由于云服务器是易被攻击,如果直接经过云服务器部署应用数据到协处理器上可能会被云服务器上的恶意程序篡改、偷窥。为此,用户终端需要基于待运行的应用数据来制作出可在协处理器上运行的镜像数据,然后再将镜像数据安全地部署至协处理器上。
具体地,用户终端可首先获取待运行的应用数据所对应的文件夹数据以及脚本数据,该文件夹数据为一个文件夹Dir,用户可预先将所有与该待运行的应用数据有关的文件都放置在该文件夹Dir中。所述脚本数据为与该待运行的应用数据相关的脚本命令。用户终端在获取到该待运行的应用数据对应的文件夹数据以及脚本数据后,可对该文件夹数据与该脚本数据进行压缩处理,得到初始压缩包Tar。
在一种实现方式中,本实施例在获取文件夹数据和脚本数据时,用户终端可获取与待运行的应用数据相关联的关联文件,然后将与该待运行的应用数据相关联的关联文件都存储至目标文件夹中,比如存储至文件夹Dir,用户终端就可以将该目标文件夹作为所述文件夹数据。同样地,用户预先可设置用于控制待运行的应用数据的脚本命令,比如设置启动命令(start)、停止命令(stop)以及查询命令(status)分别用于启动应用数据、停止应用数据以及查询应用数据的状态。因此,用户终端可获取这些脚本命令,并根据所述脚本命令,来生成脚本数据。
如图2中所示,在得到初始压缩包后,用户终端可执行步骤S200、用户终端确定对称加密密钥,基于所述对称加密密钥对所述初始压缩包进行加密处理,得到加密压缩包。
为了保证初始压缩包的安全性,本实施例需要对该初始压缩包进行加密处理,以便得到加密压缩包。在进行加密时,本实施例使用对称加密密钥来进行加密处理,对称密钥加密又叫专用密钥加密或共享密钥加密,即发送和接收数据的双方必使用相同的密钥对明文进行加密和解密运算。对称密钥加密算法主要包括:DES、3DES、IDEA、FEAL、BLOWFISH等。本实施例可采用任何一种对称加密算法来实现对初始压缩包Tar的加密处理。
在一种实现方式中,本实施例的对称加密密钥key可为用户指定也可以随机生成。具体地,用户终端首先可查询指定密钥信息keyuser,得到查询结果,该查询结果即反映用户预先是否已经指定了对称加密密钥key。如果所述查询结果为存在所述指定密钥信息keyuser,则将所述指定密钥信息作为所述对称加密密钥key,也就是使用用户指定的密钥信息作为对称加密密钥key,即key=keyuser。而若所述查询结果为不存在所述指定密钥信息keyuser,则随机生成对称加密密钥key,并以文件的形式保存,以便用户后续使用。在一种实现方式中,本实施例可生成一对椭圆曲线的公私钥,并将该椭圆曲线的公私钥作为对称加密密钥key。当确定出对称加密密钥key后,即可使用该对称加密密钥key来对初始压缩包Tar进行对称加密处理,比如使用对称加密算法为aes256来对初始压缩包Tar进行加密处理,得到加密压缩包Tar
如图2中所示,在得到加密压缩包后,用户终端可执行步骤S300、用户终端计算加密压缩包所对应的初始哈希值,并基于对称加密密钥对所述初始哈希值进行加密处理,得到加密哈希值。
哈希值算法,又称散列函数算法(或散列算法,又称哈希函数,英语:HashFunction)是一种从任何一种数据中创建小的数字"指纹"的方法。本实施例的用户终端可基于哈希值算法来将加密压缩包Tar的数据打乱混合,重新创建一个叫做散列值(hashvalues,hash codes,hash sums,或hashes)的数字“指纹”,该数字“指纹”为加密压缩包Tar所对应的初始哈希值h。然后,用户终端使用对称加密密钥key来对初始哈希值h进行对称加密处理,比如使用对称加密算法为aes256来对初始哈希值h进行加密处理,得到加密哈希值h。本实施例计算初始哈希值h是用于后续步骤中协处理器对于镜像数据的校验,而对初始哈希值h加密均是为了保证初始哈希值h不被篡改。
如图2中所示,用户终端在得到加密哈希值h后,可执行步骤S400、用户终端获取协处理器的公钥,并基于所述公钥对对称加密密钥进行加密处理,得到密钥加密数据。
对于协处理器来说,协处理器在出厂时都会携带一对独有的公钥PKspu和私钥SKspu,公钥PKspu为公开信息,私钥SKspu仅存在于协处理器上。当用户终端得到加密哈希值h后,可基于协处理器的公钥PKspu来对对称加密密钥key进行加密处理,得到密钥加密数据key。由于本实施例的初始哈希值h以及初始压缩包Tar都是基于对称加密密钥key来进行加密处理的,因此初始哈希值h以及初始压缩包Tar的安全性得以保障,而为了进一步保障数据的安全,本实施例的用户终端还进一步对对称加密密钥key来进行加密处理,并且使用的是协处理器的公钥PKspu来实现的,不但保证对称加密密钥key的安全性,还确保协处理器在后续过程中可经过解密来得到对称加密密钥key,以便进行镜像数据的校验。此外,本实施例的用户终端使用协处理器的公钥PKspu来对对称加密密钥key进行加密处理时,使用的是不对称加密算法(如RSA)来实现,以提高加密效果。
如图2中所示,用户终端在获取到密钥加密数据key后,可执行步骤S500、用户终端根据密钥加密数据、加密哈希值以及加密压缩包,得到待运行的应用数据所对应的镜像数据。
具体地,本实施例的用户终端可将密钥加密数据key、加密哈希值h以及加密压缩包Tar,依次进行拼接,得到待运行的应用数据所对应的镜像数据。也就说,在得到的镜像数据中,前256 bit为密钥加密数据key,257-512 bit为加密哈希值h,剩余部分为加密压缩包Tar
如图2中所示,用户终端在制作完成镜像数据后,则执行步骤S600、用户终端基于预设的云服务器,将镜像数据上传至协处理器,并接收所述协处理器对所述镜像数据进行校验后得到的校验结果,根据所述校验结果确定待运行的应用数据的部署结果。
在本实施例中,用户终端与协处理器之间的交互是基于云服务器来实现的,如图1中所示。用户终端与云服务器之间需要建立通信连接。具体地,本实施例的用户终端可接收用户输入的IP信息,确定与该IP信息所对应的云服务器,然后用户终端与该云服务器建立tcp通信连接。云服务器与协处理器之间是建立PCIE通信连接的。当用户终端与云端服务器之间建立了tcp通信连接后,用户终端可使用椭圆曲线生成一对公私钥,分别为公钥1和私钥1。接着,用户终端发送连接请求信息给云服务器,该连接请求信息中附带有公钥1,经过云端服务器的SPU驱动将该连接请求信息转发给协处理器。协处理器接收到该连接请求信息后,就会同样使用椭圆曲线生成一对公私钥,分别为公钥2和私钥2,并创建会话通道信息,所述会话通道信息用于反映所述协处理器与所述用户终端之间的连接通道。接着,协处理器就会向用户终端发送反馈信息,该反馈信息附带会话通道信息与公钥2。因此,此时,用户终端就接收到了公钥2和会话通道信息,用户可将公钥2与自己的私钥1生成一个对称密钥,同样地,协处理器也可以使用接收到的公钥1和自己的私钥2生成一个对称密钥,该对称密钥用于对会话通道信息所对应的连接通道进行加密,得到用户终端与协处理器之间的加密通道。由此可见,本实施例在构建加密通道时,通信双方(即用户终端与协处理器)各自随机生成椭圆曲线公私钥并交换公钥得到各自的对称密钥,然后利用该对称密钥对会话通道信息所对应的连接通道进行加密,得到该加密通道。
接着,用户终端可基于所述加密通道,向所述协处理器发送数据上传请求信息,所述数据上传请求信息包括所述镜像数据的内存信息,即该数据上传请求信息用于告知协处理器需要上传一个多大内存的镜像数据。协处理器就会基于该数据上传请求信息进行空间分配,并生成答复信息,该答复信息中包括基于所述镜像数据的内存信息所生成的空间分配信息。接着,协处理器将该答复信息发送至用户终端,用户终端就可以根据所述答复信息,将所述镜像数据上传至协处理器中与所述空间分配信息所对应的存储区域,实际发送时,用户可使用每包大小为4k的形式逐包将镜像数据上传至协处理器。当上传完毕后,用户终端还可发送校验请求信息给协处理器,以请求协处理器对该镜像数据进行校验。
在本实施例中,协处理器在接收到镜像数据后,可首先获取所述镜像数据中前256bit的密钥加密数据key,并使用协处理器携带的私钥SKspu对所述加密密钥数据key进行解密处理,就可以得到所述对称加密密钥key。接着,协处理器可获取所述镜像数据中位于257-512 bit的加密哈希值h,并使用所述对称加密密钥key对所述加密哈希值h进行解密处理,得到初始哈希值h。再然后,协处理器继续获取所述镜像数据的加密压缩包Tar,并计算所述加密压缩包Tar对应的校验哈希值h2。最后,协处理器将所述初始哈希值h与所述校验哈希值h2作为所述校验结果,并将所述校验结果经过协处理器携带的私钥SKspu加密后发送至所述用户终端。
当用户终端接收到校验结果后,可使用协处理器的公钥PKspu对所述校验结果进行解密处理,得到所述协处理器基于所述加密压缩包Tar计算得到的校验哈希值h2,以及所述协处理器对所述加密哈希值h进行解密处理后得到的初始哈希值h。由于在制作镜像数据时,初始哈希值h是基于加密压缩包Tar计算得到的,而此时协处理器基于加密压缩包Tar计算得到的是校验哈希值h2,如果初始哈希值h和校验哈希值h2是相同的,则就说明镜像数据没有被篡改,因此用户终端就可以确定出待运行的应用数据的部署结果为已安全部署至协处理器。而如果所述待运行的应用数据的部署结果为已安全部署至协处理器,则用户终端就会向所述协处理器发送运行请求,所述运行请求用于请求运行所述镜像数据。
协处理器在接到该运行请求后,就会使用对称加密密钥key对所述加密压缩包Tar进行解密处理,得到初始压缩包Tar。接着,协处理器就会对所述初始压缩包Tar进行解析,得到所述待运行的应用数据所对应的文件夹数据以及脚本数据。接着,协处理器获取所述脚本数据中的脚本命令,并根据所述脚本命令运行所述文件夹数据,比如,执行启动命令、停止命令以及查询命令,就可以得到运行结果,然后将所述运行结果经过加密通道反馈给所述用户终端。
基于此,本实施例成功地将待运行的应用数据安全且完整地部署至协处理器中并进行运行,保证了应用数据的完整性与机密性。可见,由于本实施例是在用户终端制作镜像数据的,并且该镜像数据是基于待运行的应用数据所对应的文件夹数据以及脚本数据进行一系列的加密处理后得到的,因此该镜像数据可有效避免被窥探以及被篡改。此外,本实施例基于协处理器对镜像数据的校验,可进一步确认镜像数据是否被篡改,从而确保镜像数据的机密性与完整性,从而保证待运行的应用数据的可以安全地、完整地部署至协处理器上。
在另一种实现方式中,本发明还提供一种应用数据部署至协处理器的方法,该方法可应用于应用数据部署至协处理器的系统中的协处理器。具体如图3中所示,本实施例的方法包括:
步骤S10、协处理器基于预设的云服务器接收用户终端上传的镜像数据,所述镜像数据用于反映所述用户终端基于确定的对称加密密钥对待运行的应用数据所对应的初始压缩包进行加密处理后得到的加密压缩包、用于反映所述用户终端基于所述对称加密密钥对所述加密压缩包对应的初始哈希值进行加密处理后得到的加密哈希值、用于反映所述用户终端基于协处理器携带的公钥对所述对称加密密钥进行加密处理后得到的密钥加密数据。
具体地,当用户终端基于上述实施例制作出镜像数据后,可将该镜像数据上传至协处理器中。在本实施例中,用户终端与协处理器之间的交互是基于云服务器来实现的,如图1中所示。用户终端与云服务器建立tcp通信连接,云服务器与协处理器之间是建立PCIE通信连接。当用户终端与云端服务器之间建立了tcp通信连接后,用户终端可使用椭圆曲线生成一对公私钥,分别为公钥1和私钥1。接着,用户终端发送连接请求信息给云服务器,该连接请求信息中附带有公钥1,经过云端服务器的SPU驱动将该连接请求信息转发给协处理器。协处理器接收到该连接请求信息后,就会同样使用椭圆曲线生成一对公私钥,分别为公钥2和私钥2,并创建会话通道信息,所述会话通道信息用于反映所述协处理器与所述用户终端之间的连接通道。接着,协处理器就会向用户终端发送反馈信息,该反馈信息附带会话通道信息与公钥2。因此,此时,用户终端就接收到了公钥2和会话通道信息,用户可将公钥2与自己的私钥1生成一个对称密钥,同样地,协处理器也可以使用接收到的公钥1和自己的私钥2生成一个对称密钥,该对称密钥用于对会话通道信息所对应的连接通道进行加密,得到用户终端与协处理器之间的加密通道。
接着,用户终端可基于所述加密通道,向所述协处理器发送数据上传请求信息,所述数据上传请求信息包括所述镜像数据的内存信息,即该数据上传请求信息用于告知协处理器需要上传一个多大内存的镜像数据。协处理器就会基于该数据上传请求信息进行空间分配,并生成答复信息,该答复信息中包括基于所述镜像数据的内存信息所生成的空间分配信息。接着,协处理器将该答复信息发送至用户终端,用户终端就可以根据所述答复信息,将所述镜像数据上传至协处理器中与所述空间分配信息所对应的存储区域,实际发送时,用户可使用每包大小为4k的形式逐包将镜像数据上传至协处理器。当上传完毕后,用户终端还可发送校验请求信息给协处理器,以请求协处理器对该镜像数据进行校验。
当本实施例的协处理器接收到镜像数据后,可执行步骤S20、协处理器对镜像数据进行校验处理,得到校验结果,并将所述校验结果经过协处理器携带的私钥加密后发送至用户终端,以使得所述用户终端根据所述校验结果确定待运行的应用数据的部署结果。
本实施例的镜像数据反映的是用户终端基于确定的对称加密密钥对待运行的应用数据所对应的初始压缩包进行加密处理后得到的加密压缩包、反映的是用户终端基于对称加密密钥对所述加密压缩包对应的初始哈希值进行加密处理后得到的加密哈希值、反映的是用户终端基于协处理器携带的公钥对所述对称加密密钥进行加密处理后得到的密钥加密数据。并且,在本实施例的镜像数据中,前256 bit为密钥加密数据key,257-512 bit为加密哈希值h,剩余部分为加密压缩包Tar。因此,在协处理器在接收到镜像数据后,协处理器可首先获取所述镜像数据中前256 bit的密钥加密数据key,并使用协处理器携带的私钥SKspu对所述加密密钥数据key进行解密处理,就可以得到所述对称加密密钥key。接着,协处理器可获取所述镜像数据中位于257-512 bit的加密哈希值h,并使用所述对称加密密钥key对所述加密哈希值h进行解密处理,得到初始哈希值h。再然后,协处理器继续获取所述镜像数据的加密压缩包Tar,并计算所述加密压缩包Tar对应的校验哈希值h2。最后,协处理器将所述初始哈希值h与所述校验哈希值h2作为所述校验结果,并将所述校验结果经过协处理器携带的私钥SKspu加密后发送至所述用户终端。
当用户终端接收到校验结果后,可使用协处理器的公钥PKspu对所述校验结果进行解密处理,得到所述协处理器基于所述加密压缩包Tar计算得到的校验哈希值h2,以及所述协处理器对所述加密哈希值h进行解密处理后得到的初始哈希值h。由于在制作镜像数据时,初始哈希值h是基于加密压缩包Tar计算得到的,而此时协处理器基于加密压缩包Tar计算得到的是校验哈希值h2,如果初始哈希值h和校验哈希值h2是相同的,则就说明镜像数据没有被篡改,因此用户终端就可以确定出待运行的应用数据的部署结果为已安全部署至协处理器。而如果所述待运行的应用数据的部署结果为已安全部署至协处理器,则用户终端就会向所述协处理器发送运行请求,所述运行请求用于请求运行所述镜像数据。
协处理器在接到该运行请求后,就会使用对称加密密钥key对所述加密压缩包Tar进行解密处理,得到初始压缩包Tar。接着,协处理器就会对所述初始压缩包Tar进行解析,得到所述待运行的应用数据所对应的文件夹数据以及脚本数据。接着,协处理器获取所述脚本数据中的脚本命令,并根据所述脚本命令运行所述文件夹数据,比如,执行启动命令、停止命令以及查询命令,就可以得到运行结果,然后将所述运行结果经过加密通道反馈给所述用户终端。
可见,由于本实施例是在用户终端制作镜像数据的,并且该镜像数据是基于待运行的应用数据所对应的文件夹数据以及脚本数据进行一系列的加密处理后得到的,因此该镜像数据可有效避免被窥探以及被篡改。此外,本实施例基于协处理器对镜像数据的校验,可进一步确认镜像数据是否被篡改,从而确保镜像数据的机密性与完整性,从而保证待运行的应用数据的可以安全地、完整地部署至协处理器上。
示例性系统
基于上述实施例,本发明还提供一种应用数据部署至协处理器的系统,如图4中所示,该系统包括:用户终端100、与所述用户终端100通信连接的云服务器200以及与所述云服务器200通信连接的协处理器300。所述用户终端100包括:数据压缩模块10、压缩包加密模块20、哈希值计算模块30、密钥加密模块40、镜像数据制作模块50以及部署结果确定模块60。具体地,所述数据压缩模块10,用于获取待运行的应用数据所对应的文件夹数据以及脚本数据,并对所述文件夹数据与所述脚本数据进行压缩处理,得到初始压缩包。所述压缩包加密模块20,用于确定对称加密密钥,基于所述对称加密密钥对所述初始压缩包进行加密处理,得到加密压缩包。所述哈希值计算模块30,用于计算所述加密压缩包所对应的初始哈希值,并基于所述对称加密密钥对所述初始哈希值进行加密处理,得到加密哈希值。所述密钥加密模块40,用于获取协处理器的公钥,并基于所述公钥对所述对称加密密钥进行加密处理,得到密钥加密数据。所述镜像数据制作模块50,用于根据所述密钥加密数据、所述加密哈希值以及所述加密压缩包,得到所述待运行的应用数据所对应的镜像数据。所述部署结果确定模块60,用于基于预设的云服务器,将所述镜像数据上传至所述协处理器,并接收所述协处理器对所述镜像数据进行校验后得到的校验结果,根据所述校验结果确定所述待运行的应用数据的部署结果。
在一种实现方式中,所述部署结果确定模块60,包括:
云服务器连接建立单元,用于根据输入的IP信息,确定与所述IP信息所对应的云服务器,并与所述云服务器建立通信连接;
连接请求发送单元,用于基于所述云服务器向所述协处理器发送连接请求信息;
数据上传单元,用于基于所述云服务器接收所述协处理器响应所述连接请求信息所作出的反馈信息,并根据所述反馈信息,将所述镜像数据上传至所述协处理器,其中,所述反馈信息包括会话通道信息,所述会话通道信息用于反映所述协处理器与所述用户终端之间的连接通道。
在一种实现方式中,所述数据上传单元,包括:
上传请求发送子单元,用于基于所述会话通道信息,确定所述会话通道信息对应的加密通道,并基于所述加密通道,向所述协处理器发送数据上传请求信息,所述数据上传请求信息包括所述镜像数据的内存信息;
答复信息接收子单元,用于接收所述协处理器响应所述数据上传请求信息所生成的答复信息,所述答复信息中包括基于所述镜像数据的内存信息所生成的空间分配信息;
数据上传执行子单元,用于根据所述答复信息,将所述镜像数据上传至所述协处理器中与所述空间分配信息所对应的存储区域。
在一种实现方式中,所述部署结果确定模块60,还包括:
哈希值校验单元,用于基于所述协处理器的公钥,对所述校验结果进行解密处理,得到所述协处理器基于所述加密压缩包计算得到的校验哈希值,以及所述协处理器对所述加密哈希值进行解密处理后得到的初始哈希值;
结果确定单元,用于若所述初始哈希值与所述校验哈希值是相同的,则确定所述待运行的应用数据的部署结果为已安全部署至协处理器。
在一种实现方式中,所述用户终端还包括:
请求运行模块,用于若所述待运行的应用数据的部署结果为已安全部署至协处理器,则向所述协处理器发送运行请求,所述运行请求用于请求运行所述镜像数据。
本实施例中的所述协处理器300包括:镜像数据接收模块70和镜像数据校验模块80。具体地,所述镜像数据接收模块70,用于基于预设的云服务器接收用户终端上传的镜像数据,所述镜像数据用于反映所述用户终端基于确定的对称加密密钥对待运行的应用数据所对应的初始压缩包进行加密处理后得到的加密压缩包、用于反映所述用户终端基于所述对称加密密钥对所述加密压缩包对应的初始哈希值进行加密处理后得到的加密哈希值、用于反映所述用户终端基于协处理器的公钥对所述对称加密密钥进行加密处理后得到的密钥加密数据。所述镜像数据校验模块80,用于对所述镜像数据进行校验处理,得到校验结果,并将所述校验结果经过协处理器携带的私钥加密后发送至所述用户终端,以使得所述用户终端根据所述校验结果确定所述待运行的应用数据的部署结果。
在一种实现方式中,所述镜像数据接收模块70,包括:
连接请求接收单元,用于基于所述云服务器接收所述用户终端发送来的连接请求信息;
反馈信息发送单元,用于根据所述连接请求信息,生成反馈信息,并将所述反馈信息发送至所述用户终端,所述反馈信息包括会话通道信息,所述会话通道信息用于反映所述协处理器与所述用户终端之间的连接通道;
数据接收单元,用于接收所述用户终端响应所述反馈信息所上传的所述镜像数据。
在一种实现方式中,所述数据接收单元,包括:
上传请求接收子单元,用于基于所述会话通道信息,确定所述会话通道信息对应的加密通道,并接收所述用户终端基于所述加密通道发送来的数据上传请求信息,所述数据上传请求信息包括所述镜像数据的内存信息;
答复信息生成子单元,用于基于所述数据上传请求信息生成答复信息,所述答复信息中包括基于所述镜像数据的内存信息所生成的空间分配信息;
答复信息发送子单元,用于将所述答复信息发送至所述用户终端,并接收所述用户终端响应所述答复信息所上传的所述镜像数据;
镜像数据存储子单元,用于将所述镜像数据存储至与所述空间分配信息所对应的存储区域。
在一种实现方式中,所述镜像数据校验模块80,包括:
密钥解密单元,用于取所述镜像数据中的加密密钥数据,并使用协处理器携带的私钥对所述加密密钥数据进行解密处理,得到所述对称加密密钥;
哈希值解密单元,用于获取所述镜像数据中的加密哈希值,并使用所述对称加密密钥对所述加密哈希值进行解密处理,得到初始哈希值;
压缩包解密单元,用于获取所述镜像数据中的加密压缩包,并计算所述加密压缩包对应的校验哈希值;
校验结果生成单元,用于将所述初始哈希值与所述校验哈希值作为所述校验结果。
在一种实现方式中,所述协处理器还包括:
运行请求执行单元,用于接收所述用户终端发送的运行请求,并根据所述运行请求,使用所述对称加密密钥对所述加密压缩包进行解密处理,得到初始压缩包;
压缩包解析单元,用于对所述初始压缩包进行解析,得到所述待运行的应用数据所对应的文件夹数据以及脚本数据;
命令执行单元,用于获取所述脚本数据中的脚本命令,并根据所述脚本命令运行所述文件夹数据,得到运行结果,其中,所述脚本命令包括:启动命令、停止命令以及查询命令;
运行结果反馈单元,用于将所述运行结果反馈给所述用户终端。
本实施例的应用数据部署至协处理器的系统中各个模块的工作原理与上述方法实施例中各个步骤的原理相同,此处不再赘述。
基于上述实施例,本发明还提供了一种终端设备,所述终端设备的原理框图可以如5所示。所述终端设备包括用户终端或者协处理器,用户终端可为个人电脑、公司内网服务器等智能化产品终端。终端设备可以包括一个或多个处理器100(图5中仅示出一个),存储器101以及存储在存储器101中并可在一个或多个处理器100上运行的计算机程序102,例如,应用数据部署至协处理器的的程序。一个或多个处理器100执行计算机程序102时可以实现应用数据部署至协处理器的的方法实施例中的各个步骤。或者,一个或多个处理器100执行计算机程序102时可以实现应用数据部署至协处理器的的装置实施例中各模块/单元的功能,此处不作限制。
在一个实施例中,所称处理器100可以是中央处理单元(Central ProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路 (Application Specific Integrated Circuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在一个实施例中,存储器101可以是电子设备的内部存储单元,例如电子设备的硬盘或内存。存储器101也可以是电子设备的外部存储设备,例如电子设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,存储器101还可以既包括电子设备的内部存储单元也包括外部存储设备。存储器101用于存储计算机程序以及终端设备所需的其他程序和数据。存储器101还可以用于暂时地存储已经输出或者将要输出的数据。
本领域技术人员可以理解,图5中示出的原理框图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的终端设备的限定,具体的终端设备以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、运营数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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)等。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (16)

1.一种应用数据部署至协处理器的方法,其特征在于,所述方法应用于应用数据部署至协处理器的系统中的用户终端,所述系统包括:用户终端、与所述用户终端通信连接的云服务器以及与所述云服务器通信连接的协处理器;所述方法包括:
获取待运行的应用数据所对应的文件夹数据以及脚本数据,并对所述文件夹数据与所述脚本数据进行压缩处理,得到初始压缩包;
确定对称加密密钥,基于所述对称加密密钥对所述初始压缩包进行加密处理,得到加密压缩包;
计算所述加密压缩包所对应的初始哈希值,并基于所述对称加密密钥对所述初始哈希值进行加密处理,得到加密哈希值;
获取协处理器的公钥,并基于所述公钥对所述对称加密密钥进行加密处理,得到密钥加密数据;
根据所述密钥加密数据、所述加密哈希值以及所述加密压缩包,得到所述待运行的应用数据所对应的镜像数据;
基于预设的云服务器,将所述镜像数据上传至所述协处理器,并接收所述协处理器对所述镜像数据进行校验后得到的校验结果,根据所述校验结果确定所述待运行的应用数据的部署结果。
2.根据权利要求1所述的应用数据部署至协处理器的方法,其特征在于,所述获取待运行的应用数据所对应的文件夹数据以及脚本数据之前,包括:
获取与所述待运行的应用数据相关联的关联文件,并将所述待运行的应用数据与所述关联文件存储至目标文件夹中,得到所述文件夹数据;
获取用于对所述待运行的应用数据进行控制的脚本命令,并根据所述脚本命令,生成所述脚本数据,其中,所述脚本命令包括:启动命令、停止命令以及查询命令。
3.根据权利要求1所述的应用数据部署至协处理器的方法,其特征在于,所述确定对称加密密钥,包括:
查询指定密钥信息,得到查询结果;
若所述查询结果为存在所述指定密钥信息,则将所述指定密钥信息作为所述对称加密密钥;
若所述查询结果为不存在所述指定密钥信息,则随机生成所述对称加密密钥,并保存所述对称加密密钥。
4.根据权利要求1所述的应用数据部署至协处理器的方法,其特征在于,所述根据所述密钥加密数据、所述加密哈希值以及所述加密压缩包,得到所述待运行的应用数据所对应的镜像数据,包括:
将所述密钥加密数据、所述加密哈希值以及所述加密压缩包依次进行拼接处理,得到所述镜像数据。
5.根据权利要求1所述的应用数据部署至协处理器的方法,其特征在于,所述基于预设的云服务器,将所述镜像数据上传至所述协处理器,包括:
根据输入的IP信息,确定与所述IP信息所对应的云服务器,并与所述云服务器建立通信连接;
基于所述云服务器向所述协处理器发送连接请求信息;
基于所述云服务器接收所述协处理器响应所述连接请求信息所作出的反馈信息,并根据所述反馈信息,将所述镜像数据上传至所述协处理器,其中,所述反馈信息包括会话通道信息,所述会话通道信息用于反映所述协处理器与所述用户终端之间的连接通道。
6.根据权利要求5所述的应用数据部署至协处理器的方法,其特征在于,所述根据所述反馈信息,将所述镜像数据上传至所述协处理器,包括:
基于所述会话通道信息,确定所述会话通道信息对应的加密通道,并基于所述加密通道,向所述协处理器发送数据上传请求信息,所述数据上传请求信息包括所述镜像数据的内存信息;
接收所述协处理器响应所述数据上传请求信息所生成的答复信息,所述答复信息中包括基于所述镜像数据的内存信息所生成的空间分配信息;
根据所述答复信息,将所述镜像数据上传至所述协处理器中与所述空间分配信息所对应的存储区域。
7.根据权利要求1所述的应用数据部署至协处理器的方法,其特征在于,所述根据所述校验结果确定所述待运行的应用数据的部署结果,包括:
基于所述协处理器的公钥,对所述校验结果进行解密处理,得到所述协处理器基于所述加密压缩包计算得到的校验哈希值,以及所述协处理器对所述加密哈希值进行解密处理后得到的初始哈希值;
若所述初始哈希值与所述校验哈希值是相同的,则确定所述待运行的应用数据的部署结果为已安全部署至协处理器。
8.根据权利要求1-7任一项所述的应用数据部署至协处理器的方法,其特征在于,所述方法还包括:
若所述待运行的应用数据的部署结果为已安全部署至协处理器,则向所述协处理器发送运行请求,所述运行请求用于请求运行所述镜像数据。
9.一种应用数据部署至协处理器的方法,其特征在于,所述方法应用于应用数据部署至协处理器的系统中的协处理器,所述系统包括:用户终端、与所述用户终端通信连接的云服务器以及与所述云服务器通信连接的协处理器;所述方法包括:
基于预设的云服务器接收用户终端上传的镜像数据,所述镜像数据用于反映所述用户终端基于确定的对称加密密钥对待运行的应用数据所对应的初始压缩包进行加密处理后得到的加密压缩包、用于反映所述用户终端基于所述对称加密密钥对所述加密压缩包对应的初始哈希值进行加密处理后得到的加密哈希值、用于反映所述用户终端基于协处理器的公钥对所述对称加密密钥进行加密处理后得到的密钥加密数据;
对所述镜像数据进行校验处理,得到校验结果,并将所述校验结果经过协处理器携带的私钥加密后发送至所述用户终端,以使得所述用户终端根据所述校验结果确定所述待运行的应用数据的部署结果。
10.根据权利要求9所述的应用数据部署至协处理器的方法,其特征在于,所述基于预设的云服务器接收用户终端上传的镜像数据,包括:
基于所述云服务器接收所述用户终端发送来的连接请求信息;
根据所述连接请求信息,生成反馈信息,并将所述反馈信息发送至所述用户终端,所述反馈信息包括会话通道信息,所述会话通道信息用于反映所述协处理器与所述用户终端之间的连接通道;
接收所述用户终端响应所述反馈信息所上传的所述镜像数据。
11.根据权利要求10所述的应用数据部署至协处理器的方法,其特征在于,所述接收所述用户终端响应所述反馈信息所上传的所述镜像数据,包括:
基于所述会话通道信息,确定所述会话通道信息对应的加密通道,并接收所述用户终端基于所述加密通道发送来的数据上传请求信息,所述数据上传请求信息包括所述镜像数据的内存信息;
基于所述数据上传请求信息生成答复信息,所述答复信息中包括基于所述镜像数据的内存信息所生成的空间分配信息;
将所述答复信息发送至所述用户终端,并接收所述用户终端响应所述答复信息所上传的所述镜像数据;
将所述镜像数据存储至与所述空间分配信息所对应的存储区域。
12.根据权利要求11所述的应用数据部署至协处理器的方法,其特征在于,所述对所述镜像数据进行校验处理,得到校验结果,包括:
获取所述镜像数据中的加密密钥数据,并使用协处理器携带的私钥对所述加密密钥数据进行解密处理,得到所述对称加密密钥;
获取所述镜像数据中的加密哈希值,并使用所述对称加密密钥对所述加密哈希值进行解密处理,得到初始哈希值;
获取所述镜像数据中的加密压缩包,并计算所述加密压缩包对应的校验哈希值;
将所述初始哈希值与所述校验哈希值作为所述校验结果。
13.根据权利要求9-12任一项所述的应用数据部署至协处理器的方法,其特征在于,所述方法还包括:
接收所述用户终端发送的运行请求,并根据所述运行请求,使用所述对称加密密钥对所述加密压缩包进行解密处理,得到初始压缩包;
对所述初始压缩包进行解析,得到所述待运行的应用数据所对应的文件夹数据以及脚本数据;
获取所述脚本数据中的脚本命令,并根据所述脚本命令运行所述文件夹数据,得到运行结果,其中,所述脚本命令包括:启动命令、停止命令以及查询命令;
将所述运行结果反馈给所述用户终端。
14.一种应用数据部署至协处理器的系统,其特征在于,所述系统包括:用户终端、与所述用户终端通信连接的云服务器以及与所述云服务器通信连接的协处理器;其中,所述用户终端包括:
数据压缩模块,用于获取待运行的应用数据所对应的文件夹数据以及脚本数据,并对所述文件夹数据与所述脚本数据进行压缩处理,得到初始压缩包;
压缩包加密模块,用于确定对称加密密钥,基于所述对称加密密钥对所述初始压缩包进行加密处理,得到加密压缩包;
哈希值计算模块,用于计算所述加密压缩包所对应的初始哈希值,并基于所述对称加密密钥对所述初始哈希值进行加密处理,得到加密哈希值;
密钥加密模块,用于获取协处理器的公钥,并基于所述公钥对所述对称加密密钥进行加密处理,得到密钥加密数据;
镜像数据制作模块,用于根据所述密钥加密数据、所述加密哈希值以及所述加密压缩包,得到所述待运行的应用数据所对应的镜像数据;
部署结果确定模块,用于基于预设的云服务器,将所述镜像数据上传至所述协处理器,并接收所述协处理器对所述镜像数据进行校验后得到的校验结果,根据所述校验结果确定所述待运行的应用数据的部署结果;
所述协处理器包括:
镜像数据接收模块,用于基于预设的云服务器接收用户终端上传的镜像数据,所述镜像数据用于反映所述用户终端基于确定的对称加密密钥对待运行的应用数据所对应的初始压缩包进行加密处理后得到的加密压缩包、用于反映所述用户终端基于所述对称加密密钥对所述加密压缩包对应的初始哈希值进行加密处理后得到的加密哈希值、用于反映所述用户终端基于协处理器的公钥对所述对称加密密钥进行加密处理后得到的密钥加密数据;
镜像数据校验模块,用于对所述镜像数据进行校验处理,得到校验结果,并将所述校验结果经过协处理器携带的私钥加密后发送至所述用户终端,以使得所述用户终端根据所述校验结果确定所述待运行的应用数据的部署结果。
15.一种终端设备,其特征在于,所述终端设备包括用户终端或者协处理器,所述终端设备包括存储器、处理器及存储在所述存储器中并可在处理器上运行的应用数据部署至协处理器的程序,所述处理器执行所述应用数据部署至协处理器的程序时,实现如权利要求1-13任一项所述的应用数据部署至协处理器的方法的步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有应用数据部署至协处理器的程序,所述应用数据部署至协处理器的程序被处理器执行时,实现如权利要求1-13任一项所述的应用数据部署至协处理器的方法的步骤。
CN202211113088.9A 2022-09-14 2022-09-14 一种应用数据部署至协处理器的方法及系统 Active CN115203708B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211113088.9A CN115203708B (zh) 2022-09-14 2022-09-14 一种应用数据部署至协处理器的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211113088.9A CN115203708B (zh) 2022-09-14 2022-09-14 一种应用数据部署至协处理器的方法及系统

Publications (2)

Publication Number Publication Date
CN115203708A CN115203708A (zh) 2022-10-18
CN115203708B true CN115203708B (zh) 2022-12-23

Family

ID=83571934

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211113088.9A Active CN115203708B (zh) 2022-09-14 2022-09-14 一种应用数据部署至协处理器的方法及系统

Country Status (1)

Country Link
CN (1) CN115203708B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115361238B (zh) * 2022-10-20 2023-03-24 粤港澳大湾区数字经济研究院(福田) 一种网络通信方法、终端及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105849744A (zh) * 2013-07-25 2016-08-10 赛拉诺斯股份有限公司 用于分布式临床实验室的系统和方法
CN107710720A (zh) * 2015-04-07 2018-02-16 英特尔公司 用于移动客户端设备的云计算
CN209057376U (zh) * 2019-01-08 2019-07-02 湖北亿咖通科技有限公司 汽车无线通信装置及系统
CN111435396A (zh) * 2019-01-15 2020-07-21 量子芯云(北京)微电子科技有限公司 智能安全主控
CN112822274A (zh) * 2021-01-08 2021-05-18 苏州蓝赫朋勃智能科技有限公司 一种家庭用边缘计算系统安全校验方法及装置
CN113703918A (zh) * 2021-08-26 2021-11-26 中国人民解放军战略支援部队信息工程大学 一种基于硬件辅助的虚拟可信平台及安全处理方法
CN215378952U (zh) * 2020-12-08 2021-12-31 国家电投集团信息技术有限公司 基于云边协同技术的边缘网关终端设备及数据处理系统
CN114338228A (zh) * 2022-01-26 2022-04-12 北京信安世纪科技股份有限公司 镜像安全处理方法、装置及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140298207A1 (en) * 2013-03-29 2014-10-02 Intertrust Technologies Corporation Systems and Methods for Managing Documents and Other Electronic Content
EP3531730B1 (en) * 2014-06-30 2021-08-11 Huawei Technologies Co., Ltd. Terminal management method and network device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105849744A (zh) * 2013-07-25 2016-08-10 赛拉诺斯股份有限公司 用于分布式临床实验室的系统和方法
CN107710720A (zh) * 2015-04-07 2018-02-16 英特尔公司 用于移动客户端设备的云计算
CN209057376U (zh) * 2019-01-08 2019-07-02 湖北亿咖通科技有限公司 汽车无线通信装置及系统
CN111435396A (zh) * 2019-01-15 2020-07-21 量子芯云(北京)微电子科技有限公司 智能安全主控
CN215378952U (zh) * 2020-12-08 2021-12-31 国家电投集团信息技术有限公司 基于云边协同技术的边缘网关终端设备及数据处理系统
CN112822274A (zh) * 2021-01-08 2021-05-18 苏州蓝赫朋勃智能科技有限公司 一种家庭用边缘计算系统安全校验方法及装置
CN113703918A (zh) * 2021-08-26 2021-11-26 中国人民解放军战略支援部队信息工程大学 一种基于硬件辅助的虚拟可信平台及安全处理方法
CN114338228A (zh) * 2022-01-26 2022-04-12 北京信安世纪科技股份有限公司 镜像安全处理方法、装置及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
云计算模式内部威胁综述;王国峰;《计算机学报》;20170228;296-316 *
基于多关键字的Top-k布尔可搜索加密方案;郭斯栩;《计算机研究与发展》;20210402;1841-1852 *

Also Published As

Publication number Publication date
CN115203708A (zh) 2022-10-18

Similar Documents

Publication Publication Date Title
CN109347835B (zh) 信息传输方法、客户端、服务器以及计算机可读存储介质
US9602497B2 (en) Trusted and unsupervised digital certificate generation using a security token
US7526649B2 (en) Session key exchange
US11206137B2 (en) Providing high availability computing service by issuing a certificate
CN108737106B (zh) 区块链系统上用户验证方法、装置、终端设备及存储介质
CN107846396B (zh) 存储器系统及其与主机之间的绑定方法
CN109347813B (zh) 物联网设备登录方法、系统、计算机设备和存储介质
CN111401901B (zh) 生物支付设备的认证方法、装置、计算机设备和存储介质
CN113239363A (zh) 固件更新方法、装置、设备、可读存储介质及存储器系统
KR20210015264A (ko) 화이트박스 암호화를 이용한 puf 기반 사물인터넷 디바이스 인증 장치 및 방법
WO2022160697A1 (zh) 授权认证、软件开发工具包生成方法、装置及电子设备
KR102591826B1 (ko) Puf를 이용한 인증서 기반 디바이스 인증 장치 및 방법
CN114244508A (zh) 数据加密方法、装置、设备及存储介质
CN115203708B (zh) 一种应用数据部署至协处理器的方法及系统
CN110838919B (zh) 通信方法、存储方法、运算方法及装置
KR102364649B1 (ko) Puf 기반 사물인터넷 디바이스 인증 장치 및 방법
CN116881936A (zh) 可信计算方法及相关设备
CN110740036A (zh) 基于云计算的防攻击数据保密方法
WO2022212396A1 (en) Systems and methods of protecting secrets in use with containerized applications
KR102539418B1 (ko) Puf 기반 상호 인증 장치 및 방법
CN117063174A (zh) 用于通过基于app的身份的app间相互信任的安全模块及方法
CN114024702A (zh) 信息安全保护的方法以及计算设备
CN111556064A (zh) 基于电力网关的密钥管理方法、装置、介质及终端设备
US20220247568A1 (en) Data storage device, system, and method for digital signature
EP4089955A1 (en) Quantum safe method for authentication of a service provider device to a user device

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
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20221018

Assignee: Shenzhen Qiangji Computing Technology Co.,Ltd.

Assignor: Guangdong Hong Kong Macao Dawan District Digital Economy Research Institute (Futian)

Contract record no.: X2023980045750

Denomination of invention: A Method and System for Deploying Application Data to Coprocessors

Granted publication date: 20221223

License type: Exclusive License

Record date: 20231103