一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

可信远程证明系统及其存储、验证方法、存储介质与流程

2022-06-29 14:44:21 来源:中国专利 TAG:


1.本发明涉及无线通信技术领域,特别涉及一种可信远程证明系统及其存储、验证方法、存储介质。


背景技术:

2.目前大部分网络安全系统主要由防火墙、入侵检测、防病毒等组成,是在外围防止外部攻击的安全手段。可信计算是在系统内部建立一套安全可靠的防御体系,确保计算机能够按照预期提供稳定的服务。
3.可信计算通过在设备内部引入可信硬件作为可信根,采用软硬件相结合的技术,建立一条信任链,一级认证一级,一级信任一级,从而达到整个计算机系统的可信任。
4.远程证明是在网络中两台设备间进行可信证明的过程,包括远程身份认证和远程完整性验证。在远程完整性验证过程中,证明方需要向挑战方提供与可信状态有关的完整性度量数据,挑战方获得证明方发送的数据后,将其与证明方的度量预期数据进行比对验证,根据验证结果判断证明方是否处于可信状态。
5.现有技术的不足在于:现有的远程证明方式存在挑战方无法正常提供远程完整性验证服务的问题。


技术实现要素:

6.本发明提供了一种可信远程证明系统及其存储、验证方法、存储介质,用以解决现有的远程证明方式存在挑战方无法正常提供远程完整性验证服务的问题。
7.本发明提供以下技术方案:
8.一种可信远程证明系统,包括:
9.由多个可信远程证明服务器组成的联盟链,用于存储设备度量预期值,在接收到挑战方发起的证明方完整性验证请求以及转发证明方完整性度量数据后,进行证明方实际完整性度量数据和度量预期值的对比,得出证明方的验证结果并返回给挑战方,可信远程证明服务器是由各有权联盟组织提供的;
10.证明方,用于在需要可信远程证明时,向挑战方发出完整性度量数据;
11.挑战方,用于在接收到证明方发出的完整性度量数据后,向联盟链发起证明方完整性验证请求以及向证明方转发证明方完整性度量数据。
12.实施中,进一步包括:
13.度量预期值管理方服务器,是由各有权联盟组织提供的,用于根据联盟链的身份认证和授权,生成和/或更新联盟链上的设备度量预期值。
14.实施中,可信远程证明服务器进一步用于基于tls安全进行信息传输;或,
15.证明方进一步用于基于tls安全进行信息传输;或,
16.挑战方进一步用于基于tls安全进行信息传输;或,
17.度量预期值管理方服务器进一步用于基于tls安全进行信息传输。
18.实施中,可信远程证明服务器进一步用于通过可信身份认证方式确保数据传输安全;或,
19.证明方进一步用于通过可信身份认证方式确保数据传输安全;或,
20.挑战方进一步用于通过可信身份认证方式确保数据传输安全;或,
21.度量预期值管理方服务器进一步用于通过可信身份认证方式确保数据传输安全。
22.实施中,联盟链进一步用于通过智能合约进行证明方实际完整性度量数据和度量预期值的对比。
23.一种可信远程证明系统的存储方法,包括:
24.有权联盟组织在可信远程证明服务器投入使用前,预存通过度量预期值管理方服务器创建的设备度量预期值;
25.向联盟链网络发起度量预期值存储请求;
26.联盟链节点验证请求合法性通过后将设备度量预期值存储到联盟链中。
27.实施中,所述度量预期值存储请求中包含设备别名,所述设备别名是对设备可信芯片中的ek公钥增加随机数和时间戳之后进行加密得到的字符串。
28.实施中,进一步包括:
29.根据设备别名对区块链中的设备的度量预期值进行检索。
30.实施中,联盟链节点验证请求合法性,是联盟链利用度量预期值管理方公钥对数字签名进行验签来确定请求是否来源于度量预期值管理方服务器的。
31.实施中,进一步包括:
32.按将设备度量预期值存储到联盟链中的方式对联盟链中的设备度量预期值进行更新。
33.一种可信远程证明系统的验证方法,包括:
34.挑战方获取证明方完整性度量数据;
35.证明方返回设备名以及完整性度量数据;
36.挑战方形成设备完整性验证请求,广播到联盟链网络中;
37.联盟链节点根据请求中证明方设备名获取联盟链中对应的设备度量预期值,确定设备完整性度量数据与设备度量预期值,根据设备度量预期值确定是否可信;
38.联盟链节点将验证结果返回给挑战方。
39.实施中,设备名是设备别名,所述设备别名是对设备可信芯片中的ek公钥增加随机数和时间戳之后进行加密得到的字符串。
40.实施中,确定设备完整性度量数据与设备度量预期值时,联盟链通过智能合约进行证明方实际完整性度量数据和度量预期值的对比。
41.一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述可信远程证明系统的存储方法和/或的可信远程证明系统的验证方法的计算机程序。
42.本发明有益效果如下:
43.本发明实施例提供的技术方案中,在远程完整性验证过程中,采用联盟链替代管理中心,去中心化的完成远程证明中的完整性验证过程,由于基于区块链技术,因此不存在中心系统,不会因中心系统无法访问或服务器出现问题导致挑战方无法正常提供远程完整性验证服务。
44.由于度量预期值经过验证才能添加到区块链中,被持久化存储,形成一套按时间顺序记录、不可篡改、可信任的数据库。因此挑战方无需获取度量预期值,保护了证明方的隐私。
45.进一步的,由于通过智能合约进行完整性验证,因此能够对设备完整性进行公开、公正的验证。
46.进一步的,由于通过不易读的设备别名替代设备名称,设备名称被可变的、不易读的设备别名替代,区块链节点不知道存储的度量预期值对应的设备名称,因此可以防止数据泄露。
47.进一步的,还提供了:设备度量预期值的存储方案、远程完整性验证方案。
附图说明
48.此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
49.图1为本发明实施例中直接可信验证示意图;
50.图2为本发明实施例中第三方可信验证示意图;
51.图3为本发明实施例中可信远程证明系统结构示意图;
52.图4为本发明实施例中系统的存储方法实施流程示意图;
53.图5为本发明实施例中设备度量预期值的存储过程实施流程示意图;
54.图6为本发明实施例中系统的验证方法实施流程示意图;
55.图7为本发明实施例中远程完整性验证过程实施示意图。
具体实施方式
56.发明人在发明过程中注意到:
57.图1为直接可信验证示意图,如图所示,一种常用的实现远程完整性验证的方案是通信的两台设备直接进行验证,一台是挑战方,另一台是证明方。挑战方存储证明方设备的度量预期值,并内置验证模块完成对证明方实际完整性度量数据和其预期值的对比,得出证明方的可信状态。
58.图2为第三方可信验证示意图,如图所示,另一类方案是建立第三方可信远程证明服务器,集中存储各个可信设备度量预期值并验证设备完整性状态。在远程完整性验证过程中,挑战方首先获取证明方完整性度量数据,然后转发给第三方可信远程证明服务器,第三方可信远程证明服务器通过内置的验证模块进行证明方实际完整性度量数据和度量预期值的对比,得出证明方的验证结果返回给挑战方。
59.第一种两台设备直接验证的方法至少存在以下四方面的问题之一:
60.1、挑战方需要存储与之通信的不同设备的预期值,这需要大量的存储空间;
61.2、挑战方知道所有与之通信的证明方预期值,存在隐私泄露问题;
62.3、证明方只能相信挑战方的验证结果,而挑战方可能存在数据篡改、被攻击等安全风险;
63.4、设备度量预期值管理复杂,证明方度量预期值变更需要将存储该度量预期值的所有挑战方设备都升级更新。
64.第二种建立可信远程证明服务器的方法虽然可以解决第一种存储容量大、预期值隐私泄露、度量预期值管理复杂的问题,但该方法额外引入中心化问题,当挑战方无法访问到可信远程证明服务器或者可信远程证明服务器出现问题,挑战方将无法正常提供远程完整性验证服务。
65.基于此,本发明实施例中将提出一种基于区块链技术进行远程完整性验证的方案。该方案通过联盟链的构建以及度量预期值更新流程和完整性验证流程的保障,至少能规避和解决第一种方法挑战方和证明方面临的四方面问题之一,也用以解决了第二种方法的中心化问题。
66.下面结合附图对本发明的具体实施方式进行说明。
67.图3为可信远程证明系统结构示意图,如图所示,包括:
68.由多个可信远程证明服务器组成的联盟链,用于存储设备度量预期值,在接收到挑战方发起的证明方完整性验证请求以及转发证明方完整性度量数据后,进行证明方实际完整性度量数据和度量预期值的对比,得出证明方的验证结果并返回给挑战方,可信远程证明服务器是由各有权联盟组织提供的;
69.证明方,用于在需要可信远程证明时,向挑战方发出完整性度量数据;
70.挑战方,用于在接收到证明方发出的完整性度量数据后,向联盟链发起证明方完整性验证请求以及向证明方转发证明方完整性度量数据。
71.实施中,还可以进一步包括:
72.度量预期值管理方服务器,是由各有权联盟组织提供的,用于根据联盟链的身份认证和授权,生成和/或更新联盟链上的设备度量预期值。
73.实施中,可信远程证明服务器进一步用于基于tls安全进行信息传输;或,
74.证明方进一步用于基于tls安全进行信息传输;或,
75.挑战方进一步用于基于tls安全进行信息传输;或,
76.度量预期值管理方服务器进一步用于基于tls安全进行信息传输。
77.实施中,可信远程证明服务器进一步用于通过可信身份认证方式确保数据传输安全;或,
78.证明方进一步用于通过可信身份认证方式确保数据传输安全;或,
79.挑战方进一步用于通过可信身份认证方式确保数据传输安全;或,
80.度量预期值管理方服务器进一步用于通过可信身份认证方式确保数据传输安全。
81.实施中,联盟链进一步用于通过智能合约进行证明方实际完整性度量数据和度量预期值的对比。
82.具体的,实施例中提出的系统是基于区块链技术解决远程证明中设备完整性验证问题。通过相关联盟组织共同构建远程完整性验证联盟链,结合联盟组织各自的度量预期值管理方,能够去中心化的解决度量预期值的安全存储和管理以及完整性验证问题。
83.整体技术方案可以由四部分构成:
84.一、远程完整性验证联盟链,联盟链网络中的节点由利益相关的多个联盟组织提供的可信远程证明服务器构成,负责存储设备度量预期值,并且通过智能合约验证设备完整性;
85.二、度量预期值管理方,是各个联盟组织提供的设备度量预期值生成和更新的服
务器,是具备可信根的可信设备,只有通过联盟链的身份认证和授权才可以提交度量预期值到联盟链中;
86.三、证明方,是被验证的设备,并且已经通过远程证明中的身份认证,若远程完整性验证结果符合预期,则确定其为可信设备;
87.四、挑战方,是需要从远程完整性验证联盟链中获得证明方可信状态的设备,可以是可信或非可信设备,负责发起证明方完整性验证请求以及转发证明方完整性度量数据。
88.具体实施中,四个组成部分之间的通信基于tls(传输安全层,transport layer security)安全的传输方式,并且通过可信身份认证,确保数据传输安全。
89.基于区块链的远程完整性验证过程可以分为两个部分:一、设备度量预期值的存储过程;二、远程完整性验证过程。设备完整性验证依赖于设备度量预期值,因此设备度量预期值的存储需要先于远程完整性验证完成。
90.下面对它们的具体实施方式进行说明。
91.一、设备度量预期值的存储过程。
92.图4为系统的存储方法实施流程示意图,如图所示,可以包括:
93.步骤401、有权联盟组织在可信远程证明服务器投入使用前,预存通过度量预期值管理方服务器创建的设备度量预期值;
94.步骤402、向联盟链网络发起度量预期值存储请求;
95.步骤403、联盟链节点验证请求合法性通过后将设备度量预期值存储到联盟链中。
96.下面以实例来进行说明。
97.图5为设备度量预期值的存储过程实施流程示意图,如图所示,设备度量预期值的存储流程可以如下:
98.首先,

