基于FPGA的密钥协商办法及装配与流程

文档序号:19689540发布日期:2020-01-14 19:08
基于FPGA的密钥协商办法及装配与流程

本解释书一个或多个实施例触及区块链技巧范畴,特别触及一种基于fpga的密钥协商办法及装配。



背景技巧:

区块链技巧构建在传输搜集(例如点对点搜集)之上。传输搜集中的搜集节点应用链式数据构造来验证与存储数据,并采取分布式节点共鸣算法来生成和更新数据。

今朝企业级的区块链平台技巧上最大年夜的两个挑衅就是隐私和性能,常常这两个挑衅很难同时处理。大年夜多处理筹划都是经过过程损掉性能换取隐私,或许不大年夜推敲隐私去寻求性能。罕见的处理隐私成绩的加密技巧,好像态加密(homomorphicencryption)和零知识证明(zero-knowledgeproof)等复杂度高,通用性差,并且还能够带来严重的性能损掉。

可信履行情况(trustedexecutionenvironment,tee)是另外一种处理隐私成绩的方法。tee可以起到硬件中的黑箱感化,在tee中履行的代码和数据操作体系层都没法窃视,只要代码中事后定义的接口才能对其停止操作。在效力方面,由于tee的黑箱性质,在tee中进交运算的是明文数据,而不是同态加密中的复杂暗码学运算,计算过程效力没有损掉,是以与tee相结合可以在性能损掉较小的条件下很大年夜程度上晋升区块链的安然性和隐私性。今朝工业界非常存眷tee的筹划,简直一切主流的芯片和软件同盟都有本身的tee处理筹划,包含软件方面的tpm(trustedplatformmodule,可信赖平台模块)和硬件方面的intelsgx(softwareguardextensions,软件保护扩大)、armtrustzone(信赖区)和amdpsp(platformsecurityprocessor,平台安然处理器)。



技巧完成要素:

有鉴于此,本解释书一个或多个实施例供给一种基于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是一示例性实施例供给的一种区块链节点的构造表示图。

图4是一示例性实施例供给的一种在fpga芯片上构成功能模块的表示图。

图5是一示例性实施例供给的一种对fpga板卡停止可新更新的表示图。

图6是一示例性实施例供给的一种基于fpga的密钥协商装配的框图。

图7是一示例性实施例供给的另外一种基于fpga的密钥协商装配的框图。

详细实施方法

这里将详细地对示例性实施例停止解释,其示例表示在附图中。下面的描述触及附图时,除非另有表示,不合附图中的雷同数字表示雷同或类似的要素。以下示例性实施例中所描述的实施方法其实不代表与本解释书一个或多个实施例相分歧的一实在施方法。相反,它们仅是与如所附权力请求书中所详述的、本解释书一个或多个实施例的一些方面相分歧的装配和办法的例子。

须要解释的是:在其他实施例中其实不用定按照本解释书示出和描述的次序来履行照应办法的步调。在一些其他实施例中,其办法所包含的步调可以比本解释书所描述的更多或更少。另外,本解释书中所描述的单个步调,在其他实施例中能够被分化为多个步调停止描述;而本解释书中所描述的多个步调,在其他实施例中也能够被归并为单个步调停止描述。

区块链普通被划分为三种类型:私有链(publicblockchain),私有链(privateblockchain)和同盟链(consortiumblockchain)。另外,还有多种类型的结合,比如私有链+同盟链、同盟链+私有链等不合组合情势。个中去中间化程度最高的是私有链。私有链以比特币、以太坊为代表,参加私有链的参与者可以读取链上的数据记录、参与交易和竞争新区块的记账权等。并且,各参与者(即节点)可自在参加和加入搜集,并停止相干操作。私有链则相反,该搜集的写入权限由某个组织或许机构控制,数据读取权限受组织规定。简单来讲,私有链可认为一个弱中间化体系,参与节点具有严格限制且少。这类类型的区块链更合适于特定机构外部应用。同盟链则是介于私有链和私有链之间的区块链,可完成“部分去中间化”。同盟链中各个节点平日有与之相对应的实体机构或许组织;参与者经过过程授权参加搜集并构成好处相接洽关系盟,合营保护区块链运转。

不论是私有链、私有链照样同盟链,区块链搜集中的节点出于隐私保护的目标,均能够经过过程区块链与tee(trustedexecutionenvironment,可信履行情况)相结合的处理筹划,在tee内履行收到的交易。tee是基于cpu硬件的安然扩大,且与外部完全隔离的可信履行情况。tee最早是由globalplatform提出的概念,用于处理移动设备上资本的安然隔离,平行于操作体系为应用法式榜样供给可信安然的履行情况。arm的trustzone技巧最早完成了真正商用的tee技巧。伴随着互联网的高速生长,安然的需求愈来愈高,不只限于移动设备,云端设备,数据中间都对tee提出了更多的需求。tee的概念也取得了高速的生长和扩大。如今所说的tee比拟与最后提出的概念曾经是加倍狭义的tee。例如,办事器芯片厂商intel,amd等都前后推出了硬件帮助的tee并丰富了tee的概念和特点,在工业界取得了广泛的承认。如今提起的tee平日更多指这类硬件帮助的tee技巧。

