区块链加强的飞行器通信寻址和报告系统通信的制作方法

文档序号:18736710发布日期:2019-09-21 01:17阅读:184来源:国知局
区块链加强的飞行器通信寻址和报告系统通信的制作方法

本公开大致涉及以安全的方式将数据传送到飞行器、从飞行器传送数据或在飞行器内部传送数据。



背景技术:

飞行器和其他专用交通工具的电气系统通常包括线路可更换单元(LRU)。LRU是模块化电子系统,其执行各种交通工具操作。LRU通常具有输入和输出电连接以及内部总线,通常是串行总线。

飞行器通信寻址和报告系统(ACARS)是一种数字数据链技术和一组标准,其用于在飞行器和地面站之间以及不同的飞行器内LRU之间传输消息。示例性ACARS标准是ARINC 429规范,其可从Rockwell Collins(罗克韦尔柯林斯公司)获得。ACARS可用于单向通信,或通过使用多个单向系统进行双向通信。ACARS消息通常由一个或多个32位“词语”组成,每个词语可以包括一个或多个预定义字段,每个字段可以包含数据值。

区块链技术用于形成分散的加密货币计算机网络,例如针对比特币的分散的加密货币计算机网络。在这种网络中,区块链用于防止加密货币的双重花费。通常,区块链用作分布式分类账(ledger),其可以跟踪加密货币事物。



技术实现要素:

根据各种实施例,公开了一种用于在地面站和飞行器之间安全通信的系统。该系统包括多个节点,多个节点通信地互连并且包括至少一个基于地面的节点和多个基于飞行器的节点,多个节点中的每一个包括存储区块链的至少相应部分的永久存储器,所述相应部分表示多个节点中的至少一些节点之间的交互,所述多个节点中的每一个包括逻辑分区,所述逻辑分区包括存储包括离线公钥和在线私钥的在线非对称密钥对的在线逻辑部分以及存储包括离线公钥和在线私钥的离线非对称密钥对的离线逻辑部分,其中多个节点包括多个控制节点,多个控制节点中的每一个被配置为通过以下方式发起特权网络动作,即通过向多个控制节点广播表示特权网络动作的区块链记录;从多个控制节点接收表示特权网络动作的验证结果的多个投票;确定来自多个控制节点投票的合意表明特权动作是允许的;并且向多个节点中的每个节点的相应区块链部分发布表示特权动作的区块链记录的推导;其中系统根据所述确定实现特权操作。

上述实施例的各种可选特征包括以下内容。多个基于飞行器的节点中的至少一些可以包括飞行器通信寻址和报告系统(ACARS)线路可替换单元(LRU)。特权网络动作可以包括从发送器节点向目的地节点发送安全的节点间通信;其中表示特权动作的区块链记录包括目的地节点的标识、使用目的地节点的在线公钥加密的消息有效载荷、以及使用发送节点的在线私钥加密的发送器节点的标识;并且其中每个控制节点通过检索在线公钥并使用该在线公钥解密发送器节点的标识来确定多个投票中的投票。特权动作可以包括注册新节点;其中表示特权动作的区块链记录包括新节点的标识、新节点的离线公钥、新节点的在线公钥、以及使用广播的相应控制节点的在线公钥加密的连接值;并且其中每个控制节点通过使用相应的在线私钥解密连接值来确定多个投票中的投票。所述多个节点还可以包括多个固定节点,所述多个固定节点中的每一个被配置为发起非特权动作。特权动作可以包括由撤销控制节点撤销特定固定节点的密钥;其中表示特权动作的区块链记录包括特定固定节点的标识、将要撤销的密钥对的标识、以及使用撤销控制节点的私钥加密的撤销控制节点的标识;并且其中每个控制节点至少通过解密撤销控制节点的标识来确定多个投票中的投票。特权动作可以包括由特定固定节点撤销特定固定节点的密钥;其中表示特权动作的区块链记录包括特定固定节点的标识、使用特定固定节点的离线私钥加密将要撤销的在线密钥对的标识;并且其中每个控制节点至少通过解密将要撤销的在线密钥对的标识来确定多个投票中的投票。特权动作可以包括由密钥更新控制节点发起的(rekey)对特定固定节点的密钥进行密钥更新;其中表示特权动作的区块链记录包括特定固定节点的标识、特定固定节点的在线公钥、以及使用密钥更新控制节点的在线私钥加密的密钥更新控制节点的标识;其中每个控制节点至少通过解密密钥更新控制节点的标识来确定多个投票中的投票;其中特定固定节点被配置为在确定之后并且在发布之前,写入密钥更新成功区块链记录,其包括特定固定节点的标识和使用该特定固定节点的离线私钥加密的特定固定节点的新在线公钥;并且其中表示特权动作的区块链记录的推导包括特定固定节点的ID、特定固定节点的新在线公钥、以及特定固定节点的离线公钥。非特权动作可以包括通过特定固定节点的自发起的密钥更新,特定固定节点的自发起的密钥更新包括:向多个控制节点广播表示自发起密钥更新的区块链记录,区块链记录包括特定固定节点的标识,以及使用特定固定节点的离线私钥加密的特定固定节点的在线公钥;并且向多个节点中的每个节点的相应区块链部分发布区块链记录,该区块链记录包括特定固定节点的标识、特定固定节点的新在线公钥以及特定固定节点的新离线公钥。区块链的每个相应部分本身可以包括表示涉及相应节点的网络动作的区块链。