在某一联盟成员的设备投入使用之前,该联盟成员的度量预期值管理方创建设备度量预期值,将其预设到设备中;
99.②
向联盟链网络发起度量预期值存储请求,度量预期值存储请求中可以包括设备别名、加密后的预期值、随机数以及数字签名。
100.实施中,所述度量预期值存储请求中包含设备别名,所述设备别名是对设备可信芯片中的ek公钥增加随机数和时间戳之后进行加密得到的字符串。
101.具体的,设备别名是对设备可信芯片中的ek(背书密钥,endorsement key)公钥增加随机数和时间戳之后进行sha(安全散列算法,secure hash algorithm)256和ripemd160(race原始完整性校验讯息摘要)加密得到的一个20字节的字符串,既可以在隐蔽ek的情况下保障设备别名的唯一性,也起到匿名化设备的作用。
102.③
联盟链节点验证请求合法性并将设备度量预期值存储到联盟链中。
103.实施中,联盟链节点验证请求合法性,是联盟链利用度量预期值管理方公钥对数字签名进行验签来确定请求是否来源于度量预期值管理方服务器的。
104.具体的,联盟链利用度量预期值管理方公钥对数字签名进行验签,确定请求来源于度量预期值管理方。如果验证失败,将丢弃请求。
105.实施中,还可以进一步包括:
106.按将设备度量预期值存储到联盟链中的方式对联盟链中的设备度量预期值进行更新。
107.具体的,后续如果设备度量预期值变更,度量预期值管理方将重新生成新的设备别名并采用相同方式实现设备度量预期值更新和上链过程。
108.实施中,还可以进一步包括:
109.根据设备别名对区块链中的设备的度量预期值进行检索。
110.具体的,检索区块链中某个设备的度量预期值可以根据最新的设备别名逆向追溯检索,首先检索到的值就是设备当前度量预期值。
111.二、远程完整性验证过程。
112.图6为系统的验证方法实施流程示意图,如图所示,包括:
113.步骤601、挑战方获取证明方完整性度量数据;
114.步骤602、证明方返回设备名以及完整性度量数据;
115.步骤603、挑战方形成设备完整性验证请求,广播到联盟链网络中;
116.步骤604、联盟链节点根据请求中证明方设备名获取联盟链中对应的设备度量预期值,确定设备完整性度量数据与设备度量预期值,根据设备度量预期值确定是否可信;
117.步骤605、联盟链节点将验证结果返回给挑战方。
118.下面以实例来进行说明。
119.图7为远程完整性验证过程实施示意图,如图所示,远程完整性验证流程可以如下:
120.当挑战方需要验证证明方完整性时,首先,

