NeuronVisor是部署在每个云节点上的软件信任根(TPM)管理层,简称Neuron(神经元),每个Neuron仅具有两个属性:(1)能否真正证明上层服务组件的属性;(2)能否证实其他Neuron的属性。每个Neuron执行RepCloud认证,以此来检查和传播其邻居节点的这两个属性。
NeuronVisor实现了两个功能:(1)动态识别硬件信任根的集合(即TPM),为每个组件维护信任证据;(2)在所有信任根之间共享信任证据,使得查询任意信任根都能获得所有相关信任证据。由此,构建了一个构建信任云链的基础,使其能够统一地组织、导出整个链的可信证据,从而促进了有效的云认证。
Neuron神经元的结构
上图是Neuron神经元的逻辑结构。我们来简单梳理一下该结构:
图中红框部分:Kernel(内核)是Neuron神经元的核心组成部分,它可以维护任意两个节点之间的证实信息,结构类似于二维矩阵。内核Kernel由认证模块Attestation Module和信任传播模块Trust Propagation来维护。
当上层服务组件(如用户的虚拟机或管理服务模块)之间开始新的通信时,认证模块可以验证目标节点,它使用认证信息更新内核Kernel;信任传播模块Trust Propagation采用去中心化的RepCloud认证协议,将更新后的内核矩阵与其邻接节点进行交换。
Neuron通过其网络监控器Nerwork Monitor和vTPM管理器来与上层服务进行交互;网络监控器监听网络流量,并从目标节点Neuron神经元的内核Kernel查询其可信性,必要时启动对节点的认证;vTPM管理器将必需的Kernel内核矩阵导出到vTPM,以实现云认证。
每个节点的Neuron神经元实现两种形式的认证。
1、 由vTPM管理模块实现对上层服务属性的认证,如虚拟机或云管理服务组件;
2、 通过认证模块和网络监控模块的合作,采用去中心化的RepCloud认证来证明所有交互节点上的NeuronVisor的可信性。
频繁通信的节点上的Neuron神经元形成一个Neuron网络,通过使用信任传播模块聚合、传播这种认证信息,在这个网络中每个Neuron神经元的可信性被定期检查。通过在被证实的Neuron神经元之间共享上层服务的属性,这个网络形成了一个动态、可伸缩的软件层,通过统一的接口来证明所有托管的交互服务。通过验证和查询这个网络上的任何Neuron神经元都可以收集所有依赖服务的属性。
主要介绍第二种形式的认证:如何在NeuronVisor框架下实现去中心化的RepCloud认证,动态识别相关的Neuron神经元,并有效地共享信息。
Neuron神经元连接