根据各种实施例,公开了一种在地面站和飞行器之间在多个节点间安全通信的方法,所述多个节点通信地互连并且包括至少一个基于地面的节点和多个基于飞行器的节点,所述多个节点中的每一个包括至少存储区块链的相应部分的永久存储器,所述相应部分表示多个节点中的至少一些节点之间的交互,所述多个节点中的每一个包括逻辑分区,所述逻辑分区包括存储在线非对称密钥对的在线逻辑部分以及存储离线非对称密钥对的离线逻辑部分,所述在线非对称密钥对包括离线公钥和在线私钥,离线非对称密钥对包括离线公钥和在线私钥,其中多个节点包括多个控制节点。多个控制节点中的每一个被配置为通过以下方式发起特权网络动作,即通过向多个控制节点广播表示特权网络动作的区块链记录;从多个控制节点接收表示特权网络动作的验证结果的多个投票;确定来自多个控制节点投票的合意表明特权动作是允许的;并且向所述多个节点中的每个节点的相应区块链部分发布表示所述特权动作的区块链记录的推导;其中基于所述确定实现特权动作。

上述实施例的各种可选特征包括以下内容。多个基于飞行器的节点中的至少一些可以包括飞行器通信寻址和报告系统(ACARS)线路可替换单元(LRU)。特权网络动作可以包括从发送器节点向目的地节点发送安全的节点间通信;其中表示特权动作的区块链记录包括目的地节点的标识、使用目的地节点的在线公钥加密的消息有效载荷、以及使用发送器节点的在线私钥加密的发送器节点的标识;并且其中每个控制节点通过检索在线公钥并使用该在线公钥来解密发送器节点的标识来确定多个投票中的投票。特权动作可以包括注册新节点;其中表示特权动作的区块链记录包括新节点的标识、新节点的离线公钥、新节点的在线公钥、以及使用广播的相应控制节点的在线公钥加密的连接值;并且其中每个控制节点通过使用相应的在线私钥解密连接值来确定多个投票中的投票。多个节点还可以包括多个固定节点,多个固定节点中的每一个被配置为发起非特权动作。特权动作可以包括通过撤销控制节点撤销特定固定节点的密钥;其中表示特权动作的区块链记录包括特定固定节点的标识、将被撤销的密钥对的标识、以及使用撤销控制节点的私钥加密的撤销控制节点的标识;并且其中每个控制节点至少通过解密撤销控制节点的标识来确定多个投票中的投票。特权动作可以包括由特定固定节点撤销特定固定节点的密钥;其中表示特权动作的区块链记录包括特定固定节点的标识、使用特定固定节点的离线私钥加密的将被撤销的在线密钥对的标识;并且其中每个控制节点至少通过解密将要撤销的在线密钥对的标识来确定多个投票中的投票。特权动作可以包括更新由密钥更新控制节点发起的特定固定节点的密钥;其中表示特权动作的区块链记录包括特定固定节点的标识、特定固定节点的在线公钥、以及使用密钥更新控制节点的在线私钥加密的密钥更新控制节点的标识;并且其中每个控制节点至少通过解密密钥更新控制节点的标识来确定多个投票中的投票;该方法还包括:在所述确定之后并且在发布之前,由特定固定节点写入密钥更新成功区块链记录,该密钥更新成功区块链记录包括特定固定节点的标识和使用特定固定节点的离线私钥加密的特定固定节点的新在线公钥;其中表示特权动作的区块链记录的推导包括特定固定节点的ID、特定固定节点的新在线公钥、以及特定固定节点的离线公钥。非特权动作可以包括:通过特定固定节点的自发起密钥更新,该特定固定节点的自发起密钥更新包括:向多个控制节点广播表示自发起密钥更新的区块链记录,区块链记录包括特定固定节点的标识、以及使用特定固定节点的离线私钥加密的特定固定节点的在线公钥;并且向所述多个节点中的每个节点的相应区块链部分发布区块链记录,所述区块链记录包括特定固定节点的标识、特定固定节点的新在线公钥以及特定固定节点的新离线公钥。区块链的每个相应部分本身可以包括表示涉及相应节点的网络动作的区块链。