以intelsgx技巧为例,sgx供给了围圈(enclave,也称为飞地),即内存中一个加密的可信履行区域,由cpu保护数据不被盗取。以第一区块链节点采取支撑sgx的cpu为例,应用新增的处理器指令,在内存中可以分派一部分区域epc(enclavepagecache,围圈页面缓存或飞地页面缓存),经过过程cpu内的加密引擎mee(memoryencryptionengine)对个中的数据停止加密。epc中加密的内容只要进入cpu后才会被解密成明文。是以,在sgx中,用户可以不信赖操作体系、vmm(virtualmachinemonitor,虚拟机监控器)、乃至bios(basicinputoutputsystem,根本输入输入体系),只须要信赖cpu便能确保隐私数据不会泄漏。是以,围圈就相当于sgx技巧下产生的tee。

不合于移动端,云端拜访须要长途拜访,终端用户对硬件平台弗成见,是以应用tee的第一步就是要确认tee的真实可信。例如,相干技巧中供给了针对上述sgx技巧的长途证明机制,以用于证明目标设备上的sgx平台与挑衅方安排了雷同的设备文件。然则,由于相干技巧中的tee技巧是以软件或软硬件结合的方法完成,使得即使经过过程长途证明方法可以在必定程度上注解tee内所安排的设备文件未经修改,然则tee本身所依托的运转情况却没法被验证。例如,在须要完成隐私功能的区块链节点上,tee内须要设备用于履行智能合约的虚拟机,该虚拟机所履行的指令并不是直接履行,而是实际上履行了对应的若干条x86指令(假定目标设备采取x86架构),从而形成了必定程度上的安然性风险。

为此,本解释书提出了一种基于fpga完成的硬件tee技巧,fpga经过过程加载电路逻辑设备文件而完成硬件tee。由于电路逻辑设备文件的内容可以被事后检查与考验,并且fpga完全基于电路逻辑设备文件中记录的逻辑而设备运转,因此可以确保fpga所完成的硬件tee具有相对更高的安然性。作为完成tee的基本之一,fpga须要基于所保护的密钥完成加密操作,以确保数据仅在tee外部为明文情势、在tee外部均处于密文情势。本解释书中的fpga构造相当于从设备、该fpga构造所属的区块链节点(相当于fpga构造对应的host主机)相当于主设备,而相干技巧中关于类似的主从架构,平日由主设备参与密钥协商后,将协商取得的密钥安排至从设备。但是,相干技巧所采取的上述处理机制,将招致密钥由区块链节点获知,从而形成密钥泄漏风险。

以下结合实施例解释本解释书供给的一种基于fpga的密钥协商办法,以晋升安然性。

图1是一示例性实施例供给的一种基于fpga的密钥协商办法的流程图。如图1所示,该办法应用于fpga构造,可以包含以下步调:

步调102,fpga构造将已安排的电路逻辑设备文件加载至fpga芯片上,以在所述fpga芯片上构成密钥协商模块。

fpga芯片上包含若干可编辑的硬件逻辑单位,这些硬件逻辑单位经过电路逻辑设备文件停止设备后,可以完成为照应的功能模块,以用于完成照应的逻辑功能。详细的,该电路逻辑设备文件可以基于比特流的情势被烧录至fpga构造。例如,上述的密钥协商模块即为经过过程已安排的电路逻辑设备文件而构成,而经过过程进一步安排构成用于完成加密、虚拟机等逻辑的功能模块,可以将fpga构造设备为区块链节点上的硬件tee。由于这些功能模块完全由电路逻辑设备文件停止设备而构成,因此经过过程检查电路逻辑设备文件便可肯定由此设备取得的功能模块所完成的逻辑等各方面的信息,确保功能模块可以或许按照完全用户的需求而构成和运转。

步调104,所述fpga构造经过过程所述密钥协商模块与客户端停止长途密钥协商,以在所述fpga构造和所述客户端处罚别取得设备文件安排密钥。

经过过程在fpga芯片上构成密钥协商模块,使得fpga构造可以基于该密钥协商模块直接与客户端之间完生长途密钥协商,而非经过区块链节点与客户端停止密钥协商,可以防止设备文件安排密钥被区块链节点获知,确保设备文件安排密钥仅保护于fpga构造外部,防止设备文件安排密钥产生泄漏而形成安然性风险。

密钥协商模块的运转逻辑由前述的电路逻辑设备文件所定义,使得用户经过过程电路逻辑设备文件可以控制密钥协商模块的逻辑,包含密钥协商方法等。相干技巧中的随便任性密钥协商方法,都可以经过过程电路逻辑设备文件而设备于上述的密钥协商模块中,本解释书并纰谬此停止限制。