挑战方获取证明方完整性度量数据。
121.②
证明方返回设备别名以及完整性度量数据。
122.实施中,设备名是设备别名,所述设备别名是对设备可信芯片中的ek公钥增加随机数和时间戳之后进行加密得到的字符串。
123.③
挑战方形成设备完整性验证请求,广播到联盟链网络中。完整性验证请求包括证明方设备别名、用联盟链公钥加密的证明方完整性度量数据、随机数。
124.④
联盟链节点利用自身私钥解密,根据请求中证明方设备别名获取联盟链中对应的设备度量预期值,通过智能合约比对请求中的设备完整性度量数据与设备度量预期值,如果符合预期,认为是可信状态,否则不可信。也即,实施中,确定设备完整性度量数据与设备度量预期值时,联盟链通过智能合约进行证明方实际完整性度量数据和度量预期值的对比。
125.最终,

将验证结果返回给挑战方。
126.基于同一发明构思,本发明实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述可信远程证明系统的存储方法和/或的可信远程证明系统的验证方法的计算机程序。
127.具体实施中可以参见可信远程证明系统的存储方法和/或的可信远程证明系统的验证方法的具体实施方式。
128.综上所述,本发明实施例提供的技术方案中,通过远程完整性验证联盟链方案替代管理中心,去中心化的完成远程证明中的完整性验证过程。具体方案中包括:远程完整性验证联盟链、可信度量预期值管理方、证明方以及挑战方。还提供了两个流程:设备度量预期值的存储方案、远程完整性验证方案。
129.在设备度量预期值安全存储和管理方案中:通过可信的度量预期值管理方发起度
量预期值的更新请求,联盟链节点对请求验证后将度量预期值存储到联盟链中。进一步的,通过不易读的设备别名替代设备名称,保护了联盟链中度量预期值数据隐私。
130.在远程完整性验证方案中:挑战方获取证明方的完整性度量数据,并向联盟链发起证明方完整性验证请求,联盟链节点对请求验证后,通过智能合约对完整性度量数据和设备度量预期值进行比对验证,最终将结果返回给挑战方。
131.该方案基于区块链技术,不存在中心系统,不会因中心系统无法访问或服务器出现问题导致挑战方无法正常提供远程完整性验证服务。
132.度量预期值经过验证才能添加到区块链中,被持久化存储,形成一套按时间顺序记录、不可篡改、可信任的数据库。挑战方无需获取度量预期值,保护了证明方的隐私。
133.通过智能合约对设备完整性进行公开、公正的验证。
134.设备名称被可变的、不易读的设备别名替代,区块链节点不知道存储的度量预期值对应的设备名称,防止数据泄露。
135.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
136.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
137.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
138.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
139.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献