一些实施例具有优于现有技术的显著优点。一些实施例阻止了否则可用于现有飞行器通信系统的攻击向量,即所谓的中间人(man-in-the-middle)攻击。通过使用区块链来识别和验证每个通信的发送器和接收器,一些实施例能够成功地防止中间人攻击。一些实施例使区块链技术适用于飞行器通信,从而防止恶意行动者的攻击,即使在少数控制节点受到损害的情况下也是如此。

附图说明

当结合附图考虑时,参考以下详细描述,可以更好地理解示例的各种特征,其中:

图1是根据各种实施例的系统的示意图;

图2是根据各种实施例的区块链的示意图;

图3是根据各种实施例的区块链强化的特权飞行器通信的方法的流程图;

图4是根据一些实施例的用于区块链强化的安全飞行器通信的区块链记录的示意图;

图5是根据一些实施例的用于区块链强化的新节点注册的区块链记录的示意图;

图6是根据一些实施例的用于区块链强化的控制节点发起的固定节点在线密钥对撤销的区块链记录的示意图;

图7是根据一些实施例的用于区块链强化的自发起固定节点在线密钥对撤销的区块链记录的示意图;

图8是根据一些实施例的用于区块链强化的控制节点发起的固定节点密钥更新的区块链记录的示意图;

图9是根据各种实施例的区块链强化的自发起固定节点密钥更新的方法的流程图;和

图10是根据一些实施例的用于区块链强化的自发起起固定节点密钥更新的区块链记录的示意图。

具体实施方式

现在将详细参考在附图中说明的公开示例。只要有可能,在整个附图中将使用相同的附图标记来表示相同或相似的部分。在以下描述中,参考形成其一部分的附图,并且其中通过说明的方式示出具体示例。足够详细地描述这些示例以使得本领域技术人员能够实践它们,并且应当理解,可以利用其他示例并且可以在不脱离本公开的范围的情况下进行改变。因此,以下描述仅是示例性的。

公开了使用区块链技术确保飞行器通信的系统和方法。特别地,实施例可以利用非对称密码术和区块链技术来保护ACARS型系统免受恶意或流氓参与者的攻击。实施例可以包括多个通信耦合的节点。为了将系统管理任务与通信任务隔离,每个节点可以包括分为在线部分和离线部分的逻辑分区。预期与实施例一起使用的节点的示例包括ACARS LRU和与飞行器ACARS系统通信的地面站。地面站节点可以各自具有完整区块链分类账的副本,使得它们中的任何一个都可以验证整个分类账中的事物的真实性和合法性。根据一些实施例,这些节点可以被认为是具有特权的,并且只要有支持多数票和法定人数行动,这些节点就可以执行许多关键任务以保持链的完整性。飞行器机载的节点和一些地面站节点可能只存储完整区块链分类账的涉及关于所述节点的动作的部分。根据一些实施例,这些节点被认为是非特权的,并且它们仅可以为自己执行管理任务,而与其他节点不同。这里详细公开了这些和其他特征。

图1是根据各种实施例的系统的示意图。本文例如参考图3-10公开的技术可以使用参考图1所示和所述的系统来实现。具体地,图1描绘了与地面站106通信的飞行器102。飞行器102可以是任何类型的飞行器,不限于固定翼飞机。因此,例如,飞行器102可以是直升机。地面站106可以包括在地面空中交通控制系统内或与地面空中交通控制系统不同。

飞行器102可以包括ACARS系统,该ACARS系统本身包括多个ACARS LRU。从地面站发送到飞行器的ACARS消息可以顺序地通过飞行器LRU,例如,从最不重要的LRU到最关键的LRU。每个飞行器LRU被认为是如本文使用的术语“节点”。

地面站106可以包括通信地耦合到计算机可读介质(例如,永久存储器112)和接口108的一个或多个电子处理器110。例如,(一个或多个)处理器110可以形成电子计算机的一部分。接口108可以包括信号放大器和任何其他电子部件,以确保来自地面站106的信号被传递到目的地,例如无线发射器114。无线发射器114可以耦合到天线104,天线104无线地发送数据到飞行器102并且从飞行器102无线地接收数据。永久存储器112可以包括计算机可解释的指令,当由(一个或多个)处理器110执行时,该指令使得地面站106能够执行本文公开的一种或多种技术,例如,参考图3-10中的任意附图显示和说明的技术。地面站106被认为是如本文使用的术语“节点”。