例如,密钥协商过程可以包含:fpga构造可以基于密钥协商模块生成第一私有信息,进而根据该第一私有信息生成第一密钥协商信息,并将该第一密钥协商信息发送至客户端;同时,客户端可以生成第二私有信息,进而根据该第二私有信息生成第二密钥协商信息,并将该第二密钥协商信息发送至fpga构造中的密钥协商模块。然后,fpga构造可以经过过程密钥协商模块对第一私有信息与第二密钥协商信息停止计算,以生成机密值;同时,客户端可以对第二私有信息和第一密钥协商信息停止计算,以生成异样的机密值。那么,设备文件安排密钥可认为上述的机密值,或许基于密钥导出函数(keyderivationfunction,简称kdf)从上述的机密值导出取得。

fpga构造上可以事后安排有认证根密钥,该认证根密钥可以被预置于fpga构造中,或许该认证根密钥可由客户端或其他对象在离线安然情况下安排至fpga构造中。该认证根密钥属于非对称密钥。那么,在客户端与fpga构造长途协商上述设备文件安排密钥的过程当中,fpga构造可以采取认证根密钥对本身所发送的第一密钥协商信息停止签名,而客户端可以经过过程验证签名而肯定收到的信息能否确切来自于fpga构造且传输过程当中未经修改,而未经过过程签名验证的信息将不会被客户端信赖和采取。个中,认证根密钥的公钥可以由认证办事器管理且不地下,那么客户端可以经过过程将收到的信息发送至该认证办事器,由该认证办事器经过过程保护的公钥停止签名验证;然后,认证办事器可以向客户端供给验证成果,该验证成果由认证办事器停止签名,且该验证成果包含认证办事器的证书或许该认证办事器的公钥可以被地下,使得客户端可以验签以肯定验证成果的有效性。或许,认证根密钥的公钥可以被地下,使得客户端可以自行基于该公钥对来自fpga构造的信息停止签名验证,而无需经过认证办事器,如许可以增添签名验证过程所经历的交互环节,从而晋升验证效力、降低更多交互环节所招致的安然性风险。

上述的认证根密钥可以被基于前述已安排的电路逻辑设备文件安排至fpga构造。fpga构造可以防止将认证根密钥从电路逻辑设备文件中取出,使得fpga构造在将该电路逻辑设备文件加载至fpga芯片后,可以获知照应的认证根密钥。或许,fpga构造可以包含自力于fpga芯片的密钥管理芯片,且fpga构造可以将认证根密钥从所属的电路逻辑设备文件中取出后保护于密钥管理芯片中,使得认证根密钥仅存在于密钥管理芯片中,而不会再出现于fpga构造上安排的电路逻辑设备文件中,以晋升认证根密钥的安然性。

fpga构造上可以安排有客户端对应的公钥或许预置证书。客户端可以针对前述的第二密钥协商信息停止签名后发送至fpga构造,使得fpga构造可以针对收到的第二密钥协商信息停止签名验证,并将签名经过过程验证作为基于该第二密钥协商信息生成机密值的条件之一。个中,客户端对应的公钥或证书可由前述的电路逻辑设备文件安排于fpga构造。

步调106,所述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构造可以分别生成新版电路逻辑设备文件的哈希值、新版设备文件安排密钥的哈希值,并经过过程诸如sm3算法或其他算法对这两个哈希值停止计算,取得的计算成果可以被作为上述与新版电路逻辑设备文件相干的内容;照应地,基于认证成果可使客户端肯定:新版电路逻辑设备文件在fpga构造上成功安排,且客户端与fpga构造之间成功协商取得了新版设备文件安排密钥。

当fpga构造经过过程前述的机密值导出设备文件安排密钥时,该机密值还可以用于导出营业机密安排密钥。营业机密安排密钥可供客户端向fpga构造上安排营业密钥。客户端可以经过过程营业机密安排密钥对营业密钥停止加密,并将加密后营业密钥发送至fpga构造,而fpga构造可以基于营业机密安排密钥对来自客户真个加密后营业密钥停止解密,从而将解密取得的营业密钥应用于所构成的可信履行情况。

例如,营业密钥可以包含:节点私钥,该节点私钥对应的节点公钥被地下;个中,该节点公钥被用于对交易停止加密,或许该节点公钥与交易提交方供给的对称密钥被合营用于经过过程数字信封方法对交易停止加密。以区块链场景下的隐私情易为例,假定交易提交方欲望对提交的交易内容保密,交易提交方可以经过过程上述的节点公钥对交易停止加密后提交至区块链节点,而区块链节点可以在fpga构造中应用节点私钥停止解密,从而取得明文的交易内容;或许,交易提交方可以采取随机生成(或经过过程其他方法取得)的对称密钥对交易停止加密,在经过过程上述的节点公钥对该对称密钥停止加密,并将加密后交易和加密后对称密钥提交至区块链节点,而区块链节点可以在fpga构造中应用节点私钥对加密后对称密钥停止解密,并经过过程解密取得的对称密钥对加密后交易停止解密,从而取得明文的交易内容。

