针对可信执行环境的分布式密钥管理制造技术

技术编号:24021119 阅读:112 留言:0更新日期:2020-05-02 05:24
本文公开了用于在可信执行环境(TEE)中安全地执行智能合约操作的方法、系统和装置,包括编码在计算机存储介质上的计算机程序。所述方法之一包括:密钥管理(KM)节点的KM TEE基于与多个KM节点中的多个KM TEE进行相互认证来建立与所述多个KM TEE的信任关系;与所述多个KM TEE发起共识处理,以针对向所述KM节点的服务TEE提供一个或多个加密密钥达成共识;响应于与所述多个KM TEE达成共识,发起与所述KM节点中的服务TEE有关的本地认证处理;确定所述本地认证处理是成功的;以及响应于确定所述本地认证处理是成功的,向所述计算设备上执行的TEE提供一个或多个加密密钥。

Distributed key management for trusted execution environment

【技术实现步骤摘要】
【国外来华专利技术】针对可信执行环境的分布式密钥管理
本文涉及可信执行环境。
技术介绍
分布式账本系统(DLS),也可以被称为共识网络和/或区块链网络,使参与的实体能够安全地且不可篡改地存储数据。在不引用任何特定用例的情况下,DLS通常被称为区块链网络。一种类型的区块链网络的示例可以包括为选择的一组实体提供的联盟区块链网络,其控制共识处理,并且联盟区块链网络包括访问控制层。可信执行环境(TEE)是微处理器的隔离且安全的区域,其保证在微处理器内执行或存储的软件指令和数据未被破坏或改变。在TEE内执行的应用程序由可信机构(例如,微处理器的制造商)验证,并在验证时发布加密密钥以允许应用程序与其他节点和可信应用程序之间的通信。这些加密密钥可以由集中式密钥管理系统(KMS)发布,该系统有利于用可信机构(也被称为“认证”)验证应用程序。集中式KMS的一个潜在问题是引入单点故障。集中式KMS中断可以防止TEE中执行的应用程序被验证直到该中断被解决为止。此外,攻击者可以通过获得对集中式KMS的控制来整体危害系统。因此需要一种起KMS作用的安全的分布式系统。
技术实现思路
本文描述了用于实现包括一组密钥管理(KM)节点的分布式密钥管理系统的技术。KM节点各自在TEE内执行密钥管理应用程序,并且每个KM节点基于相互认证逻辑与一个或多个其他KM节点执行相互认证处理,以建立连接集合中的所有KM节点的信任关系。一旦建立了该信任,KM节点就可以达成共识以将加密密钥分配给一个或多个服务TEE,以便在可信环境中安全地执行一个或多个智能合约操作。本文还提供了耦接到一个或多个处理器并且其上存储有指令的一个或多个非暂态计算机可读存储介质,当所述指令由所述一个或多个处理器执行时,所述指令将促使所述一个或多个处理器按照本文提供的方法的实施例执行操作。本文还提供了用于实施本文提供的所述方法的系统。所述系统包括一个或多个处理器以及耦接到所述一个或多个处理器并且其上存储有指令的计算机可读存储介质,当所述指令由所述一个或多个处理器执行时,所述指令将导致所述一个或多个处理器按照本文提供的方法的实施例执行操作。应了解,依据本文的方法可以包括本文描述的方面和特征的任意组合。也就是说,根据本文的方法不限于本文具体描述的方面和特征的组合,还包括所提供的方面和特征的任意组合。以下在附图和描述中阐述了本文的一个或多个实施例的细节。根据说明书和附图以及权利要求书,本文的其他特征和优点将显现。附图说明图1是示出可以用于执行本文的实施例的环境的示例的图。图2是示出根据本文的实施例的架构的示例的图。图3是示出根据本文的实施例的系统的示例的图。图4是示出根据本文的实施方案的系统的示例的图。图5描绘了可以根据本文的实施例执行的处理的示例。图6描绘了根据本文的实施例的装置的模块的示例。图7是示出根据本文的实施例的相互认证逻辑的示例的图。图8是示出根据本文的实施例的另一相互认证逻辑的示例的图。各附图中相同的附图标记和名称表示相同的元件。具体实施方式本文描述了用于实现包括一组密钥管理(KM)节点的分布式密钥管理系统的技术。KM节点各自在TEE内执行密钥管理应用程序,并且每个KM节点基于相互认证逻辑与一个或多个其他KM节点执行相互认证处理,以建立连接集合中的所有KM节点的信任关系。一旦建立了该信任,KM节点就可以达成共识以将加密密钥分配给一个或多个服务TEE,以便在可信环境中安全地执行一个或多个智能合约操作。为了提供对于本文实施例的进一步的背景,并且如上所述,分布式账本系统(DLS),又可以被称为共识网络(例如,由点对点节点组成)和区块链网络,使参与的实体能够安全地、不可篡改地进行交易并存储数据。尽管术语区块链通常与特定网络和/或用例相关联,但是本文使用区块链来一般地指代DLS而不涉及任何特定用例。区块链是以交易不可篡改的方式存储交易的数据结构。因此,区块链上记录的交易是可靠且可信的。区块链包括一个或多个区块。链中的每个区块通过包含在链中紧邻其之前的前一区块的加密哈希值(cryptographichash)链接到该前一区块。每个区块还包括时间戳、自身的加密哈希值以及一个或多个交易。已经被区块链网络中的节点验证的交易经哈希处理并被编入默克尔(Merkle)树中。Merkle树是一种数据结构,在该树的叶节点处的数据是经哈希处理的,并且在该树的每个分支中的所有哈希值在该分支的根处连接。此处理沿着树持续一直到整个树的根,在整个树的根处存储了代表树中所有数据的哈希值。声称是存储在树中的交易的哈希值可以通过确定其是否与树的结构一致而被快速验证。区块链是用于存储交易的去中心化或至少部分去中心化的数据结构,而区块链网络是通过广播、验证和确认交易等来管理、更新和维护一个或多个区块链的计算节点的网络。如上所述,区块链网络可以作为公有区块链网络、私有区块链网络或联盟区块链网络被提供。本文中参考联盟区块链网络进一步详细描述了本文的实施例。然而,可以预期,本文的实施例可以在任何适当类型的区块链网络中实现。通常,联盟区块链网络在参与实体之间是私有的。在联盟区块链网络中,共识处理由经授权的一组节点控制,所述节点可以被称为共识节点,一个或多个共识节点由各自的实体(例如,金融机构、保险公司)操作。例如,由十(10)个实体(例如,金融机构、保险公司)组成的联盟可以操作联盟区块链网络,每个实体操作联盟区块链网络中的至少一个节点。在一些示例中,在联盟区块链网络内,提供作为跨所有节点复制的区块链的全局区块链。也就是说,所有共识节点处于相对于全局区块链共识的完好状态。为了达成共识(例如,同意向区块链添加区块),在联盟区块链网络内实施共识协议。例如,联盟区块链网络可以实现实用拜占庭容错(PBFT)共识,下面将进一步详细描述。图1是示出了可以用于执行本文的实施例的环境100的示例的图。在一些示例中,示例性环境100使实体能够参与到联盟区块链网络102中。示例性环境100包括计算设备106,108以及网络110。在一些示例中,网络110包括局域网(LAN)、广域网(WAN)、因特网或其组合,并且连接网络站点、用户设备(例如,计算设备)和后台系统。在一些示例中,可以通过有线和/或无线通信链路来访问网络110。在所描绘的示例中,计算系统106、108可以各自包括能够作为节点参与至联盟区块链网络102中的任何适当的计算系统。示例性计算设备包括但不限于服务器、台式计算机、膝上型计算机、平板计算设备以及智能电话。在一些示例中,计算系统106、108承载一个或多个由计算机实施的服务,用于与联盟区块链网络102进行交互。例如,计算系统106可以承载第一实体(例如,用户A)的计算机实施的服务,例如,第一实体使用其管理与一个或多个其他实体(例如,其他用户)的交易的交易管理系统。计算系统108可以承载第二实体(例如,用户B)的计算机实施的服务,例如,第二实体使用其管理与一个或多个其他实体本文档来自技高网...