每个节点,无论是地面站、LRU还是不同类型的节点,都可以包括其存储器和处理硬件的逻辑分区。这样的分区可以具有至少两个部分:在线部分和离线部分。每个部分存储由公钥和私钥组成的非对称加密密钥对。来自在线逻辑部分的密钥可以用于系统任务,例如节点之间的通信。来自离线逻辑部分的密钥可以用于系统管理和维护目的,例如用于节点在线密钥对撤销、节点在线密钥对密钥更新和新节点注册。离线逻辑部分可以是物理的。也就是说,与在线逻辑部分相比,离线逻辑部分可以具有完全不同的攻击面。离线逻辑部分可以与任何网络(例如互联网)断开连接。例如,离线密钥可以仅通过与节点的直接物理接合而被替换,例如通过经由USB端口连接到该节点。

节点可以是两种不同类型,在此称为“控制节点”和“固定节点”。控制节点被视为具有特权,并且因此可以操控特权和非特权动作。例如,根据一些实施例,控制节点可以读取和写入信息,对动作的有效性进行投票,从多个接收的投票确定有效性合意,添加节点或从网络移除节点,撤销任何节点的在线密钥对,发起任何节点的密钥更新,并将特权或非特权通信发送到另一个节点。与控制节点相比,固定节点通常具有较少的处理能力、存储器和其他资源。根据一些实施例,固定节点可以读取和写入信息,撤销它们自己的在线密钥对,更新它们自己的在线密钥对,以及向任何其他节点发送非特权通信。通常,固定节点可以在飞行器上并且可以实现为ACARS LRU,并且控制节点可以实现为ACARS通信地面站,然而,这些示例不意图作为限制。注意,固定节点可以包括诸如处理器110等处理器,诸如永久存储器112等永久存储器,包括如上所述的公开的逻辑分区,以及诸如用于与诸如LRU等其他节点通信的接口108的通信接口。也就是说,任何节点的基本逻辑结构可以如本文中参考地面站106示出和说明。

图2是根据各种实施例的区块链200的示意图。通常,区块链是存储在永久存储器中并用于跟踪事物或其他动作的分布式可读和可写计算机可解释数据结构。区块链可以由各个逻辑块202,204,206构成。每个块可以包括以下任何一个或组合:表示块创建时间的时间戳、可以是序号或唯一序列号的块标识、和有效载荷,其可包括任意信息。根据一些实施例,有效载荷可以是消息的内容。根据一些实施例,有效载荷可以是由多个子有效载荷构成的墨克(Merkle)树。根据一些实施例,有效载荷本身可以是独立的块链。有效载荷数据或旨在作为有效载荷数据插入的数据在本文中称为有效载荷“记录”。除了第一块之外,链中的每个块还包括来自前一个块的内容的加密散列值,例如,前一个块的整个内容的加密散列。

每个节点可以存储表示特定网络中所有节点中的所有动作的完整区块链以及表示涉及该特定节点的所有动作的单独区块链中的一者或两者。根据一些实施例,完整的区块链可以包括其有效载荷本身是网络中的节点的单独区块链的块。通常,控制节点可以存储完整的区块链,而固定节点可以存储单独的区块链。例如,节点可以将它们各自的区块链存储在它们的离线逻辑部分中。

下面参考图3-10详细公开了根据各种实施例的区块链的使用和条目。

图3是根据各种实施例的区块链强化的特权飞行器通信的方法300的流程图。方法300可以由控制节点与飞行器通信网络中的其他节点(例如ACARS网络)协同实现。例如,可以使用图1的系统100来实践方法300。

在框302处,飞行器通信系统中的控制节点广播请求。该请求可以是区块链记录或其他分类账条目或表示所请求的动作的数据的形式。该请求可以广播到飞行器通信系统中的所有节点,或广播到网络中的所有控制节点。例如,如果要采取的动作是特权动作,则该请求可以仅发送给控制节点,而如果动作不是特权动作,则可以将请求发送到所有节点。该请求可以是各种类型中的任意类型。示例性请求包括以下请求:读取或写入信息、从网络添加或删除固定节点、撤消固定节点的在线密钥对、发起固定节点的密钥更新、以及将特权或非特权通信发送到另一个节点。根据各种实施例的这些请求类型的使用和功能的详细示例在下面参考图4-10来呈现。