再例如,营业密钥可以包含:营业根密钥,该营业根密钥或该营业根密钥的衍生密钥用于对可信履行情况内产生的隐私数据停止加密后存储至区块链节点保护的数据库中。例如,区块链节点在fpga构造所构成的tee内履行交易后,能够产生计在加密需求的上述隐私数据,比如该隐私数据可以包含履行智能合约所产生的合约状况的取值,那么fpga构造可以经过过程上述的营业根密钥或其衍生密钥对隐私数据停止加密,并将加密后的隐私数据存储至区块链节点保护的数据库中。照应地,在须要读取该隐私数据时,经过过程将加密后的隐私数据读入fpga构造中,使得fpga构造可以基于上述的营业根密钥或其衍生密钥停止解密,便可取得照应明文的隐私数据,以便于读取或更新该隐私数据的数值,或将该隐私数据的数值用于参与其他计算过程等。

图2是一示例性实施例供给的另外一种基于fpga的密钥协商办法的流程图。如图2所示,该办法应用于fpga构造,可以包含以下步调:

步调202,fpga构造将已安排的电路逻辑设备文件加载至fpga芯片上,以在所述fpga芯片上构成密钥协商模块;个中,所述已安排的电路逻辑设备文件用于将所述fpga构造完成为所属的区块链节点上的可信履行情况。

fpga芯片上包含若干可编辑的硬件逻辑单位,这些硬件逻辑单位经过电路逻辑设备文件停止设备后,可以完成为照应的功能模块,以用于完成照应的逻辑功能。详细的,该电路逻辑设备文件可以基于比特流的情势被烧录至fpga构造。例如,上述的密钥协商模块即为经过过程已安排的电路逻辑设备文件而构成,而经过过程进一步安排构成用于完成加密、虚拟机等逻辑的功能模块,可以将fpga构造设备为区块链节点上的硬件tee。由于这些功能模块完全由电路逻辑设备文件停止设备而构成,因此经过过程检查电路逻辑设备文件便可肯定由此设备取得的功能模块所完成的逻辑等各方面的信息,确保功能模块可以或许按照完全用户的需求而构成和运转。

步调204,所述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构造。

步调206,所述fpga构造基于所述营业机密安排密钥对来自所述客户真个加密后营业密钥停止解密,解密取得的营业密钥应用于所述可信履行情况。

fpga构造可以基于已安排的电路逻辑设备文件在fpga芯片上构成解密模块,该解密模块用于根据营业机密安排密钥对加密后营业机密安排密钥停止解密,使得只要获知该营业机密安排密钥的用户才能够针对fpga构造安排营业密钥或对已安排的营业密钥停止更新,以确保针对该营业密钥所实施的安排操作或更新操作为可信操作。

例如,营业密钥可以包含:节点私钥,该节点私钥对应的节点公钥被地下;个中,该节点公钥被用于对交易停止加密,或许该节点公钥与交易提交方供给的对称密钥被合营用于经过过程数字信封方法对交易停止加密。以区块链场景下的隐私情易为例,假定交易提交方欲望对提交的交易内容保密,交易提交方可以经过过程上述的节点公钥对交易停止加密后提交至区块链节点,而区块链节点可以在fpga构造中应用节点私钥停止解密,从而取得明文的交易内容;或许,交易提交方可以采取随机生成(或经过过程其他方法取得)的对称密钥对交易停止加密,在经过过程上述的节点公钥对该对称密钥停止加密,并将加密后交易和加密后对称密钥提交至区块链节点,而区块链节点可以在fpga构造中应用节点私钥对加密后对称密钥停止解密,并经过过程解密取得的对称密钥对加密后交易停止解密,从而取得明文的交易内容。

再例如,营业密钥可以包含:营业根密钥,该营业根密钥或该营业根密钥的衍生密钥用于对可信履行情况内产生的隐私数据停止加密后存储至区块链节点保护的数据库中。例如,区块链节点在fpga构造所构成的tee内履行交易后,能够产生计在加密需求的上述隐私数据,比如该隐私数据可以包含履行智能合约所产生的合约状况的取值,那么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构造可以分别生成新版电路逻辑设备文件的哈希值、新版设备文件安排密钥的哈希值,并经过过程诸如sm3算法或其他算法对这两个哈希值停止计算,取得的计算成果可以被作为上述与新版电路逻辑设备文件相干的内容;照应地,基于认证成果可使客户端肯定:新版电路逻辑设备文件在fpga构造上成功安排,且客户端与fpga构造之间成功协商取得了新版设备文件安排密钥。