【技术保护点】
1.一种计算机实现的用于验证可信执行环境TEE的真实性的方法,所述方法包括:/n密钥管理KM节点的KM TEE基于与多个KM节点中的多个KM TEE进行相互认证来建立与所述多个KM TEE的信任关系,其中,所述KM节点和所述多个KM节点处于联盟区块链中;/n所述KM TEE发起与所述多个KM TEE的共识处理,以针对向所述KM节点的服务TEE提供一个或多个加密密钥达成共识;/n响应于与所述多个KM TEE达成共识,所述KM TEE发起与所述KM节点中的服务TEE有关的本地认证处理;/n所述KM TEE确定所述本地认证处理是成功的;以及/n响应于确定所述本地认证处理是成功的,所述KM TEE向所述计算设备上执行的所述TEE提供一个或多个加密密钥。/n

【技术特征摘要】
【国外来华专利技术】1.一种计算机实现的用于验证可信执行环境TEE的真实性的方法,所述方法包括:
密钥管理KM节点的KMTEE基于与多个KM节点中的多个KMTEE进行相互认证来建立与所述多个KMTEE的信任关系,其中,所述KM节点和所述多个KM节点处于联盟区块链中;
所述KMTEE发起与所述多个KMTEE的共识处理,以针对向所述KM节点的服务TEE提供一个或多个加密密钥达成共识;
响应于与所述多个KMTEE达成共识,所述KMTEE发起与所述KM节点中的服务TEE有关的本地认证处理;
所述KMTEE确定所述本地认证处理是成功的;以及
响应于确定所述本地认证处理是成功的,所述KMTEE向所述计算设备上执行的所述TEE提供一个或多个加密密钥。


2.如权利要求1所述的计算机实现的方法,还包括:
所述KM节点将所述加密密钥存储在所述联盟区块链中,其中,所述联盟区块链中存储的加密密钥表示所述联盟区块链中的所有节点能够访问的加密密钥的共识版本。


3.如前述权利要求中任一项所述的计算机实现的方法,其中,
所述KMTEE是第一KMTEE,并且
建立所述信任关系包括所述第一KMTEE与所述多个KMTEE中的第二KMTEE和第三TEE进行相互认证处理。


4.如前述权利要求中任一项所述的计算机实现的方法,其中,
所述KMTEE和所述多个KMTEE形成所述联盟区块链的KMTEE组,并且
建立所...

【专利技术属性】
技术研发人员:魏长征闫莺赵博然宋旭阳
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1