在框304处,在框302处广播请求的节点从其网络中的其他节点接收响应投票。根据一些实施例,仅允许控制节点投票。投票节点使用标准网络协议(例如,ACARS消息传递)将其投票传递到请求节点。每个响应代表特定响应节点对请求是否有效的评估。投票节点评估请求的有效性的具体方式可以取决于请求的类型。下面参考图4-10呈现根据各种实施例的这些请求类型的使用和功能的详细示例。

在框306处,请求节点从所接收的投票中确定合意。可以根据各种技术进行合意确定。根据一些实施例,基于大多数投票进行合意确定,即,合意是大多数投票。根据一些实施例,合意确定基于少于给定数量或百分比的异议投票,例如,只要异议投票的数量或比例不超过某个阈值,则合意是大多数投票。根据一些实施例,仅全体一致的投票被视为合意。

在框308,如果合意是请求有效,则控制转到框312。否则,控制进行到框310,并且方法300可以终止,可能(例如,通过电子邮件、文本或ACARS消息传递)向系统管理员和/或飞行器驾驶员发送错误消息。

在框312处,飞行器通信网络发布反映区块链中所请求的动作的记录。发布可以包括为区块链生成新块并将新块广播到系统中的每个节点或每个控制节点。如果动作具有特权,则可以仅将消息发送到控制节点,如果动作没有特权,则可以将消息发送到所有节点。接收节点可以接收块并将该块添加到接收节点存储的区块链(或者,对于存储独立的区块链的节点,将接收的块添加到该节点的区块链部分)。发布还可以包括将生成的块添加到请求节点的存储的区块链(或区块链部分)。

在框314处,系统实现所请求的动作。具体实施方式可取决于所请求的动作。在一些实施例中,该块的动作与框312的动作合并。下面参考图4-9呈现根据各种实施例的示例性实施方式的详细描述。

因此,如上所述,方法300可以应用特定参数和动作以便影响多种形式的专用通信动作中的任何一种,包括:从特权节点到任何其他节点的安全通信(在下面参考图4示出和描述),注册新节点(下面参考图5示出和描述),由控制节点发起任何其他节点的在线密钥对的密钥撤销(下面参考图6示出和描述),由任何节点自发起的在线密钥对撤销(下面参考图7所示和所述),由控制节点发起任何其他节点的密钥更新(下面参考图8示出和描述),以及通过任何固定节点发起自密钥更新(self re-keying)(下面参考图9和图10示出和描述)。下面给出这些特定实施例的详细说明。

关于图3-9的说明,当密钥所有者根据上下文是清楚的时,本文档将在线公钥称为“OnPubK”,将在线私钥称为“OnPrivK”,将离线公钥称为“OffPubK”,将在线私钥称为“OnPrivK”。为了明确地表示密钥所有者,密钥表示法之前是相应固定节点的“FN”或相应控制节点的“CN”,例如,控制节点的在线公钥为“CN OnPubK”。此外,使用密钥K用于加密或解密数据D被表示为“K(D)”,其中密码算法可以是任何合适的算法,例如RSA、el Gamal、椭圆曲线等。通常,固定节点被表示为“FN”,而控制节点被表示为“CN”。特定节点可以被表示为节点类型指示的后缀,例如,与标识为“B”的不同固定节点“FN-B”相比,“FN-A”指的是标识为“A”的固定节点。

图4是根据一些实施例的用于区块链强化的安全飞行器通信的区块链记录402,404的示意图。图3的方法300可以通过使用当前所示和所述的区块链记录402,404来适用于任何两个节点之间的安全通信。特定步骤可部分取决于控制节点或固定节点是否是消息发送器。

作为用于发送安全通信的框302的一部分,发送节点获得接收节点的在线公钥(OnPubK)的副本。发送节点使用该密钥来加密消息,例如,通过使用非对称密码直接加密消息,或者通过生成对称密钥,使用它来加密消息,使用在线公钥加密对称密码密钥,以及使用混合非对称/对称密码术将加密的对称密钥和加密的消息打包在一起。(贯穿本公开,短语“使用[非对称密钥]加密[数据]”意味着使用所描述的[对称密钥]直接加密[数据],或者通过混合密码术使用对称密钥加密[数据],如所描述的。)

此外,发送节点使用其在线私钥(OnPrivK)加密其自身节点ID的副本。之后,投票节点将使用此数据来确定请求的有效性。