图3是一示例性实施例供给的一种区块链节点的构造表示图。基于本解释书的技巧筹划,可以在区块链节点上添加fpga构造以完成硬件tee,比方该fpga构造可认为如图3所示的fpga板卡。fpga板卡可以经过过程pcie接口连接至区块链节点上,以完成fpga板卡与区块链节点之间的数据交互。fpga板卡可以包含fpga芯片、flash芯片和密管芯片等构造;固然,在一些实施例中除包含fpga芯片以外,能够仅包含残剩的flash芯片和密管芯片等中的部分构造,或许能够包含更多构造,此处仅用于举例。

在初始阶段,fpga芯片上并未烧录用户定义的任何逻辑,相当于fpga芯片处于空白状况。用户可以经过过程向fpga芯片上烧录电路逻辑设备文件,以在fpga芯片上构成照应的功能或逻辑。在初次烧录电路逻辑设备文件时,fpga板卡不具有安然防护的才能,因此平日须要外部供给安然情况,比如用户可以在离线情况下实施对电路逻辑设备文件的烧录以完成物理安然隔离,而非在线上实施长途烧录。

针对用户所需完成的功能或逻辑,可以经过过程fpga硬件说话构成照应的逻辑代码,并进而对该逻辑代码停止镜像化处理,便可取得上述的电路逻辑设备文件。在烧录至fpga板卡之前,用户可以针对上述的逻辑代码停止检查。特别是,当同时触及到多个用户时,多个用户可以分别对上述的逻辑代码停止检查,以确保fpga板卡终究可以或许满足一切效户的需求,防止出现安然性风险、逻辑缺点、讹诈等异常成绩。

在肯定代码无误后,用户可以在上述的离线情况下,将电路逻辑设备文件烧录至fpga板卡上。详细的,电路逻辑设备文件被从区块链节点传入fpga板卡,进而安排至如图3所示的flash芯片中,使得即使fpga板卡产生掉落电,flash芯片依然可以或许保存上述的电路逻辑设备文件。

图4是一示例性实施例供给的一种在fpga芯片上构成功能模块的表示图。经过过程将flash芯片中所安排的电路逻辑设备文件加载至fpga芯片,可以对fpga芯片所含的硬件逻辑单位停止设备,从而在fpga芯片上构成照应的功能模块,比方所构成的功能模块可以包含如图4所示的密钥协商模块、解密验签模块、加解密模块、明文计算模块等。同时,电路逻辑设备文件还可以用于向fpga板卡传输须要存储的信息,比如可以将预置证书存储于fpga芯片上、将认证根密钥存储于密管芯片中(认证根密钥也能够存储于fpga芯片上)等。

基于fpga芯片上所构成的密钥协商模块,和安排于fpga板卡上的认证根密钥,使得fpga板卡可以与用户完生长途的密钥协商,该密钥协商过程可以采取相干技巧中的随便任性算法或标准来完成,本解释书并纰谬此停止限制。举例而言,密钥协商过程可以包含:用户可以在本地的客户端生成一密钥ka-1、密钥协商模块可以在本地生成一密钥kb-1,且客户端可以基于密钥ka-1计算取得密钥协商信息ka-2、密钥协商模块可以基于密钥kb-1计算取得密钥协商信息kb-2,然后客户端将密钥协商信息ka-2发送至密钥协商模块、密钥协商模块将密钥协商信息kb-2发送至客户端,使得客户端可以基于密钥ka-1与密钥协商信息kb-2生成一机密值,而密钥协商模块可以基于密钥kb-1与密钥协商信息ka-2生成雷同的机密值,最后由客户端、密钥协商模块分别基于密钥导出函数从该雷同的机密值导出雷同的设备文件安排密钥,该设备文件安排密钥可以存在fpga芯片或密管芯片。在上述过程当中,固然密钥协商信息ka-2、密钥协商信息kb-2是经过区块链节点在客户端与密钥协商模块之间传输,然则由于密钥ka-1由客户端控制、密钥kb-1由密钥协商模块控制,因此可以确保区块链节点没法获知终究取得的机密值和设备文件安排密钥,防止能够形成的安然性风险。

除设备文件安排密钥以外,机密值还用于导出营业机密安排密钥;例如,机密值可以导出32位数值,可以将前16位作为设备文件安排密钥、后16位作为营业机密安排密钥。用户可以经过过程营业机密安排密钥向fpga板卡安排营业密钥,比方该营业密钥可以包含节点私钥和营业根密钥。例如,用户可以在客户端上采取营业机密安排密钥对节点私钥或营业根密钥停止签名、加密并发送至fpga板卡,使得fpga板卡经过过程解密验签模块停止解密、验签后,对取得的节点私钥或营业根密钥停止安排。

基于安排的节点密钥、营业根密钥和fpga芯片上的加解密模块、明文计算模块,使得fpga板卡可以完成为区块链节点上的tee,以满足隐私需求。例如,当区块链节点收到一笔交易时,假设该交易为明文交易,区块链节点可以直接处理该明文交易,假设该交易为隐私情易,区块链节点将该隐私情易传入fpga板卡停止处理。

