CN111541788B - 区块链一体机的哈希更新方法及装置 - Google Patents
区块链一体机的哈希更新方法及装置 Download PDFInfo
- Publication number
- CN111541788B CN111541788B CN202010653793.2A CN202010653793A CN111541788B CN 111541788 B CN111541788 B CN 111541788B CN 202010653793 A CN202010653793 A CN 202010653793A CN 111541788 B CN111541788 B CN 111541788B
- Authority
- CN
- China
- Prior art keywords
- image file
- machine
- blockchain
- hash value
- new
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- 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/3236—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 using cryptographic hash functions
- H04L9/3239—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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- 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/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- 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/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
-
- 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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
-
- 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/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- 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/3236—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 using cryptographic hash functions
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Power Engineering (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本说明书一个或多个实施例提供一种区块链一体机的哈希更新方法及装置,该方法可以包括:所述区块链一体机上装配的密码加速卡向新版本镜像文件的发布方发送协商信息,该协商信息分别被发布方与密码加速卡用于确定出部署密钥;其中,新版本镜像文件用于更新区块链一体机中部署的旧版本镜像文件;密码加速卡接收发布方使用部署密钥加密后的新哈希值,新哈希值对应于新版本镜像文件;密码加速卡将存储的对应于旧版本镜像文件的旧哈希值替换为新哈希值,该新哈希值用于与区块链一体机中部署的镜像文件的当前哈希值进行比较以确定区块链一体机中是否部署了上述新版本镜像文件。
Description
技术领域
本说明书一个或多个实施例涉及区块链技术领域,尤其涉及一种区块链一体机的哈希更新方法及装置。
背景技术
区块链技术(也被称之为,分布式账本技术)是一种去中性化的分布式数据库技术,具有去中心化、公开透明、不可篡改、可信任等多种特点,适用于诸多对数据可靠性具有高需求的应用场景中。
发明内容
有鉴于此,本说明书一个或多个实施例提供一种区块链一体机的哈希更新方法及装置。
为实现上述目的,本说明书一个或多个实施例提供技术方案如下:
根据本说明书一个或多个实施例的第一方面,提出了一种区块链一体机的哈希更新方法,包括:
所述区块链一体机上装配的密码加速卡向新版本镜像文件的发布方发送协商信息,所述协商信息分别被所述发布方与所述密码加速卡用于确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件;
所述密码加速卡接收所述发布方使用所述部署密钥加密后的新哈希值,所述新哈希值对应于所述新版本镜像文件;
所述密码加速卡将存储的对应于所述旧版本镜像文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希值进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件。
根据本说明书一个或多个实施例的第二方面,提出了一种区块链一体机的哈希更新方法,包括:
响应于所述区块链一体机上装配的密码加速卡发送的协商信息,所述区块链一体机将所述协商信息转发至新版本镜像文件的发布方,以使所述发布方与所述密码加速卡分别基于所述协商信息确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件;
所述区块链一体机将所述发布方使用所述部署密钥加密后的对应于所述新版本镜像文件的新哈希值转发至所述密码加速卡,以使所述密码加速卡将存储的对应于所述旧版本文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件。
根据本说明书一个或多个实施例的第三方面,提出了一种区块链一体机的哈希更新装置,包括:
协商模块,使所述区块链一体机上装配的密码加速卡向新版本镜像文件的发布方发送协商信息,所述协商信息分别被所述发布方与所述密码加速卡用于确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件;
接收模块,使所述密码加速卡接收所述发布方使用所述部署密钥加密后的新哈希值,所述新哈希值对应于所述新版本镜像文件;
替换模块,使所述密码加速卡将存储的对应于所述旧版本镜像文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希值进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件。
根据本说明书一个或多个实施例的第四方面,提出了一种区块链一体机的哈希更新装置,包括:
信息转发模块,使响应于所述区块链一体机上装配的密码加速卡发送的协商信息,所述区块链一体机将所述协商信息转发至新版本镜像文件的发布方,以使所述发布方与所述密码加速卡分别基于所述协商信息确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件;
哈希转发模块,使所述区块链一体机将所述发布方使用所述部署密钥加密后的对应于所述新版本镜像文件的新哈希值转发至所述密码加速卡,以使所述密码加速卡将存储的对应于所述旧版本文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件。
根据本说明书一个或多个实施例的第五方面,提出了一种密码加速卡,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如第一方面所述的方法。
根据本说明书一个或多个实施例的第六方面,提出了一种区块链一体机,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如第二方面所述的方法。
根据本说明书一个或多个实施例的第七方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面或第二方面所述方法的步骤。
附图说明
图1是一示例性实施例提供的一种区块链一体机的哈希更新方法的流程图。
图2是一示例性实施例提供的另一种区块链一体机的哈希更新方法的流程图。
图3是一示例性实施例提供的一种区块链一体机的哈希更新方法的交互流程图。
图4是一示例性实施例提供的另一种区块链一体机的哈希更新方法的交互流程图。
图5是一示例性实施例提供的一种密码加速卡的结构示意图。
图6是一示例性实施例提供的一种区块链一体机的哈希更新装置的框图。
图7是一示例性实施例提供的一种区块链一体机的结构示意图。
图8是一示例性实施例提供的另一种区块链一体机的哈希更新装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
在区块链技术的发展早期,用户基本上都是将自身持有的PC、笔记本电脑等加入区块链网络,成为区块链网络中的区块链节点。此时可以称之为区块链网络的1.0架构时代,不仅加入区块链网络的行为是用户的自主行为,而且用户还需要自主运维,譬如对自身加入区块链网络的PC等设备进行维护和配置等。随着区块链技术的不断发展,尤其是用户对于高性能、高可用基础设施的需求不断增强,区块链网络发展为基于云服务的2.0架构时代。在2.0架构时代,Blockchain-as-a-Service(BaaS)服务为区块链快速部署、技术落地提供了快速便捷的解决方案,并支持了大量区块链服务项目。BaaS服务通常建立在公有云或者私有云这类基础设施基础上,提供强大部署能力的同时,引入了较重的基础设施依赖。而区块链作为一个典型的分布式计算技术,并不是所有节点都可以迁移到云上,而需要进行私有化部署。私有化部署带来的额外技术迁移和运维成本导致实际落地过程中会有技术接口不统一,部署维护成本高的问题。因此,为了满足用户在区块链网络的私有化、安全性等方面的需求,需要对区块链网络实现进一步的架构升级,从而实现基于区块链一体机的3.0架构时代。
区块链一体机可以实现软硬一体化。发布方在发布区块链一体机的同时,不仅向用户提供该区块链一体机的硬件设备,并且该区块链一体机还集成了针对该硬件设备实现深度优化的软件配置,从而实现了上述的软硬一体化。
针对区块链一体机可以实现硬件优化。例如,区块链一体机上可以部署专用的智能合约处理芯片,譬如该智能合约处理芯片可以为FPGA(Field Programmable GateArray,现场可编程门阵列)芯片或其他类型的芯片,以提升针对智能合约的处理效率。智能合约处理芯片可以部署有硬件信任根密钥,譬如该硬件信任根密钥可以由发布方预先烧录至该智能合约处理芯片中,且发布方能够获知该硬件信任根密钥对应的公钥(比如该公钥被公开)。因此,智能合约处理芯片可以向发布方发送协商信息,并通过硬件信任根密钥对该协商信息进行签名,使得发布方可以基于相应的公钥进行验签;以及,在验签成功后,可以确保智能合约处理芯片和发布方分别基于上述协商信息协商得到相同的密钥。协商的密钥可以包括文件部署密钥,发布方可以基于该文件部署密钥将区块链节点所需的二进制镜像文件加密传输至智能合约处理芯片,而智能合约处理芯片可以基于该文件部署密钥实现解密并部署二进制镜像文件。协商的密钥可以包括业务秘密部署密钥,发布方可以基于该业务秘密部署密钥将区块链节点的节点私钥、业务根密钥等加密传输至智能合约处理芯片,而智能合约处理芯片可以基于该业务秘密部署密钥获取并部署节点私钥、业务根密钥等,以用于满足区块链场景下的隐私交易需求。例如,节点私钥对应于节点公钥,客户端可以通过节点公钥对区块链交易进行加密传输,而区块链节点可以通过节点私钥进行解密。而业务根密钥为对称密钥,可以用于对合约代码、合约状态的取值等业务数据进行加密存储。业务根密钥也可能并不直接被使用,智能合约处理芯片可以通过该业务根密钥的衍生密钥进行加解密,以降低业务根密钥的安全风险。通过对节点私钥、业务根密钥(或其衍生密钥)的可靠管理,并且确保数据除了被智能合约处理芯片进行处理的过程之外均处于加密状态,智能合约处理芯片实际上在区块链一体机上形成了硬件的可信执行环境(TrustedExecution Environment,简称TEE),确保交易、合约代码、合约状态等需要隐私保护的数据不会发生隐私泄露。
再例如,区块链一体机上可以部署智能网卡。智能网卡除了实现传统网卡的功能之外,还可以替代或协助区块链一体机的CPU完成部分功能,以实现对CPU的计算卸载。尤其是,可以将网络I/O密集型的操作由CPU转移至智能网卡执行,这样CPU本身就可以处理更多的计算密集型操作,比如交易处理、存储处理等。由于智能网卡相比于区块链一体机上的其他部件(如CPU)而言,无论是在物理层面上或是逻辑层面上都更靠近网络,使得智能网卡总是优先拿到网络中传输的数据,因而在不涉及或少量涉及存储访问的情况下,通过智能网卡来处理这些数据能够实现相对更高的处理效率、相对更小的延迟、相对更大的吞吐量,从而以相对较小的成本达到比较高的性能收益。例如,在共识算法中,除了网络状态发生变化、节点发生增删、共识配置发生变化等情况下,几乎不需要访问存储,因而可以由智能网卡来完成共识操作,而只需要将共识结果告知CPU即可、无需CPU直接参与共识过程,能够显著提升共识效率。类似地,由智能网卡转发交易、由新增区块链节点上的智能网卡实现区块同步等,同样可以达到类似的效果,此处不再赘述。此外,智能网卡在收到交易后,可以通过与历史交易进行比较,比如从交易的发送方信息、目的地址、时间戳、哈希值等字段进行比较,从而识别和过滤掉重放交易。智能网卡还可以对收到的交易进行内容解析,从而过滤掉非法交易或预定义的不想处理的交易等,作为对交换机实现的基于二层或三层的报文过滤的补充。
又例如,区块链一体机上可以部署密码加速卡,也可称为高速密码加速卡。密码加速卡可以实现全加密内存,并通过硬件加固以抵御侧信道攻击,还可以针对探针、激光等手段实现物理防护,具有极高的安全性。举例而言,区块链一体机上使用的密码加速卡可以具有国密二级资质、国密三级资质或其他资质。当部署有密码加速卡时,上文所述的硬件信任根密钥可以被维护于该密码加速卡中,并且密码加速卡可以基于该硬件信任根密钥实现签名操作,并替代或协助智能合约处理芯片完成上文所述的密钥协商等操作;类似地,密码加速卡可以用于维护公钥,使得密码加速卡可以基于维护的公钥实现签名的验证操作。总之,可以将区块链一体机上与密钥管理、加解密、签名验签等相关的至少一部分操作交由密码加速卡,从而既可以获得极高的安全性,又可以对区块链一体机的CPU或上述的智能合约处理芯片等实现性能卸载,以提升处理效率。
针对区块链一体机可以实现软件优化。例如,区块链一体机可以内置证书授权服务,可以实现自动化的证书签发与节点身份认证,可以自动建链和区块链节点的自动加入,从而实现区块链一体机的即插即用。那么,用户可以快速实现区块链一体机的部署。除了能够在多台区块链一体机之间快捷地建立私有型的区块链网络,区块链一体机可以集成标准化的云上服务接口,使得区块链一体机可以自动对接云上服务,从而实现区块链一体机与云端部署的区块链节点之间混合部署,构建混合型的区块链网络。区块链一体机还可以集成标准化的跨链服务接口,使得区块链一体机可以基于标准化的跨链协议或标准化的跨链服务实现跨链服务,极大地扩展了区块链一体机的应用场景,满足用户的跨链需求,比如实现不同区块链网络之间的跨链数据交互,再比如实现区块链网络与链下计算节点之间的跨链数据交互(譬如由链下计算节点为区块链节点分担计算任务等)等。
基于统一的软件逻辑,本说明书的区块链一体机上装配的密码加速卡可以实现对自身所存储旧版本镜像文件对应的旧哈希值的更新过程。在该更新过程中,密码加速卡首先与新版本镜像文件的发布方(下文简称为发布方)通过协商信息确定出部署密钥,然后双方使用该部署密钥将新版本镜像文件对应的新哈希值从发布方加密传输至密码加速卡,最后密码加速卡使用解密得到的新哈希值替换本地存储的旧哈希值,从而实现对旧哈希值的更新。下面结合附图对该过程进行说明。
图1是一示例性实施例提供的一种区块链一体机的哈希更新方法的流程图,该方法应用于区块链一体机中装配的密码加速卡。为与密码加速卡所在的区块链一体机进行区分,本说明书的后续说明中所出现的“区块链一体机”可以被理解为区块链一体机的CPU或区块链一体机中装配的除密码加速卡之外的其他组件。如图1所示,该方法可以包括以下步骤:
步骤102,所述区块链一体机上装配的密码加速卡向新版本镜像文件的发布方发送协商信息,所述协商信息分别被所述发布方与所述密码加速卡用于确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件。
在本实施例中,区块链一体机本地预先部署有(尚未执行的)镜像文件,对于该镜像文件的具体形式本说明书并不进行限制。例如,镜像文件可以为可执行镜像文件,如.exe格式的可执行文件,此时,该可执行文件可以被预先安装在区块链一体机自身的硬盘等执行组件中。镜像文件还可以为二进制镜像文件,如.bin格式的二进制文件,此时,该二进制文件可以被预先存储在区块链一体机自身的硬盘等执行组件中的合适位置,以被调用执行。进一步的,该镜像文件可以为区块链一体机上部署的对应于区块链节点的二进制镜像文件,相应的,该二进制镜像文件被执行时,区块链一体机被实现为区块链节点,如实现区块链可视化、合约创建及部署、合约执行、密钥管理、隐私计算等一个或多个功能。该镜像文件也可以为区块链一体机上部署的包含上述对应于区块链节点的二进制镜像文件的平台镜像文件,该平台镜像文件被执行时,区块链一体机不仅被实现为区块链节点,还可以实现如文件处理、节点监控、服务监控等一个或多个其他功能,不再赘述。
相应的,密码加速卡当前已经存储有对应于旧版本镜像文件的旧哈希值,本说明书方案的目的即为将该旧哈希值,替换为对应于上述新版本镜像文件的新哈希值,从而实现对旧哈希值的更新,以保证密码加速卡中存储的哈希值始终对应于当前。
因为密码加速卡和发布方基于上述协商信息确定的部署密钥用于更新密码加速卡中当前已存储的对应于旧版本镜像文件的旧哈希值,所以,在一实施例中,密码加速卡可以在确定需要进行哈希更新之后,再向发布方发送上述协商信息。例如,在镜像文件更新之前,密码加速卡可以主动向发布方发送更新询问消息,并根据发布方针对该更新询问消息返回的确认消息确定是否需要进行哈希更新。比如密码加速卡可以在区块链一体机开机运行时、镜像文件被执行前或者按照预设周期向发布方发送上述更新询问消息,以便及时获知针对镜像文件的更新需求。再比如在镜像文件更新之前,密码加速卡可以在接收到发布方主动发送的针对镜像文件的更新通知后,确定需要进行哈希更新。再比如在镜像文件更新时或更新后,密码加速卡可以根据检测到的镜像文件的更新事件确定需要进行哈希更新,然后向发布方发送上述协商信息。
在一实施例中,密码加速卡可以在TEE中生成上述协商信息,并使用自身对应的私钥进行签名。例如,密码加速卡可以生成一个随机数S1作为自己的私钥,做模幂运算后得到公钥,然后选择RSA、ECDSA或DSA等密钥交换算法对模幂运算的参数及上述公钥进行签名,并将上述参数、公钥及签名关联发送至发布方。此时,上述协商信息即包括:对上述随机数进行模幂运算的参数以及模幂运算得到的公钥。相应的,发布方接收到上述协商信息后,可以在验证签名有效的情况下,基于上述协商信息产生一个随机数S2,并将该随机数S2加密后的公钥返回至密码加速卡,从而使得密码加速卡和发布方基于上述过程各自产生相同的部署密钥。上述协商的具体过程可以参见相关技术中公开的内容,此处不再赘述。
在一实施例中,密码加速卡上可以预先部署有信任根密钥(Attestation Key),在密钥协商过程中,密码加速卡可以使用该信任根密钥对协商信息进行签名。其中,信任根密钥可以被预置于密码加速卡中,或者信任根密钥可由区块链一体机或其他对象在离线安全环境下部署至密码加速卡中,例如在密码加速卡为基于FPGA芯片的密码加速卡的情况下,可以将信任根密钥烧录在FPGA芯片中。但是,由于FPGA芯片具有易失性,断电后保存的信任根密钥就会丢失,使得重新上电后需要密码加速卡重新获取并存储信任根密钥。因此,为了减少客户端的烧录次数,FPGA结构可以进一步包含存储器,该存储器与FPGA芯片相连,使得信任根密钥被部署于存储器中,且FPGA芯片从存储器中读取信任根密钥以实现相关功能;其中,存储器具有非易失性,即便断电仍然可以保存信任根密钥,而重新上电后只需重新从存储器读入FPGA芯片即可,无需密码加速卡重新获取并烧录。上述存储器可以具有多种形式,比如闪存等可重复擦写的非易失性存储器,再比如熔丝存储器等不可重复擦写的存储器等,本说明书并不对此进行限制。
其中,上述信任根密钥属于非对称密钥,且该信任根密钥对应的公钥被公开,或者信任根密钥对应的公钥仅被发布方所维护,使得即便该信任根密钥并非由发布方所部署(预置或通过其他对象所部署),发布方也可以基于被公开的公钥对该信任根密钥生成的签名进行验证。因此,发布方与密码加速卡之间可以利用该信任根密钥实现密钥协商:在密钥协商过程中,密码加速卡可以使用该信任根密钥对上述协商信息进行签名,以便上述发布方基于自身所维护的信任根密钥的对应的公钥对上述协商信息进行验证,从而保证协商信息传输过程的私密性。
进一步的,密码加速卡和发布方各自确定的部署密钥可以由密码加速卡与发布方通过密钥协商过程直接得到,即该部署密钥可以为秘密值(或称,主密钥);或者,该部署密钥可由密码加速卡与发布方分别通过密钥导出函数从上述的秘密值导出得到。通过基于上述过程,发布方与密码加速卡可以完成密钥协商,使得发布方与密码加速卡可以分别获得相同的部署密钥。
进一步的,在利用上述密钥协商过程确定出的部署密钥加密传输新哈希值时,发布方和密码加速卡可以在首次协商产生后分别在各自的TEE中保存上述部署密钥,以便后续传输新哈希值(对应于镜像文件更新)时使用,从而一次协商出的部署密钥可以被多次使用,降低了密钥协商的工作量也提高了密钥的使用效率。然而,当同一对部署密钥被多次使用时,密钥泄露的风险可能相应的增加,因此为避免密钥泄露,也可以对协商出的部署密钥设置使用次数上限或有效时长。甚至,在安全性要求较高的场景下,也可以每次传输新哈希值时临时进行密钥协商,并将在协商确定的部署密钥使用一次后即将其丢弃,以保证部署密钥不被泄露。在本实施例中,通过预先部署的信任根密钥进行密钥协商,不仅保证了新哈希值传输过程的私密性,而且降低了密码加速卡的信任根密钥被泄露的可能性,从而提高了密码加速卡的安全性。
步骤104,所述密码加速卡接收所述发布方使用所述部署密钥加密后的新哈希值,所述新哈希值对应于所述新版本镜像文件。
在一实施例中,密码加速卡中当前存储的旧哈希值可以由发布方在TEE中根据其发布的旧版本镜像文件计算得到;类似的,上述用于替换旧哈希值的新哈希值也可以由发布方在TEE中根据用于升级旧文件的新版本镜像文件计算得到。其中,上述发布方对应的上述TEE可以采用相关技术中的任一技术进行构建;发布方可以采用相关技术中的任一哈希算法计算旧哈希和新哈希,本说明书对此并不进行限制。根据旧版本镜像文件计算旧哈希值时所使用的哈希算法与根据新版本镜像文计算新哈希值时所使用的哈希算法可以相同,也可以不同,本说明书并不对此进行限制。
在一实施例中,密码加速卡可以使用上述密钥协商过程中确定的部署密钥对上述计算过程得到的新哈希值进行加密,然后将加密后的新哈希值传输至密码加速卡,以保证新哈希值传输过程中的私密性。例如,发布方可以将加密后的新哈希值直接传输至密码加速卡,以降低新哈希值传输过程中信息泄露的可能性;或者,在无法获知密码加速卡的网络地址等无法与密码加速卡直接通讯的情况下,发布方也可以将加密后的新哈希值先发送至区块链一体机,再由区块链一体机将其转发至密码加速卡。
步骤106,所述密码加速卡将存储的对应于所述旧版本镜像文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希值进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件。
在一实施例中,密码加速卡在收到使用部署密钥加密的新哈希值后,可以在自身对应的TEE中使用前述密钥协商过程中确定的部署密钥解密得到明文状态的新哈希值,然后将当前已存储的旧哈希值替换为该新哈希值。从而通过预先部署的信任根密钥,使得新哈希值的传输过程可以使用临时确定的部署密钥,不仅保证了新哈希值传输过程的私密性,而且降低了密码加速卡的信任根密钥被泄露的可能性,从而提高了密码加速卡的安全性。另外,在区块链一体机中同时存在分别对应于不同的新版本镜像文件的多个旧版本镜像文件的情况下,密码加速卡可以建立任一新版本镜像文件对应的新哈希值与该镜像文件的文件标识之间的关联关系,并将各个新哈希值按照各自对应的关联关系进行加密存储,以便针对性的实现对任一旧哈希值的更新。
在本实施例中,无论是密码加速卡中保存的上述旧哈希值,还是更新后的新哈希值,都可以用于在相应镜像文件执行前对镜像文件是否可信进行验证。例如,在旧版本镜像文件和旧哈希值更新之前,可以计算旧版本镜像文件的当前哈希,并将当前哈希与旧哈希值进行比较:若比较结果表明当前哈希与旧哈希值相同,则说明区块链一体机本地部署的旧版本镜像文件即为发布方发布的镜像文件,是未经篡改且被成功部署的镜像文件——该旧版本镜像文件可信,因此,区块链一体机可以执行该旧版本镜像文件以形成区块链节点。反之,若比较结果表明当前哈希与旧哈希值不相同,则说明区块链一体机本地部署的镜像文件并非发布方发布的镜像文件,而可能是经过非法篡改的镜像文件或部署出错的镜像文件——该旧版本镜像文件不可信,此时,区块链一体机可以拒绝执行该旧版本镜像文件。类似的,在旧版本镜像文件和旧哈希值分别更新为新版本镜像文件和新哈希值后,在新版本镜像文件执行前同样可以计算新版本镜像文件的当前哈希,并通过比较该当前哈希与上述新哈希值是否相同,判定是否由区块链一体机执行该新版本镜像文件,具体过程同上,不再赘述。
实际上,因为密码加速卡被装配在区块链一体机中,所以密码加速卡向发布方发送协商信息以及发布方向密码加速卡发送经过协商出的部署密钥加密的新哈希值时,都可以由区块链一体机对上述协商信息和密文状态的新哈希值进行转发。图2是一示例性实施例提供的另一种区块链一体机的哈希更新方法的流程图,该方法应用于区块链一体机。如图2所示,该方法可以包括以下步骤:
步骤202,响应于所述区块链一体机上装配的密码加速卡发送的协商信息,所述区块链一体机将所述协商信息转发至新版本镜像文件的发布方,以使所述发布方与所述密码加速卡分别基于所述协商信息确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件。
步骤204,所述区块链一体机将所述发布方使用所述部署密钥加密后的对应于所述新版本镜像文件的新哈希值转发至所述密码加速卡,以使所述密码加速卡将存储的对应于所述旧版本文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件。
在本实施例中,密码加速卡通过区块链一体机转发协商信息至新版本镜像文件的发布方,从而在密码加速卡与发布方之间确定出相同的部署密钥;然后发布方通过区块链一体机转发利用部署密钥加密的新哈希值至密码加速卡,密码加速卡接收后使用自身的部署密钥进行解析并使用得到的新哈希值替换旧哈希值,从而实现对自身已存储的旧哈希值的更新操作。无论密码加速卡中保存的上述旧哈希值,还是更新后的新哈希值,都可以用于在相应镜像文件执行前对镜像文件是否可信进行验证。上述哈希更新过程及更新后的文件验证过程可以参见上述图1对应的各个实施例,此处不再赘述。
通过本说明书的上述实施例,密码加速卡通过向新版本镜像文件的发布方发送协商信息使得双方确定出用于加密传输新哈希值的部署密钥,从而保证了密码加速卡接收到的新哈希值确实是由发布方根据新版本镜像文件生成并发送给密码加速卡的可信哈希,从而实现了对密码加速卡中当前已存储的对应于旧版本镜像文件的旧哈希值的更新;进一步的,有助于实现更新后的新版本镜像文件的可信执行及区块链一体机的可信启动。
如前所述,密码加速卡与发布方之间互相传输的协商信息和新哈希值,既可以由双方直接发送,也可以通过区块链一体机转发,下面分别结合图3及图4对两种情况进行阐述。
图3为一种区块链一体机的可信启动方法的交互流程图,结合图3对密码加速卡与发布方之间直接发送数据实现对密码加速卡中已存储的旧哈希值进行更新的过程进行详细说明。参见图3所示,该过程可以包括:
步骤302,密码加速卡在本地预存信任根密钥。
在本实施例中,密码加速卡可以在TEE中预先存储信任根密钥。例如,该信任根密钥可以在区块链一体机出厂时即被预先存储在密码加速卡中,或者该信任根密钥可由区块链一体机或其他对象在离线安全环境下部署至密码加速卡中。在密码加速卡为基于FPGA芯片的密码加速卡的情况下,可以将信任根密钥烧录以部署在密码加速卡的FPGA结构中,如烧录在密码加速卡的安全密钥区内。但是,FPGA芯片具有易失性,断电后保存的信任根密钥就会丢失,使得重新上电后需要密码加速卡重新部署信任根密钥。因此,为了减少客户端的部署次数,FPGA结构可以进一步包含存储器,该存储器与FPGA芯片相连,使得信任根密钥被部署于存储器中,且FPGA芯片从存储器中读取信任根密钥以实现相关功能;其中,存储器具有非易失性,即便断电仍然可以保存信任根密钥,而重新上电后只需重新从存储器读入FPGA芯片即可,无需密码加速卡重新部署。存储器可以具有多种形式,比如闪存等可重复擦写的非易失性存储器,再比如熔丝存储器等不可重复擦写的存储器等,本说明书并不对此进行限制。
上述信任根密钥属于非对称密钥,且该信任根密钥对应的公钥被公开,或者信任根密钥对应的公钥仅被发布方所维护,使得即便该信任根密钥并非由发布方所部署(发布方预置或通过其他对象所部署),发布方也可以基于被公开的公钥对该信任根密钥生成的签名进行验证。以采用SM2(或其他算法)算法实现协商为例,发布方与密码加速卡需要在密钥协商过程中实施至少一次信息交互:当密码加速卡向发布方发送协商信息时,可以采用上述的信任根密钥对该协商信息进行签名,使得发布方在收到签名后的协商信息后,可以利用被公开的公钥进行签名验证,从而确定该协商信息来自密码加速卡,并信任该协商信息;而当签名未通过验证时,发布方可以选择不信任收到的协商信息。上述验证过程可由发布方在本地完成,而无需借助于第三方实现,一方面可以减少交互次数、提升验证效率,另一方面可以避免第三方的介入及交互次数的增加而造成额外的安全风险,确保验证结果的可靠性不依赖于第三方的自制力与可信度。
步骤304,新版本镜像文件的发布方在自身的TEE中计算新版本镜像文件对应的新哈希值。
在一实施例中,针对区块链一体机中部署的旧版本镜像文件,其发布方可以先确定用于更新该旧版本镜像文件的新版本镜像文件,然后计算新版本镜像文件对应的新哈希值。TEE可以被部署在发布方本地,此时可以由发布方直接在TEE中计算标准哈希;或者,为了减少发布方的计算负载,TEE也可以被部署在与发布方相关的其他组件中,然后由发布方控制在TEE中计算标准哈希后加密传输至发布方。进一步的,计算上述新哈希值时可以采用SHA算法、MD4算法、MD5算法、ETHASH算法、SCRYPT算法等哈希算法,上述TEE的构建过程及哈希的计算过程,可以参见相关技术中公开的内容,此处不再赘述。
相应的,密码加速卡中存储的旧哈希值也可以由发布方在TEE中根据自身发布的旧版本镜像文件计算得到。其中,根据旧版本镜像文件计算旧哈希值时所使用的哈希算法与根据新版本镜像文计算新哈希值时所使用的哈希算法可以相同,也可以不同,本说明书并不对此进行限制。另外,发布方和密码加速卡对应的上述TEE可以具有多种构建方式,例如,可以基于Intel SGX(Software Guard Extensions,软件保护扩展)构建,或者基于AMDTrustZone(信任区)技术构建,本说明书对此并不进行限制。
上述步骤302和304都是预先执行的步骤,本说明书对于二者与后续步骤306之间的时间间隔的大小并不进行限制。实际上,该步骤304可以在步骤312之前的任一时刻执行,例如可以在生成或确定出新版本镜像文件后即计算相应的新哈希值,也可以在确定出与密码加速卡之间的部署密钥之后计算相应的新哈希值,本说明书对于该步骤执行的时机并不进行限制。
步骤306,密码加速卡向发布方发送协商信息及使用信任根密钥进行的签名。
在一实施例中,密码加速卡可以在确定需要进行哈希更新之后,再向发布方发送上述协商信息。例如,在镜像文件更新之前,密码加速卡可以主动向发布方发送更新询问消息,并根据发布方针对该更新询问消息返回的确认消息确定是否需要进行哈希更新。比如密码加速卡可以在区块链一体机开机运行时、镜像文件被执行前或者按照预设周期(如一天、一周、一个月等)向发布方发送上述更新询问消息,以便及时获知针对镜像文件的更新需求。再比如在镜像文件更新之前,密码加速卡可以在接收到发布方主动发送的针对镜像文件的更新通知后,确定需要进行哈希更新。再比如在镜像文件更新时或更新后,密码加速卡可以根据检测到的镜像文件的更新事件确定需要进行哈希更新,然后向发布方发送上述协商信息。
在一实施例中,密码加速卡可以在确定需要进行哈希更新的情况下,在自身对应的TEE中生成协商信息,并使用上述信任根密钥进行签名后发送至发布方。例如,密码加速卡可以生成一个随机数S1作为自己的私钥,做模幂运算得到公钥,然后通过RSA、ECDSA或DSA等密钥交换算法对模幂运算的参数及上述公钥进行签名,并将上述参数、公钥及签名关联发送至发布方。此时,上述协商信息即包括:对随机数进行模幂运算的参数以及模幂运算得到的公钥。
步骤308,发布方验证协商信息的签名。
在一实施例中,发布方可以基于自身所维护的信任根密钥对应的公钥对上述协商信息进行验证,从而保证协商信息传输过程的私密性。例如,发布方可以不对签名进行解密而实现对该签名的验证(基于DH的特性:双方只交换公钥并做加密操作),具体过程可参见相关技术中公开的内容。或者,密码加速卡可以先使用某哈希算法计算上述协商信息的第一信息哈希,然后使用上述信任根密钥对该第一信息哈希进行加密得到协商信息的签名;相应的,发送方可以在接收到上述协商信息和签名后,先使用自身维护的对应于上述信任根密钥的公钥对签名进行解压得到签名哈希,并使用相同的算法计算上述协商信息的第二信息哈希,然后比较签名哈希和第二信息哈希是否相同:若签名哈希和第二信息哈希相同,则判定上述签名通过验证,否则,若签名哈希和第二信息哈希不相同,则判定上述签名未通过验证。上述比较可以采用全文逐位比较的方式,即按照预设方向逐位比较签名哈希与第二信息哈希的各个位:若签名哈希所有位与第二信息哈希的所有位的取值均对应相等,则判定签名哈希与第二信息哈希相同;反之,若签名哈希的任一位的取值与第二信息哈希的相应位的取值不相等,则判定签名哈希与第二信息哈希不相同。
在上述签名通过验证的情况下,确定该协商信息确实由密码加速卡发出,并信任该协商信息,进而可以转入步骤310a确定部署密钥;而在上述签名未通过验证的情况下,说明该协商信息可能并非由密码加速卡发出或由密码加速卡发出但可能经过第三方篡改,因此发布方可以选择不信任该协商信息,此时可以直接丢弃该协商信息和/或发起针对该协商信息的告警。
步骤310a,发布方根据协商信息确定部署密钥。
步骤310b,密码加速卡根据协商信息确定部署密钥。
发布方和密码加速卡可以根据协商信息分别确定自身的部署密钥。承接于前述步骤306的实施例,相应的,发布方接收到上述协商信息后,可以在验证签名有效的情况下,基于上述协商信息产生一个随机数S2,并将该随机数S2加密后的公钥返回至密码加速卡,从而使得密码加速卡和发布方基于上述过程各自产生相同的部署密钥。上述协商的具体过程可以参见相关技术中公开的内容,此处不再赘述。
最终发布方与密码加速卡可以分别获得相同的部署密钥,或者分别获得一对非对称密钥的私钥和公钥,从而完成密钥协商过程。
步骤312,发布方向密码加速卡发送利用部署密钥加密后的新哈希值。
步骤314,密码加速卡使用自身的部署密钥解密获得新哈希值,并使用新哈希值替换自身当前已存储的旧哈希值。
在本实施例中,确定出部署密钥后,发布方可以使用部署密钥加密步骤304中计算得到的新哈希值,然后将加密后的新哈希值发送至密码加速卡。相应的,密码加速卡接收到上密文状态的新哈希值后,可以在自身对应的TEE中使用密钥协商过程中确定出的部署密钥对其进行解密,以获得明文状态的新哈希值。
在本实施例中,密码加速卡可以采用上述明文状态的新哈希值替换本地存储的旧哈希值。例如,可以在自身安全密钥区、FPGA芯片或与FPGA芯片相连的存储器内对应于旧哈希值的存储空间内写入新哈希值,从而覆盖掉相应位置处的旧哈希值,以实现对旧哈希值的更新。
在一实施例中,密码加速卡接收到密文状态的新哈希值后可以并不直接进行解密,而是将其以密文形式保存在安全密钥区、FPGA芯片或与FPGA芯片相连的存储器中,并在该新哈希值被调用时才使用部署密钥对其进行解密,以尽量避免提前解密新哈希值可能导致的哈希泄露。甚至,还可以将密文状态的新哈希值保存在非TEE的存储空间内,以减少新哈希值对TEE对应存储空间的占用。
上述旧哈希值对应于区块链一体机中更新前的旧版本镜像文件,新哈希值对应于区块链一体机中更新后的新版本镜像文件,更新后的新哈希值可以用于验证区块链一体机中的新版本镜像文件是否为发布方发布的可信的镜像文件,以实现新版本镜像文件的可信执行和区块链一体机的可信启动。例如,区块链一体机可以计算新版本镜像文件的当前哈希,并将该当前哈希发送至密码加速卡,与密码加速卡中的新哈希值进行比较:若比较结果表明当前哈希与新哈希值相同,则说明区块链一体机本地部署的新版本镜像文件即为发布方发布的镜像文件,是未经篡改且被成功部署的镜像文件——该新版本镜像文件可信,因此,区块链一体机可以执行该新版本镜像文件以形成区块链节点。反之,若比较结果表明当前哈希与新哈希值不相同,则说明区块链一体机本地部署的镜像文件并非发布方发布的镜像文件,而可能是经过非法篡改的镜像文件或部署出错的镜像文件——该新版本镜像文件不可信,此时,区块链一体机可以拒绝执行该新版本镜像文件。
因为密码加速卡被装配在区块链一体机中,所以密码加速卡向发布方发送协商信息以及发布方向密码加速卡发送利用协商出的部署密钥加密的新哈希值时,都可以由区块链一体机对上述协商信息和密文状态的新哈希值进行转发。图4为另一种区块链一体机的可信启动方法的交互流程图,结合图4对密码加速卡与发布方通过区块链一体机转发数据实现对密码加速卡中已存储的旧哈希值进行更新的过程进行详细说明。参见图4所示,该过程可以包括:
步骤402,密码加速卡在本地预存信任根密钥。
步骤404,新版本镜像文件的发布方根据新版本镜像文件在自身的TEE中计算新哈希值。
步骤406a,密码加速卡向区块链一体机发送协商信息及使用信任根密钥进行的签名。
步骤406b,区块链一体机将协商信息及使用信任根密钥进行的签名转发至发布方。
上述步骤406a-406b中,通过区块链一体机将协商信息及使用信任根密钥进行的签名转发至发布方,从而通过区块链一体机连接了密码加速卡与发布方。
步骤408,发布方验证协商信息的签名。
步骤410,发布方根据协商信息确定部署密钥。
步骤412a,发布方向区块链一体机发送由部署密钥加密的新哈希值。
步骤412b,区块链一体机将由部署密钥加密的新哈希值转发至密码加速卡。
上述步骤412a-412b中,通过区块链一体机将由部署密钥加密的新哈希值转发至密码加速卡,从而通过区块链一体机连接了发布方与密码加速卡。
步骤414,密码加速卡使用自身的部署密钥解密获得新哈希值,并使用新哈希值替换自身当前已存储的旧哈希值。
本实施例的上述各步骤的具体过程与上述图3所示实施例中步骤314的记载并无本质区别,可参见前文记载,此处不再赘述。
图5是一示例性实施例提供的一种密码加速卡的结构示意图。请参考图6,在硬件层面,该设备包括处理器502、内部总线504、网络接口506、内存508、非易失性存储器510、密码运 算单元512以及安全密钥区514,当然还可能包括其他业务所需要的硬件。密码运算单元512将接收或生成的相关密钥保存在安全密钥区514中,以便处理器502调用用于实现加密、解密、签名和/或验签等相关功能;处理器502从非易失性存储器510中读取对应的计算机程序到内存508中然后运行,在逻辑层面上形成区块链一体机的哈希更新装置。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参考图6,在一种软件实施方式中,该区块链一体机的哈希更新装置可以包括:
协商模块601,使所述区块链一体机上装配的密码加速卡向新版本镜像文件的发布方发送协商信息,所述协商信息分别被所述发布方与所述密码加速卡用于确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件;
接收模块602,使所述密码加速卡接收所述发布方使用所述部署密钥加密后的新哈希值,所述新哈希值对应于所述新版本镜像文件;
替换模块603,使所述密码加速卡将存储的对应于所述旧版本镜像文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希值进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件。
可选的,所述区块链一体机中部署的镜像文件包括:
所述区块链一体机上部署的对应于区块链节点的二进制镜像文件;或者,
所述区块链一体机上部署的平台镜像文件,所述平台镜像文件包含所述二进制镜像文件。
可选的,所述替换模块603,还使:
所述密码加速卡在收到被所述部署密钥加密的所述新哈希值后,使用所述部署密钥解密以获取所述新哈希值;
所述密码加速卡将存储的所述旧哈希值替换为所述新哈希值。
可选的,所述旧哈希值和新哈希值由所述发布方在可信执行环境中分别针对其发布的所述旧版本镜像文件和新版本镜像文件进行计算生成。
可选的,所述协商信息由所述密码加速卡中预存的信任根密钥进行签名,所述信任根密钥对应的公钥被公开,或者所述信任根密钥对应的公钥仅被所述发布方所维护。
图7是一示例性实施例提供的一种区块链一体机的结构示意图。请参考图7,在硬件层面,该设备包括处理器702、内部总线704、网络接口706、内存708以及非易失性存储器710,当然还可能包括其他业务所需要的硬件。处理器702从非易失性存储器710中读取对应的计算机程序到内存708中然后运行,在逻辑层面上形成区块链一体机的哈希更新装置。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参考图8,在一种软件实施方式中,该区块链一体机的哈希更新装置可以包括:
信息转发模块801,使响应于所述区块链一体机上装配的密码加速卡发送的协商信息,所述区块链一体机将所述协商信息转发至新版本镜像文件的发布方,以使所述发布方与所述密码加速卡分别基于所述协商信息确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件;
哈希转发模块802,使所述区块链一体机将所述发布方使用所述部署密钥加密后的对应于所述新版本镜像文件的新哈希值转发至所述密码加速卡,以使所述密码加速卡将存储的对应于所述旧版本文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件。
可选的,所述区块链一体机中部署的镜像文件包括:
所述区块链一体机上部署的对应于区块链节点的二进制镜像文件;或者,
所述区块链一体机上部署的平台镜像文件,所述平台镜像文件包含所述二进制镜像文件。
可选的,所述旧哈希值和新哈希值由所述发布方在可信执行环境中分别针对其发布的所述旧版本镜像文件和新版本镜像文件进行计算生成。
可选的,所述协商信息由所述密码加速卡中预存的信任根密钥进行签名,所述信任根密钥对应的公钥被公开,或者所述信任根密钥对应的公钥被所述发布方所维护。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
在一个典型的配置中,计算机包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM) 和/或非易失性内存等形式,如只读存储器(ROM) 或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
Claims (12)
1.一种区块链一体机的哈希更新方法,包括:
所述区块链一体机上装配的密码加速卡向新版本镜像文件的发布方发送协商信息,所述协商信息分别被所述发布方与所述密码加速卡用于确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件;
所述密码加速卡接收所述发布方使用所述部署密钥加密后的新哈希值,所述新哈希值对应于所述新版本镜像文件;
所述密码加速卡将存储的对应于所述旧版本镜像文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希值进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件;其中,所述区块链一体机中部署的镜像文件包括:所述区块链一体机上部署的对应于区块链节点的二进制镜像文件;或者所述区块链一体机上部署的平台镜像文件,所述平台镜像文件包含所述二进制镜像文件。
2.根据权利要求1所述的方法,所述密码加速卡将存储的对应于所述旧版本镜像文件的旧哈希值替换为所述新哈希值,包括:
所述密码加速卡在收到被所述部署密钥加密的所述新哈希值后,使用所述部署密钥解密以获取所述新哈希值;
所述密码加速卡将存储的所述旧哈希值替换为所述新哈希值。
3.根据权利要求1所述的方法,所述旧哈希值和新哈希值由所述发布方在可信执行环境中分别针对其发布的所述旧版本镜像文件和新版本镜像文件进行计算生成。
4.根据权利要求1所述的方法,所述协商信息由所述密码加速卡中预存的信任根密钥进行签名,所述信任根密钥对应的公钥被公开,或者所述信任根密钥对应的公钥仅被所述发布方所维护。
5.一种区块链一体机的哈希更新方法,包括:
响应于所述区块链一体机上装配的密码加速卡发送的协商信息,所述区块链一体机将所述协商信息转发至新版本镜像文件的发布方,以使所述发布方与所述密码加速卡分别基于所述协商信息确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件;
所述区块链一体机将所述发布方使用所述部署密钥加密后的对应于所述新版本镜像文件的新哈希值转发至所述密码加速卡,以使所述密码加速卡将存储的对应于所述旧版本文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件;其中,所述区块链一体机中部署的镜像文件包括:所述区块链一体机上部署的对应于区块链节点的二进制镜像文件;或者所述区块链一体机上部署的平台镜像文件,所述平台镜像文件包含所述二进制镜像文件。
6.根据权利要求5所述的方法,所述旧哈希值和新哈希值由所述发布方在可信执行环境中分别针对其发布的所述旧版本镜像文件和新版本镜像文件进行计算生成。
7.根据权利要求5所述的方法,所述协商信息由所述密码加速卡中预存的信任根密钥进行签名,所述信任根密钥对应的公钥被公开,或者所述信任根密钥对应的公钥被所述发布方所维护。
8.一种区块链一体机的哈希更新装置,包括:
协商模块,使所述区块链一体机上装配的密码加速卡向新版本镜像文件的发布方发送协商信息,所述协商信息分别被所述发布方与所述密码加速卡用于确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件;
接收模块,使所述密码加速卡接收所述发布方使用所述部署密钥加密后的新哈希值,所述新哈希值对应于所述新版本镜像文件;
替换模块,使所述密码加速卡将存储的对应于所述旧版本镜像文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希值进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件;其中,所述区块链一体机中部署的镜像文件包括:所述区块链一体机上部署的对应于区块链节点的二进制镜像文件;或者所述区块链一体机上部署的平台镜像文件,所述平台镜像文件包含所述二进制镜像文件。
9.一种区块链一体机的哈希更新装置,包括:
信息转发模块,使响应于所述区块链一体机上装配的密码加速卡发送的协商信息,所述区块链一体机将所述协商信息转发至新版本镜像文件的发布方,以使所述发布方与所述密码加速卡分别基于所述协商信息确定出部署密钥;其中,所述新版本镜像文件用于更新所述区块链一体机中部署的旧版本镜像文件;
哈希转发模块,使所述区块链一体机将所述发布方使用所述部署密钥加密后的对应于所述新版本镜像文件的新哈希值转发至所述密码加速卡,以使所述密码加速卡将存储的对应于所述旧版本文件的旧哈希值替换为所述新哈希值,所述新哈希值用于与所述区块链一体机中部署的镜像文件的当前哈希进行比较以确定所述区块链一体机中是否部署了所述新版本镜像文件;其中,所述区块链一体机中部署的镜像文件包括:所述区块链一体机上部署的对应于区块链节点的二进制镜像文件;或者所述区块链一体机上部署的平台镜像文件,所述平台镜像文件包含所述二进制镜像文件。
10.一种密码加速卡,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求1-4中任一项所述的方法。
11.一种区块链一体机,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求5-7中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如权利要求1-7中任一项所述方法的步骤。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010653793.2A CN111541788B (zh) | 2020-07-08 | 2020-07-08 | 区块链一体机的哈希更新方法及装置 |
CN202011246700.0A CN112491812B (zh) | 2020-07-08 | 2020-07-08 | 区块链一体机的哈希更新方法及装置 |
EP21181654.1A EP3937045B1 (en) | 2020-07-08 | 2021-06-25 | Hash updating methods and apparatuses of blockchain integrated station |
US17/362,639 US11616636B2 (en) | 2020-07-08 | 2021-06-29 | Hash updating methods and apparatuses of blockchain integrated station |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010653793.2A CN111541788B (zh) | 2020-07-08 | 2020-07-08 | 区块链一体机的哈希更新方法及装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011246700.0A Division CN112491812B (zh) | 2020-07-08 | 2020-07-08 | 区块链一体机的哈希更新方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111541788A CN111541788A (zh) | 2020-08-14 |
CN111541788B true CN111541788B (zh) | 2020-10-16 |
Family
ID=71980895
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010653793.2A Active CN111541788B (zh) | 2020-07-08 | 2020-07-08 | 区块链一体机的哈希更新方法及装置 |
CN202011246700.0A Active CN112491812B (zh) | 2020-07-08 | 2020-07-08 | 区块链一体机的哈希更新方法及装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011246700.0A Active CN112491812B (zh) | 2020-07-08 | 2020-07-08 | 区块链一体机的哈希更新方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11616636B2 (zh) |
EP (1) | EP3937045B1 (zh) |
CN (2) | CN111541788B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113726875B (zh) | 2020-07-08 | 2024-06-21 | 支付宝(杭州)信息技术有限公司 | 一种基于区块链一体机的交易处理方法及装置 |
CN111539829B (zh) | 2020-07-08 | 2020-12-29 | 支付宝(杭州)信息技术有限公司 | 一种基于区块链一体机的待过滤交易识别方法及装置 |
CN111541783B (zh) | 2020-07-08 | 2020-10-20 | 支付宝(杭州)信息技术有限公司 | 一种基于区块链一体机的交易转发方法及装置 |
CN111541789A (zh) * | 2020-07-08 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 一种基于区块链一体机的数据同步方法及装置 |
CN113656806B (zh) * | 2020-07-08 | 2024-05-03 | 支付宝(杭州)信息技术有限公司 | 区块链一体机的可信启动方法及装置 |
CN113438219B (zh) | 2020-07-08 | 2023-06-02 | 支付宝(杭州)信息技术有限公司 | 一种基于区块链一体机的重放交易识别方法及装置 |
CN111541553B (zh) | 2020-07-08 | 2021-08-24 | 支付宝(杭州)信息技术有限公司 | 区块链一体机的可信启动方法及装置 |
CN112165383B (zh) * | 2020-09-29 | 2024-05-14 | 平安科技(深圳)有限公司 | 基于共享根密钥的加密方法、装置、设备及介质 |
CN112287392B (zh) * | 2020-11-23 | 2023-06-02 | 广东科学技术职业学院 | 一种具备保护隐私信息的智能合约实现方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109491694A (zh) * | 2019-01-04 | 2019-03-19 | 中国银行股份有限公司 | 应用更新方法和装置、数据推送方法和装置 |
CN109784058A (zh) * | 2019-01-07 | 2019-05-21 | 中国银行股份有限公司 | 版本强一致性校验方法、客户端、服务器及存储介质 |
CN110852734A (zh) * | 2019-11-06 | 2020-02-28 | 上海景域文化传播股份有限公司 | 基于区块链的景区业务结算方法、系统及电子设备 |
Family Cites Families (86)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7194092B1 (en) | 1998-10-26 | 2007-03-20 | Microsoft Corporation | Key-based secure storage |
US7409546B2 (en) | 1999-10-20 | 2008-08-05 | Tivo Inc. | Cryptographically signed filesystem |
US7526654B2 (en) | 2001-10-16 | 2009-04-28 | Marc Charbonneau | Method and system for detecting a secure state of a computer system |
US7716494B2 (en) | 2004-07-15 | 2010-05-11 | Sony Corporation | Establishing a trusted platform in a digital processing system |
US7644287B2 (en) | 2004-07-29 | 2010-01-05 | Microsoft Corporation | Portion-level in-memory module authentication |
US7698744B2 (en) | 2004-12-03 | 2010-04-13 | Whitecell Software Inc. | Secure system for allowing the execution of authorized computer program code |
US8239686B1 (en) | 2006-04-27 | 2012-08-07 | Vudu, Inc. | Method and system for protecting against the execution of unauthorized software |
US8116455B1 (en) | 2006-09-29 | 2012-02-14 | Netapp, Inc. | System and method for securely initializing and booting a security appliance |
US9053323B2 (en) | 2007-04-13 | 2015-06-09 | Hewlett-Packard Development Company, L.P. | Trusted component update system and method |
US8631397B2 (en) * | 2008-03-31 | 2014-01-14 | Microsoft Corporation | Virtualized application image patching |
US9980146B2 (en) | 2009-01-28 | 2018-05-22 | Headwater Research Llc | Communications device with secure data path processing agents |
US9110727B2 (en) * | 2010-10-05 | 2015-08-18 | Unisys Corporation | Automatic replication of virtual machines |
US10496834B2 (en) | 2011-10-25 | 2019-12-03 | Cupp Computing As | Secure computing system |
US9009840B1 (en) | 2012-01-23 | 2015-04-14 | Amazon Technologies, Inc. | Validating machine images |
US9158913B2 (en) | 2012-07-09 | 2015-10-13 | Ca, Inc. | Managing virtual machines using owner digital signatures |
US20140181975A1 (en) | 2012-11-06 | 2014-06-26 | William Spernow | Method to scan a forensic image of a computer system with multiple malicious code detection engines simultaneously from a master control point |
US9104687B2 (en) * | 2012-12-20 | 2015-08-11 | Dropbox, Inc. | System and method for preventing duplicate uploads of modified photos in a synchronized content management system |
US9336395B2 (en) * | 2013-01-25 | 2016-05-10 | Hewlett-Packard Development Company, L.P. | Boot driver verification |
US10489612B2 (en) | 2013-04-29 | 2019-11-26 | Nxp Usa, Inc. | Memory controller to verify authenticity of data |
US9118670B2 (en) | 2013-08-30 | 2015-08-25 | U-Me Holdings LLC | Making a user's data, settings, and licensed content available in the cloud |
WO2015143651A1 (zh) | 2014-03-26 | 2015-10-01 | 华为技术有限公司 | 基于网络功能虚拟化的证书配置方法、装置和系统 |
CN106462707B (zh) | 2014-04-28 | 2019-06-14 | 英特尔公司 | 安全引导计算设备 |
US9634951B1 (en) | 2014-06-12 | 2017-04-25 | Tripwire, Inc. | Autonomous agent messaging |
US10313257B1 (en) | 2014-06-12 | 2019-06-04 | Tripwire, Inc. | Agent message delivery fairness |
CN104200154A (zh) | 2014-09-22 | 2014-12-10 | 上海众人科技有限公司 | 一种基于标识的安装包签名方法及其装置 |
US9798377B2 (en) | 2014-10-08 | 2017-10-24 | Apple Inc. | Methods and apparatus for recovering errors with an inter-processor communication link between independently operable processors |
CN104539622B (zh) | 2014-12-31 | 2018-01-23 | 华为技术有限公司 | 虚拟机的深度证明方法、计算设备和计算机系统 |
WO2016168475A1 (en) | 2015-04-14 | 2016-10-20 | Capital One Services, Llc | Systems and methods for secure firmware validation |
CN106295318A (zh) * | 2015-06-05 | 2017-01-04 | 北京壹人壹本信息科技有限公司 | 一种系统启动引导方法和装置 |
JP2017004220A (ja) | 2015-06-09 | 2017-01-05 | 株式会社東芝 | 通信装置、通信システム、通信方法およびプログラム |
US10075439B1 (en) | 2015-11-06 | 2018-09-11 | Cisco Technology, Inc. | Programmable format for securely configuring remote devices |
CN105320891B (zh) | 2015-11-18 | 2018-10-09 | 北京微智全景信息技术有限公司 | 一种计算机安全加载系统镜像的方法及装置 |
US10540165B2 (en) | 2016-02-12 | 2020-01-21 | Nutanix, Inc. | Virtualized file server rolling upgrade |
US10404469B2 (en) * | 2016-04-08 | 2019-09-03 | Chicago Mercantile Exchange Inc. | Bilateral assertion model and ledger implementation thereof |
CN106156635A (zh) | 2016-07-29 | 2016-11-23 | 深圳兆日科技股份有限公司 | 终端启动方法和装置 |
US11461485B2 (en) | 2016-08-12 | 2022-10-04 | ALTR Solutions, Inc. | Immutable bootloader and firmware validator |
US10520110B2 (en) | 2016-10-10 | 2019-12-31 | Citrix Systems, Inc. | Systems and methods for executing cryptographic operations across different types of processing hardware |
CN106506163B (zh) * | 2016-10-21 | 2019-11-15 | 北京小米移动软件有限公司 | Rom包处理方法及装置 |
WO2018081583A1 (en) | 2016-10-27 | 2018-05-03 | Infinitekey, Inc. | System and method for authenticating and authorizing devices |
CN106599729A (zh) | 2016-12-09 | 2017-04-26 | 郑州云海信息技术有限公司 | 一种驱动程序安全验证方法及系统 |
WO2018119892A1 (zh) | 2016-12-29 | 2018-07-05 | 深圳前海达闼云端智能科技有限公司 | 软件应用程序发布和验证的方法及装置 |
US20180198620A1 (en) | 2017-01-11 | 2018-07-12 | Raptor Engineering, LLC | Systems and methods for assuring data on leased computing resources |
US10423791B2 (en) | 2017-04-27 | 2019-09-24 | Microsoft Technology Licensing, Llc | Enabling offline restart of shielded virtual machines using key caching |
US20180367528A1 (en) * | 2017-06-12 | 2018-12-20 | Cyberark Software Ltd. | Seamless Provision of Authentication Credential Data to Cloud-Based Assets on Demand |
CN109309651B (zh) * | 2017-07-28 | 2021-12-28 | 斑马智行网络(香港)有限公司 | 一种文件传输方法、装置、设备和存储介质 |
US11061776B2 (en) | 2017-08-07 | 2021-07-13 | Datto, Inc. | Prioritization and source-nonspecific based virtual machine recovery apparatuses, methods and systems |
US10795977B2 (en) | 2017-08-24 | 2020-10-06 | Oracle International Corporation | Digital asset traceability and assurance using a distributed ledger |
CN108229142B (zh) | 2017-12-28 | 2020-12-15 | 中国人民银行数字货币研究所 | 一种基于数字货币钱包终端对钱包进行升级的方法和装置 |
CN108305072B (zh) | 2018-01-04 | 2021-02-26 | 上海点融信息科技有限责任公司 | 部署区块链网络的方法、设备和计算机存储介质 |
WO2019148212A1 (en) | 2018-01-29 | 2019-08-01 | Shi Alexander | Secure blockchain integrated circuit |
US20190306173A1 (en) | 2018-04-02 | 2019-10-03 | Ca, Inc. | Alert smart contracts configured to manage and respond to alerts related to code |
US20190305957A1 (en) | 2018-04-02 | 2019-10-03 | Ca, Inc. | Execution smart contracts configured to establish trustworthiness of code before execution |
CN108648079A (zh) | 2018-05-02 | 2018-10-12 | 北京阿尔山金融科技有限公司 | 区块链节点监控方法、装置及系统 |
US10642984B2 (en) | 2018-06-12 | 2020-05-05 | The United States Of America As Represented By The Secretary Of The Navy | Secure drive and method for booting to known good-state |
US11082850B2 (en) | 2018-06-26 | 2021-08-03 | At&T Intellectual Property I, L.P. | Blockchain based wireless access point password management |
US10754693B2 (en) | 2018-07-05 | 2020-08-25 | Vmware, Inc. | Secure transfer of control over computational entities in a distributed computing environment |
CN109375944B (zh) * | 2018-08-28 | 2021-10-01 | 浪潮金融信息技术有限公司 | 一种基于区块链数据结构的终端软件分发验证方法 |
US11133923B2 (en) | 2018-10-24 | 2021-09-28 | Landis+Gyr Innovations, Inc. | Cryptographic operations using internet of things device pool |
US20200160289A1 (en) * | 2018-11-19 | 2020-05-21 | Rare Bits, Inc. | Lazy updating and state prediction for blockchain-based applications |
CN109634619B (zh) | 2018-11-23 | 2022-05-10 | 试金石信用服务有限公司 | 可信执行环境实现方法及装置、终端设备、可读存储介质 |
CN111277553B (zh) | 2018-12-05 | 2022-05-24 | 阿里巴巴集团控股有限公司 | 一种基于区块链网络的可信节点确定方法和装置 |
CN109685502B (zh) | 2018-12-06 | 2021-04-30 | 成都佰纳瑞信息技术有限公司 | 一种适用于区块链网络的加速共识方法 |
CN109788032B (zh) | 2018-12-17 | 2021-12-14 | 深圳壹账通智能科技有限公司 | 镜像文件的获取方法、装置、计算机设备和存储介质 |
US20200204510A1 (en) * | 2018-12-21 | 2020-06-25 | Chicago Mercantile Exchange Inc. | Multiple chain message data recordation with adjustable visibility permissioning |
WO2019120315A2 (en) | 2019-03-26 | 2019-06-27 | Alibaba Group Holding Limited | Field-programmable gate array based trusted execution environment for use in a blockchain network |
CN110149316B (zh) | 2019-04-22 | 2022-05-17 | 众安信息技术服务有限公司 | 一种区块链的发布方法及装置 |
US10860265B2 (en) * | 2019-04-24 | 2020-12-08 | Kyocera Document Solutions Inc. | Image forming system, server, image forming apparatus, and image forming method that reduce server capacity and allows to pull print |
US10999075B2 (en) * | 2019-06-17 | 2021-05-04 | Advanced New Technologies Co., Ltd. | Blockchain-based patrol inspection proof storage method, apparatus, and electronic device |
US10797887B2 (en) | 2019-06-26 | 2020-10-06 | Alibaba Group Holding Limited | Confidential blockchain transactions |
CN110287170B (zh) * | 2019-06-28 | 2021-05-11 | 杭州复杂美科技有限公司 | 数据库升级方法、状态数据调用方法、设备和存储介质 |
CN110535654B (zh) | 2019-07-23 | 2021-09-14 | 平安科技(深圳)有限公司 | 基于区块链的并行系统部署方法、装置和计算机设备 |
US11496518B2 (en) * | 2019-08-02 | 2022-11-08 | Dell Products L.P. | System and method for distributed network access control |
CN110502268A (zh) * | 2019-08-29 | 2019-11-26 | 恩亿科(北京)数据科技有限公司 | 应用程序更新方法、装置、服务器及存储介质 |
CN110535938B (zh) * | 2019-08-29 | 2021-07-27 | 腾讯科技(深圳)有限公司 | 一种基于智能合约的数据处理方法、设备及存储介质 |
US11539530B2 (en) * | 2019-09-27 | 2022-12-27 | Divi Labs And Technologies Sociedad Anonima | Remote blockchain masternode deployment |
CN110989994B (zh) * | 2019-11-18 | 2024-04-26 | 腾讯科技(深圳)有限公司 | 基于区块链的代码版本管理方法、装置、终端及存储介质 |
CN110855791B (zh) | 2019-11-18 | 2021-07-27 | 腾讯科技(深圳)有限公司 | 一种区块链节点部署方法及相关设备 |
CN110995480B (zh) * | 2019-11-25 | 2022-09-20 | 百度在线网络技术(北京)有限公司 | 区块链网络部署方法、装置、电子设备和介质 |
US11144652B1 (en) | 2019-12-19 | 2021-10-12 | Xilinx, Inc. | Secure update of programmable integrated circuits in data center computing environments |
CN111143854B (zh) | 2019-12-25 | 2021-11-30 | 眸芯科技(上海)有限公司 | 芯片的安全启动装置、系统及方法 |
CN111259348B (zh) | 2020-02-20 | 2023-03-07 | 国网信息通信产业集团有限公司 | 一种安全运行可执行文件的方法及系统 |
US11243781B2 (en) | 2020-03-04 | 2022-02-08 | Citrix Systems, Inc. | Provisioning services (PVS) cloud streaming with read cache file storing preboot data including a network driver |
CN111581277B (zh) * | 2020-04-07 | 2021-09-17 | 浙商银行股份有限公司 | 一种基于容器技术的区块链管理方法 |
CN111414612B (zh) | 2020-06-05 | 2020-10-16 | 腾讯科技(深圳)有限公司 | 操作系统镜像的安全保护方法、装置及电子设备 |
CN113656806B (zh) | 2020-07-08 | 2024-05-03 | 支付宝(杭州)信息技术有限公司 | 区块链一体机的可信启动方法及装置 |
CN111541553B (zh) | 2020-07-08 | 2021-08-24 | 支付宝(杭州)信息技术有限公司 | 区块链一体机的可信启动方法及装置 |
-
2020
- 2020-07-08 CN CN202010653793.2A patent/CN111541788B/zh active Active
- 2020-07-08 CN CN202011246700.0A patent/CN112491812B/zh active Active
-
2021
- 2021-06-25 EP EP21181654.1A patent/EP3937045B1/en active Active
- 2021-06-29 US US17/362,639 patent/US11616636B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109491694A (zh) * | 2019-01-04 | 2019-03-19 | 中国银行股份有限公司 | 应用更新方法和装置、数据推送方法和装置 |
CN109784058A (zh) * | 2019-01-07 | 2019-05-21 | 中国银行股份有限公司 | 版本强一致性校验方法、客户端、服务器及存储介质 |
CN110852734A (zh) * | 2019-11-06 | 2020-02-28 | 上海景域文化传播股份有限公司 | 基于区块链的景区业务结算方法、系统及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
EP3937045A1 (en) | 2022-01-12 |
CN112491812A (zh) | 2021-03-12 |
US11616636B2 (en) | 2023-03-28 |
CN112491812B (zh) | 2022-03-01 |
CN111541788A (zh) | 2020-08-14 |
US20210328767A1 (en) | 2021-10-21 |
EP3937045B1 (en) | 2023-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111541788B (zh) | 区块链一体机的哈希更新方法及装置 | |
CN111538996B (zh) | 区块链一体机的可信启动方法及装置 | |
CN111541785B (zh) | 基于云计算的区块链数据处理方法及装置 | |
CN111541553B (zh) | 区块链一体机的可信启动方法及装置 | |
CN111541727B (zh) | 区块链一体机及其自动建链方法、装置 | |
CN111541552B (zh) | 区块链一体机及其节点自动加入方法、装置 | |
EP3937043B1 (en) | Blockchain integrated stations and blockchain networks | |
CN111541724B (zh) | 区块链一体机及其节点自动加入方法、装置 | |
CN110580262B (zh) | 基于智能合约的隐私数据查询方法及装置 | |
CN111541725B (zh) | 区块链一体机及其密码加速卡、密钥管理方法和装置 | |
CN110580245B (zh) | 隐私数据的共享方法及装置 | |
CN110580411B (zh) | 基于智能合约的权限查询配置方法及装置 | |
CN111541783B (zh) | 一种基于区块链一体机的交易转发方法及装置 | |
CN111541784A (zh) | 一种基于区块链一体机的交易处理方法及装置 | |
CN118282644A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40036314 Country of ref document: HK |