然后,发送节点形成区块链记录(或包括所述信息的其他数据结构),其可包括以下四个字段:发送节点的ID、如上所述加密的消息、如上所述的加密的发送节点的ID以及事物ID,其可以是序列中的数字、唯一的序列号、记录的散列或任何其他足够的标识数据。用于安全通信固定节点区块链记录402和用于安全通信控制节点区块链记录404的合适格式在图4中示出。也就是,对于由控制节点发起的安全通信,可以使用区块链记录402的格式,并且对于由固定节点发起的安全通信,可以使用区块链记录404的格式。然后,发送节点将其请求广播到至少预期的接收节点。

如果该消息被认为是具有特权的,则接收节点可以检索发送节点的在线公钥并解密该消息。对于非特权消息,通信方法可以到此结束。对于特权通信,也可以执行以下操作。

作为用于发送特权安全通信的框304的一部分,投票节点分析框302广播的区块链记录中的其相应副本,以确定它是否代表有效请求。为此,每个投票节点使用区块链记录中的发送节点ID来获得发送节点的在线公钥的副本,投票节点使用该副本来解密已使用发送节点的相应的在线私钥加密的该发送节点的ID。为了确定所请求的动作是否有效,投票节点将解密的发送节点的ID与从区块链检索的发送节点的ID进行比较。如果它们匹配,则投票节点投票表明该请求有效。否则,投票节点投票表明请求无效。

用于安全飞行器通信的框306,308和310的动作如上面参考图3所述。

作为用于安全通信的框312的一部分,节点将记录发布到它们相应的区块链。控制节点可以通过将记录包含在新块中并将该新块添加到完整区块链中该控制节点的副本中来实现上述操作,固定节点可以将这样的块添加到它们各自的(部分)副本中。

最后,作为用于发送安全通信的框314的一部分,网络实现该动作。为了发送安全通信,该块的动作包括接收节点使用其在线私钥解密消息。

图5是根据一些实施例的用于区块链强化的新节点注册的区块链记录502,504的示意图。图3的方法300可以适于通过使用当前所示和所述的区块链记录502,504来注册新的固定节点,即将固定节点添加到网络。注册可以由控制节点发起。

作为用于注册新固定节点的块302的一部分,发起控制节点形成并广播区块链记录(或等效信息)。区块链记录包括以下条目:添加的固定节点的ID、新固定节点的离线公钥、新固定节点的在线公钥、使用请求控制节点的在线私钥加密的连接值、要采取的动作(即“添加”节点)的标识和事务ID。事务ID可以如上面参考图4所述。连接值,表示为“CVAL”,可以是秘密值,例如随机数、对称密钥或通行码。在注册过程之前,可以将CVAL加载到要添加的固定节点的软件或固件上。适合于新节点请求区块链记录502的示例格式在图5中示出。

作为用于添加节点的框304的一部分,每个投票节点均检索请求控制节点的在线公钥的副本并使用该副本来解密加密的CVAL。每个投票节点还从新的固定节点检索CVAL的副本,并将其与解密的CVAL进行比较。如果它们匹配,则投票节点投票表明该请求有效。否则,投票节点投票表明请求无效。注意,根据一些实施例,使用在所有控制节点之间(而不是在固定节点之间)共享的在线密钥对加密和解密CVAL,而不是使用请求控制节点的在线密钥对对CVAL进行加密和解密。在将节点建立为控制节点后,可以在特定控制节点中提供这样的密钥对。

用于新固定节点注册的块306,308和310的动作如上面参考图3所述。

作为用于添加固定节点的框312的一部分,节点将表示区块链记录502的区块链记录发布到它们相应的区块链。控制节点可以通过将代表性记录包含在新块中并将该新块添加到完整区块链中的该控制节点的副本中来实现上述操作,固定节点可以将这样的块添加到区块链中的它们的各个(部分)副本中。适合于记录为新节点区块链记录504的示例格式在图5中示出。注意,用于记录的区块链记录504是通过以下方式从用于请求的区块链记录502导出的,即通过提取添加的固定节点的ID、用于新固定节点的离线公钥、用于新固定节点的在线公钥以及事务ID,并且根据这些数据形成新的代表性记录。可以按块312发布该新记录。

最后,作为用于添加节点的框314的一部分,系统实现节点的添加。为了添加节点,该块的动作基本上与块312的动作相同。具体地,区块链记录504的发布意味着新节点已被添加到网络。一些实施例可以随后广播硬件规范,例如,每个块的存储器容量、CPU速度等。

图6是根据一些实施例的用于区块链强化的控制节点发起的固定节点在线密钥对撤销的区块链记录602的示意图。也就是说,图3的方法300可以适用于控制节点通过使用如当前所示和所述的区块链记录602来撤销固定节点的在线密钥对。