明文交易的交易内容为明文情势,并且交易履行后所产生的合约状况等异样采取明文情势停止存储。隐私情易的交易内容为密文情势,由交易提议方对明文交易内容停止加密而取得,且交易履行后产生的合约状况等须要采取密文情势停止存储,从而确保交易隐私保护。例如,交易提议方可以随机或基于其他方法生成一对称密钥,异样上述的营业私钥对应的营业公钥被地下,那么交易提议方可以基于该对称密钥和营业公钥对明文交易内容停止数字信封加密:交易提议方经过过程对称密钥加密明文交易内容,并经过过程营业公钥对该对称密钥停止加密,取得的两部分外容均被包含于上述的隐私情易中;换言之,隐私情易中包含两部分外容:采取对称密钥加密的明文交易内容、采取营业公钥加密的对称密钥。

是以,fpga板卡在收到区块链节点传入的隐私情易后,可由加解密模块经过过程营业私钥对采取营业公钥加密的对称密钥停止解密、取得对称密钥,然后由加解密模块经过过程对称密钥对采取对称密钥加密的明文交易内容停止解密、取得明文交易内容。隐私情易可以用于安排智能合约,那么明文交易内容的data字段可以包含待安排的智能合约的合约代码;或许,隐私情易可以用于调用智能合约,那么明文交易内容的to字段可以包含被调用的智能合约的合约地址,而fpga板卡可以基于该合约地址调取照应的合约代码。

fpga芯片上构成的明文计算模块用于完成相干技巧中的虚拟机逻辑,即明文计算模块相当于fpga板卡上的“硬件虚拟机”。是以,基于上述明文交易内容肯定出合约代码后,可以将该合约代码传入明文计算模块中,以由该明文计算模块履行该合约代码。履行终了后,合约代码所触及的合约状况能够产生更新。假设合约状况须要存储至fpga芯片以外,那么可由加解密模块经过过程前述的营业根密钥或其衍生密钥对产生更新的合约状况停止加密,并对加密后合约状况停止存储,以确保与隐私情易相干的数据仅在fpga芯片内处于明文状况、在fpga芯片以外均处于密文状况,从而包管数据的安然性。

基于一些缘由,用户能够欲望对fpga板卡上安排的电路逻辑设备文件停止版本更新,比如该电路逻辑设备文件所含的认证根密钥能够被风险用户获知、再比如用户欲望对fpga板卡上安排的功能模块停止升级等,本解释书并纰谬此停止限制。为了便于辨别,可以将上述过程当中已安排的电路逻辑设备文件称之为旧版电路逻辑设备文件,而将须要安排的电路逻辑设备文件称之为新版电路逻辑设备文件。

与旧版电路逻辑设备文件相类似的,用户可以经过过程编写代码、镜像化等过程生成新版电路逻辑设备文件。进一步的,用户可以经过过程本身持有的私钥对新版电路逻辑设备文件停止签名,然后经过过程上文协商出的设备文件安排密钥对签名后的新版电路逻辑设备文件停止加密,取得加密后新版电路逻辑设备文件。在一些情况下,能够同时存在多名用户,那么旧版电路逻辑设备文件须要将这些用户对应的预置证书均安排至fpga板卡中,且这些用户须要分别采取本身持有的私钥对新版电路逻辑设备文件停止签名。

用户可以经过过程客户端长途将加密后新版电路逻辑设备文件发送至区块链节点,并由区块链节点进一步将其传入fpga板卡。图5是一示例性实施例供给的一种对fpga板卡停止可新更新的表示图。如图5所示,前述过程当中在fpga芯片上构成的解密验签模块位于pcie接口与flash芯片之间的传输通路上,使得加密后新版电路逻辑设备文件必定须要优先经过解密验签模块的成功处理后,才能够被传入flash芯片以完成可信更新,没法绕过解密验签的过程而直接对flash芯片停止更新。

解密验签模块在收到加密后新版电路逻辑设备文件后,起首经过过程fpga板卡上安排的设备文件安排密钥停止解密,假设解密成功则解密验签模块进一步基于fpga芯片上安排的预置证书,对解密后的新版电路逻辑设备文件停止签名验证。假设解密掉败或许签名验证未经过过程,则解释收到的文件并不是来自上述用户或许遭到修改,解密验签模块将触发终止本次的更新操作;而在解密成功且验签经过过程的情况下,可以肯定取得的新版电路逻辑设备文件来自上述用户且传输过程当中未遭到修改,可以将该新版电路逻辑设备文件进一步传输至flash芯片,以针对flash芯片中的旧版电路逻辑设备文件停止更新安排。