作为用于撤销固定节点的在线密钥对的框302的一部分,请求控制节点形成并广播表示撤销的区块链记录或等效信息。适用于请求在线密钥对撤销区块链记录602的示例格式如图6所示。该记录包括以下条目:要撤销在线密钥对的固定节点的ID、将被撤销的离线公共密钥的副本、将要采取的动作(即,“撤销”固定节点的在线密钥对)的标识、使用请求控制节点的在线私钥加密的请求控制节点的ID的副本、以及事务ID。事物ID可以如上参考图4所述。

作为用于撤销密钥对的框304的一部分,投票节点分析框302广播的区块链记录中的其相应副本,以确定该副本是否代表有效请求。为此,每个投票节点获得发送节点的在线公钥的副本,投票节点使用该副本来解密已使用发送节点的相应在线私钥加密的发送节点的ID。为了确定所请求的动作是否有效,投票节点将解密的发送节点的ID与从区块链检索的发送节点的ID进行比较。如果它们匹配,则投票节点投票表明该请求有效。否则,投票节点投票表明该请求无效。

用于控制节点发起的固定节点在线密钥对撤销的框306,308和310的动作如上面参考图3所述。

作为用于控制节点发起的固定节点在线密钥对撤销的框312的一部分,节点发布区块链记录602或等效信息。控制节点可以通过将代表性记录包含在新块中并将该新块添加到完整区块链中的该控制节点的副本中来实现上述操作,固定节点可以将这样的块添加到它们各自的(部分)副本中。

作为用于在线密钥对撤销的框314的一部分,网络实现所请求的动作。对于在线密钥对撤销,由于存在指示过期的已发布的区块链记录,因此可以采用不使用固定节点的过期密钥对的节点的形式。

图7是根据一些实施例的用于区块链强化的自发起的固定节点在线密钥对撤销的区块链记录702的示意图。也就是说,图3的方法300可以适用于固定节点,以通过使用当前所示和所述的区块链记录702来撤销该固定节点自己的在线密钥对。

作为用于固定节点自行撤销其在线密钥对的框302的一部分,固定节点形成并广播表示撤销的区块链记录或等效信息。适合于这种区块链记录702的示例格式如图7所示。区块链记录702包括以下条目:要撤销在线密钥对的固定节点的ID、使用自行撤销固定节点的离线私钥加密的将要撤销的在线公钥的副本、要采取的动作(即“撤销”固定节点的在线密钥对)的标识以及事务ID。事物ID可以如上参考图4所述。

作为用于自行撤销固定节点的在线密钥对的框304的一部分,投票节点分析框302广播的区块链记录中的固定节点的相应副本,以确定该副本是否代表有效请求。为此,每个投票节点使用固定节点的ID作为索引从区块链获得发送节点的在线公钥的副本。然后,投票节点使用在线公钥来解密已使用相应的在线私钥加密的发送节点的ID。为了确定所请求的动作是否有效,投票节点将解密的ID与从区块链中检索的固定节点的ID进行比较。如果它们匹配,则投票节点投票表明该请求有效。否则,投票节点投票表明请求无效。

用于自发起的固定节点在线密钥对撤销的框306,308和310的动作如上面参考图3所述。

作为用于自发起的固定节点在线密钥对撤销的块312的一部分,节点发布区块链记录702或等效信息。控制节点可以通过将代表性记录包含在新块中并将该新块添加到完整区块链中的该控制节点的副本中来实现上述操作,固定节点可以将这样的块添加到它们各自的(部分)副本中。

作为用于自发起的固定节点在线密钥对撤销的框314的一部分,网络实现所请求的动作。对于在线密钥对撤销,由于存在指示过期的已发布的区块链记录,因此可以采用不使用固定节点的过期的密钥对的节点的形式。

图8是根据一些实施例的用于区块链强化的控制节点发起的固定节点在线密钥对密钥更新的区块链记录802,804,805的示意图。也就是说,图3的方法300可以适用于控制节点通过使用当前所示和所述的区块链记录802,804,806来撤销固定节点的在线密钥对。

作为用于控制节点撤销特定固定节点的在线密钥对的框302的一部分,控制节点形成并广播表示密钥更新的区块链记录或等效信息。适合于这种区块链记录802的示例格式如图8所示。区块链记录802包括以下条目:将要密钥更新在线密钥对的特定固定节点的ID、将要密钥更新的密钥对的当前在线公钥的副本、将要采取的动作的标识(即,“密钥更新”特定固定节点的在线密钥对)、使用发起控制节点的在线私钥加密的发起控制节点的ID的副本、以及事务ID。事物ID可以如上参考图4所述。

作为用于固定节点的在线密钥对的控制节点发起的密钥更新的方框304的一部分,投票节点分析其在框302广播的区块链记录中的相应副本,以确定它是否代表有效请求。为此,每个投票节点从区块链获得发起控制节点的在线公钥的副本。然后,投票节点使用在线公钥来解密已使用相应的在线私钥加密的发起控制节点的ID。为了确定所请求的动作是否有效,投票节点将解密的ID与从区块链检索的初始控制节点的ID进行比较。如果它们匹配,则投票节点投票表明该请求有效。否则,投票节点投票表明该请求无效。

用于控制节点发起的固定节点在线密钥对密钥更新的块306,308和310的动作如上面参考图3所述。

在框308的动作之后,但在框312的动作之前,对于控制节点发起的固定节点在线密钥对密钥更新,特定的固定节点生成新的在线密钥对。然后,特定的固定节点将密钥更新成功区块链记录804写入其区块链。密钥更新成功区块链记录804包括:特定固定节点的标识、使用特定固定节点的离线私钥加密的特定固定节点的新生成的在线公钥、将要采取的动作的标识(即,“密钥更新”特定固定节点的在线密钥对)以及事务ID。发起控制节点从区块链中读取密钥更新成功记录,并且作为响应,继续从区块链记录802和区块链记录804导出表示特权密钥更新动作的区块链记录806。表示特权密钥更新动作的区块链记录806包括:特定固定节点的ID、特定固定节点的离线公钥、特定固定节点的新在线公钥以及事务ID。

作为用于控制节点发起的固定节点在线密钥对密钥更新的框312的一部分,特定固定节点向区块链发布表示特权密钥更新动作的区块链记录806。这可以通过将代表性记录包含在新块中并将该新块添加到完整区块链中的该固定节点的副本中来实现。

作为用于控制节点发起的固定节点在线密钥对密钥更新的框314的一部分,网络实现所请求的动作。对于在线密钥对密钥更新,这可以采用使用固定节点的新密钥对进行任何网络动作的节点的形式。

图9是根据各种实施例的区块链强化的自发起的固定节点密钥更新的方法900的流程图。固定节点可以使用图10的区块链记录1002,1004结合当前所示和所述的方法900来密钥更新其在线密钥对。作为初始步骤,固定节点生成新的在线密钥对,包括在线公钥和在线私钥。

对于固定节点自行密钥更新其在线密钥对的框902,固定节点形成并广播表示密钥更新的区块链记录或等效信息。适合于这种区块链记录1002的示例格式如图10所示。区块链记录1002包括以下条目:将要密钥更新在线密钥对的固定节点的ID、使用固定节点的离线密钥对的离线私钥加密的密钥更新的在线密钥对的新在线公钥的副本、将要采取的动作的标识(即,“密钥更新”固定节点的在线密钥对)以及事务ID。事物ID可以如上参考图4所述。

在块904,针对固定节点的在线密钥对的自行密钥更新,节点发布区块链记录1002或等效信息。控制节点可以通过将代表性记录包含在新块中并将新块添加到完整区块链中的该控制节点的副本中来实现上述操作,固定节点可以将这样的块添加到该固定节点各自的(部分)副本中。

在块906,针对自发起的固定节点在线密钥对撤销,网络实现所请求的动作。例如,这可以包括不使用固定节点的过期在线公钥的节点。

可以部分地使用计算机应用或程序来执行上述某些示例。计算机程序可以以各种形式存在,包括活动和非活动。例如,计算机程序可以作为一个或多个软件程序、软件模块或两者存在,其可以包括源代码、目标代码、可执行代码或其他格式的程序指令、(一个或多个)固件程序或硬件描述语言(HDL)文件。以上任何内容都可以实施在计算机可读介质上,该计算机可读介质可以包括计算机可读存储设备和压缩或未压缩形式的介质。示例性计算机可读存储设备和介质包括常规计算机系统RAM(随机存取存储器)、ROM(只读存储器)、EPROM(可擦除可编程ROM)、EEPROM(电可擦除可编程ROM)以及磁盘或光盘或磁带。

在不脱离真实精神和范围的情况下,本领域技术人员将能够对所描述的示例进行各种修改。这里使用的术语和描述仅以说明的方式提出,并不意味着限制。特别地,尽管已经通过示例描述了该方法,但是该方法的步骤可以以与图示不同的顺序执行或同时执行。本领域技术人员将认识到,在所附权利要求及其等价物所限定的精神和范围内,这些和其他变化是可能的。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1