新版电路逻辑设备文件被加载至fpga芯片后,异样可以在该fpga芯片上构成诸如上述的密钥协商模块、解密验签模块,和向fpga芯片存入预置证书、向密管芯片存入认证根密钥等信息。个中,所构成的密钥协商模块、解密验签模块等,所完成的功能逻辑可以产生变更和升级,所存入安排的预置证书、认证根密钥等信息也能够差别于更新前的信息。那么,fpga板卡可以基于更新后的密钥协商模块、认证根密钥等,与用户停止长途协商取得新的设备文件安排密钥,该设备文件安排密钥可以被用于下一次的可新更新过程。类似地,可以据此赓续完成针对fpga板卡的可信更新操作。

在完成更新安排后,fpga板卡可以针对新版电路逻辑设备文件生成认证成果。例如,上述的密钥协商模块可以经过过程诸如sm3算法或其他算法对新版电路逻辑设备文件的哈希值、基于新版电路逻辑设备文件协商取得的设备文件安排密钥的哈希值停止计算,取得的计算成果可以被作为上述的认证成果,并由密钥协商模块将该认证成果发送至用户。照应地,用户可以在客户端上基于所保护的新版电路逻辑设备文件和据此协商的设备文件安排密钥对认证成果停止验证,假设验证成功则注解新版电路逻辑设备文件在fpga板卡上成功安排,且用户与fpga板卡之间据此成功协商取得了分歧的设备文件安排密钥,从而确认成功完成了针对电路逻辑设备文件的更新安排。

图6是一示例性实施例供给的一种基于fpga的密钥协商装配的表示构造图。请参考图6,在软件实施方法中,该基于fpga的密钥协商装配可以包含:

加载单位601,使fpga构造将已安排的电路逻辑设备文件加载至fpga芯片上,以在所述fpga芯片上构成密钥协商模块;

协商单位602,使所述fpga构造经过过程所述密钥协商模块与客户端停止长途密钥协商,以在所述fpga构造和所述客户端处罚别取得设备文件安排密钥;

解密单位603,使所述fpga构造基于所述设备文件安排密钥对来自所述客户真个加密后新版电路逻辑设备文件停止解密;

更新单位604,使所述fpga构造基于取得的新版电路逻辑设备文件更新所述已安排的电路逻辑设备文件,以使所述fpga构造完成为所属的区块链节点上的可信履行情况。

可选的,所述协商单位602详细用于:

使所述fpga构造经过过程所述密钥协商模块向所述客户端发送第一密钥协商信息,并接收来自所述客户真个第二密钥协商信息;个中,所述第一密钥协商信息由所述fpga构造基于所述密钥协商模块生成的第一私有信息而生成,所述第二密钥协商信息由所述客户端基于本身生成的第二私有信息而生成;

使所述fpga构造经过过程所述密钥协商模块对所述第一私有信息与所述第二密钥协商信息停止计算,以生成机密值并基于所述机密值导出所述设备文件安排密钥;个中,所述第二私有信息与所述第一密钥协商信息被所述客户端用于计算生成所述机密值,以导出所述设备文件安排密钥。

可选的,所述第一密钥协商信息由所述fpga构造上安排的认证根密钥停止签名。

可选的,所述认证根密钥对应的公钥由认证办事器所管理,或许所述认证根密钥对应的公钥被地下。

可选的,还包含:

验签单位605,使所述fpga构造对所述第二密钥协商信息停止签名验证,个中所述fpga构造上已安排所述客户端对应的预置证书;

个中,所述fpga构造在签名验证成功的情况下,基于所述第二密钥协商信息生成所述机密值。

可选的,所述机密值还用于导出营业机密安排密钥;所述装配还包含:

解密单位606,使所述fpga构造基于所述营业机密安排密钥对来自所述客户真个加密后营业密钥停止解密,解密取得的营业密钥应用于所述可信履行情况。

可选的,所述fpga构造包含所述fpga芯片以外的存储器,所述已安排的电路逻辑设备文件和所述新版电路逻辑设备文件均安排于所述存储器上。

图7是一示例性实施例供给的另外一种基于fpga的密钥协商装配的表示构造图。请参考图7,在软件实施方法中,该基于fpga的密钥协商装配可以包含:

加载单位701,使fpga构造将已安排的电路逻辑设备文件加载至fpga芯片上,以在所述fpga芯片上构成密钥协商模块;个中,所述已安排的电路逻辑设备文件用于将所述fpga构造完成为所属的区块链节点上的可信履行情况;

协商单位702,使所述fpga构造经过过程所述密钥协商模块与客户端停止长途密钥协商,以在所述fpga构造和所述客户端处罚别取得营业机密安排密钥;

解密单位703,使所述fpga构造基于所述营业机密安排密钥对来自所述客户真个加密后营业密钥停止解密,解密取得的营业密钥应用于所述可信履行情况。

可选的,所述协商单位702详细用于:

使所述fpga构造经过过程所述密钥协商模块向所述客户端发送第一密钥协商信息,并接收来自所述客户真个第二密钥协商信息;个中,所述第一密钥协商信息由所述fpga构造基于所述密钥协商模块生成的第一私有信息而生成,所述第二密钥协商信息由所述客户端基于本身生成的第二私有信息而生成;

使所述fpga构造经过过程所述密钥协商模块对所述第一私有信息与所述第二密钥协商信息停止计算,以生成机密值并基于所述机密值导出所述设备文件安排密钥;个中,所述第二私有信息与所述第一密钥协商信息被所述客户端用于计算生成所述机密值,以导出所述营业机密安排密钥。

可选的,所述第一密钥协商信息由所述fpga构造上安排的认证根密钥停止签名。

可选的,所述认证根密钥对应的公钥由认证办事器所管理,或许所述认证根密钥对应的公钥被地下。

可选的,还包含:

验签单位704,使所述fpga构造对所述第二密钥协商信息停止签名验证,个中所述fpga构造上已安排所述客户端对应的预置证书;

个中,所述fpga构造在签名验证成功的情况下,基于所述第二密钥协商信息生成所述机密值。

可选的,所述机密值还用于导出设备文件安排密钥;所述装配还包含:

更新单位705,使所述fpga构造基于所述设备文件安排密钥对来自所述客户真个加密后新版电路逻辑设备文件停止解密,并基于取得的新版电路逻辑设备文件更新所述已安排的电路逻辑设备文件。

可选的,所述营业密钥包含:节点私钥,所述节点私钥对应的节点公钥被地下;

个中,所述节点公钥被用于对交易停止加密;或许,所述节点公钥与交易提交方供给的对称密钥被合营用于经过过程数字信封方法对交易停止加密。

可选的,所述营业密钥包含:营业根密钥,所述营业根密钥或所述营业根密钥的衍生密钥用于对所述可信履行情况内产生的隐私数据停止加密后存储。

可选的,所述fpga构造包含所述fpga芯片以外的存储器,所述已安排的电路逻辑设备文件安排于所述存储器上。

上述实施例解释的体系、装配、模块或单位,详细可以由计算机芯片或实体完成,或许由具有某种功能的产品来完成。一种典范的完成设备为计算机,计算机的详细情势可所以小我计算机、膝上型计算机、蜂窝德律风、相机德律风、智能德律风、小我数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿着设备或许这些设备中的随便任性几种设备的组合。

在一个典范的设备中,计算机包含一个或多个处理器(cpu)、输入/输入接口、搜集接口和内存。

内存能够包含计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易掉性内存等情势,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包含永久性和非永久性、可移动和非可移动媒体可以由任何办法或技巧来完成信息存储。信息可所以计算机可读指令、数据构造、法式榜样的模块或其他数据。计算机的存储介质的例子包含,但不限于相变内存(pram)、静态随机存取存储器(sram)、静态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技巧、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备拜访的信息。按照本文中的界定,计算机可读介质不包含暂存电脑可读媒体(transitorymedia),如调制的数据旌旗灯号和载波。

还须要解释的是,术语“包含”、“包含”或许其任何其他变体意在涵盖非排他性的包含,从而使得包含一系列要素的过程、办法、商品或许设备不只包含那些要素,并且还包含没有明白列出的其他要素,或许是还包含为这类过程、办法、商品或许设备所固有的要素。在没有更多限制的情况下,由语句“包含一个……”限制的要素,其实不清除在包含所述要素的过程、办法、商品或许设备中还存在别的的雷同要素。

上述对本解释书特定实施例停止了描述。其它实施例在所附权力请求书的范围内。在一些情况下,在权力请求书中记录的举措或步调可以按照不合于实施例中的次序来履行并且依然可以完成希冀的成果。别的,在附图中描述的过程不用定请求示出的特定次序或许持续次序才能完成希冀的成果。在某些实施方法中,多义务处理和并行处理也是可以的或许能够是有益的。

在本解释书一个或多个实施例应用的术语是仅仅出于描述特定实施例的目标,而非旨在限制本解释书一个或多个实施例。在本解释书一个或多个实施例和所附权力请求书中所应用的双数情势的“一种”、“所述”和“该”也旨在包含多半情势,除非高低文清楚地表示其他含义。还应当懂得,本文中应用的术语“和/或”是指并包含一个或多个相接洽关系的列进项目标任何或一切能够组合。

应当懂得,虽然在本解释书一个或多个实施例能够采取术语第一、第2、第三等来描述各类信息,但这些信息不该限于这些术语。这些术语仅用来将同一类型的信息彼此辨别开。例如,在不离开本解释书一个或多个实施例范围的情况下,第一信息也能够被称为第二信息,类似地,第二信息也能够被称为第一信息。取决于语境,如在此所应用的词语“假设”可以被解释成为“在……时”或“当……时”或“照应于肯定”。

以上所述仅为本解释书一个或多个实施例的较佳实施例罢了,其实不消以限制本解释书一个或多个实施例,凡在本解释书一个或多个实施例的精力和准绳以内,所做的任何修改、同等调换、改进等,均应包含在本解释书一个或多个实施例保护的范围以内。

再多懂得一些
以后第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。出色留言会取得点赞!
1