CN111869162B - 网络中的远程证明 - Google Patents
网络中的远程证明 Download PDFInfo
- Publication number
- CN111869162B CN111869162B CN201880091397.6A CN201880091397A CN111869162B CN 111869162 B CN111869162 B CN 111869162B CN 201880091397 A CN201880091397 A CN 201880091397A CN 111869162 B CN111869162 B CN 111869162B
- Authority
- CN
- China
- Prior art keywords
- node
- attestation
- trustworthiness
- response
- nodes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/305—Authentication, i.e. establishing the identity or authorisation of security principals by remotely controlling device operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1483—Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/121—Timestamp
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/66—Trust-dependent, e.g. using trust scores or trust relationships
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本公开涉及网络中的远程证明。实施例提供了一种方法,该方法包括:由在网络中与第一节点相邻的节点来证明网络中的第一节点;以及生成第一节点的证明结果。由在网络中与第一节点相邻的多个节点生成的第一节点的多个证明结果被组合以确定第一节点的可信度。在这样的实施例中,消除了用于其他节点的固定验证者,并且可以避免由于这种固定验证者的故障而导致崩溃的风险。
Description
技术领域
本公开总体上涉及网络安全技术,尤其涉及网络中的远程证明。
背景技术
随着网络技术的发展,任何种类的电子设备接入网络变得越来越容易。这些电子设备将不限于例如个人计算机的传统计算设备。例如,当前的物联网(IoT)网络可包含由成千上万种异构计算设备(例如分布式工业控制器、智能家居设备或可穿戴设备)组成的“群(swarm)”。这些设备通常存储大量用户的私人信息,或影响整个***的运行。受损的节点可破坏用户的信息安全,或以传染性的方式快速地导致整个网络崩溃。因此,确保这些设备的安全并防止它们受到攻击非常重要。
发明内容
本公开引入了一种用于网络中的远程证明(attestation)的方法和装置,其可以改善针对这些或其他挑战的解决方案。
实施例的第一方面可以提供一种方法,包括:由在网络中与第一节点相邻的节点来证明网络中的第一节点;以及生成第一节点的证明结果。由在网络中与第一节点相邻的多个节点生成的第一节点的多个证明结果被组合以确定第一节点的可信度(credibility)。
在本公开的实施例中,该方法还包括:获取第一节点的可信度;以及响应于第一节点的可信度指示第一节点不可信,从第一节点断开连接。
在本公开的实施例中,证明第一节点包括:获取第一节点的信用值;确定该信用值是否小于信用阈值;以及响应于该信用值小于该信用阈值,证明该第一节点。
在本公开的实施例中,证明第一节点包括:周期性地证明第一节点。
在本公开的实施例中,证明第一节点包括:向第一节点发送证明请求;以及从第一节点接收证明响应。基于证明响应生成证明结果。
在本公开的实施例中,基于证明响应生成证明结果包括:确定第一节点的响应时间;响应于该响应时间长于响应时间阈值,生成指示该证明失败的证明结果;响应于该响应时间小于响应时间阈值,验证(verify)证明响应;响应于证明响应未被成功验证,生成指示证明失败的证明结果;以及响应于证明响应被成功验证,生成指示证明成功的证明结果。
在本公开的实施例中,该方法还包括:检测第一节点的异常行为;以及报告第一节点的异常行为。
实施例的第二方面可以提供一种方法,包括:从在网络中与第一节点相邻的多个第二节点获取第一节点的多个证明结果;以及基于该多个证明结果确定该第一节点的可信度。
在本公开的实施例中,该方法还包括:将第一节点的可信度发送给多个第二节点;以及通过网络中的树形结构报告第一节点的可信度。
在本公开的实施例中,该方法还包括:响应于第一节点的可信度指示第一节点可信,将第一节点的信用值设置为预定值。
在本公开的实施例中,该方法还包括:比较第一节点的可信度和多个证明结果;响应于该多个证明结果中的一个证明结果与该第一节点的可信度相反,降低该多个第二节点中与该一个证明结果相对应的第二节点的信用值;以及响应于多个证明结果中的一个证明结果与该第一节点的可信度相对应,增加多个第二节点中与该一个证明结果相对应的第二节点的信用值。
在本公开的实施例中,基于多个证明结果确定第一节点的可信度包括:基于多个证明结果和多个第二节点的信用值,计算第一节点的置信度级别;以及基于该置信度级别确定该第一节点的可信度。
在本公开的实施例中,基于置信度级别确定第一节点的可信度包括:将置信度级别与证明阈值进行比较;响应于该置信度级别小于证明阈值,确定该第一节点的可信度以指示该第一节点是不可信的;以及响应于置信度级别等于或大于证明阈值,确定第一节点的可信度以指示第一节点是可信的。
在本公开的实施例中,该方法还包括:从第二节点接收第一节点的异常行为的报告;降低第一节点的信用值;以及降低第二节点的信用值。
实施例的第三方面可以提供一种方法,包括:分别为网络中的多个节点设置信用值;将多个节点指派到多个簇中;以及选择簇中具有最高信用值的第三节点作为簇头(cluster head)。第三节点被配置为:从在簇中与第一节点相邻的多个第二节点获取第一节点的多个证明结果;以及基于多个证明结果确定第一节点的可信度。
在本公开的实施例中,该方法还包括:接收第一节点的可信度的报告;以及响应于第一节点的可信度指示第一节点不可信,检查(check)第一节点。
在本公开的实施例中,网络中的多个第三节点被以树形结构组织。
在本公开的实施例中,第三节点被周期性地重新选择。
在本公开的实施例中,响应于第三节点的信用值的减少,重新选择第三节点。
在本公开的实施例中,该方法还包括:在针对多个节点中的节点的初始化期间,用不可压缩的噪声填充存储器中的空白区域。
实施例的第四方面可以提供一种装置,包括:至少一个处理器;以及包括计算机程序代码的至少一个存储器。该至少一个存储器和该计算机程序代码被配置为与该至少一个处理器一起使该装置执行至少以下操作:由在网络中与第一节点相邻的节点来证明网络中的第一节点;以及生成第一节点的证明结果。由在网络中与第一节点相邻的多个节点生成的第一节点的多个证明结果被组合以确定第一节点的可信度。
实施例的第五方面可以提供一种装置,包括:至少一个处理器;以及包括计算机程序代码的至少一个存储器。该至少一个存储器和该计算机程序代码被配置为与该至少一个处理器一起使该装置执行至少以下操作:从在网络中与第一节点相邻的多个第二节点获取第一节点的多个证明结果;以及基于该多个证明结果确定该第一节点的可信度。
实施例的第六方面可以提供一种装置,包括:至少一个处理器;以及包括计算机程序代码的至少一个存储器。该至少一个存储器和该计算机程序代码被配置为与该至少一个处理器一起使该装置至少执行以下操作:分别为网络中的多个节点设置信用值;将多个节点指派到多个簇中;以及选择簇中具有最高信用值的第三节点作为簇头。第三节点被配置为:从在簇中与第一节点相邻的多个第二节点中获取第一节点的多个证明结果;以及基于多个证明结果确定第一节点的可信度。
实施例的第七方面可以提供一种计算机程序产品,该计算机程序产品包括计算机可读介质,该计算机可读介质承载体现在其中用于与计算机一起使用的计算机程序代码。该计算机程序代码被配置为实现计算机过程,该计算机过程包括:通过在网络中与第一节点相邻的节点来证明网络中的第一节点;以及生成第一节点的证明结果。由在网络中与第一节点相邻的多个节点生成的第一节点的多个证明结果被组合以确定第一节点的可信度。
实施例的第八方面可以提供一种计算机程序产品,该计算机程序产品包括计算机可读介质,该计算机可读介质承载体现在其中用于与计算机一起使用的计算机程序代码。该计算机程序代码被配置为实现计算机过程,该计算机过程包括:从在网络中与第一节点相邻的多个第二节点获取第一节点的多个证明结果;以及基于该多个证明结果确定该第一节点的可信度。
实施例的第九方面可以提供一种计算机程序产品,该计算机程序产品包括计算机可读介质,该计算机可读介质承载体现在其中用于与计算机一起使用的计算机程序代码。该计算机程序代码被配置为实现计算机过程,该计算机过程包括:分别为网络中的多个节点设置信用值;将多个节点指派到多个簇中;以及选择簇中具有最高信用值的第三节点作为簇头。第三节点被配置为:从在簇中与第一节点相邻的多个第二节点获取第一节点的多个证明结果;以及基于多个证明结果确定第一节点的可信度。
根据本公开的实施例,改进了网络中的远程证明。
附图说明
通过在附图中对本公开的一些实施例的更详细描述,本公开的上述和其他目的、特征和优点将变得更加明显,其中相同的附图标记通常指代本公开的实施例中的相同组件。
图1是示出根据一些实施例的包括要被证明的节点的网络结构的示意图;
图2是示出根据一些实施例的用于在图1的网络中进行证明的第一示例性方法的示意图;
图3是示出图2中的S201和S202的示例性子过程的示意图;
图4是示出根据一些实施例的图2所示的方法的其他示例性步骤的示意图;
图5是示出根据一些实施例的用于在图1的网络中进行证明的第二示例性方法的示意图;
图6是示出根据一些实施例的图5所示的方法的其他示例性步骤的示意图;
图7是示出根据一些实施例的用于在图1的网络中进行证明的第三示例性方法的示意图;
图8是示出网络中的树形结构的示意图;
图9是示出根据一些实施例的图7所示的方法的其他示例性步骤的示意图;
图10是示出初始化期间第一节点的存储器布局的示意图;以及
图11是适用于实践本公开的示例性实施例的各种装置的简化框图。
具体实施方式
现在将参考附图更全面地描述本文中设想的一些实施例。然而,其他实施例包含在本文所公开的主题的范围内,所公开的主题不应解释为仅限于本文所阐述的实施例;相反,这些实施例仅作为示例提供,以将主题的范围传达给本领域技术人员。
通常,除非在使用该术语的上下文中清楚地给出了和/或隐含了不同的含义,否则本文中使用的所有术语将根据其在相关技术领域中的普通含义来解释。除非另外明确说明,否则对一/一个/该元件、装置、组件、设备、步骤等的所有引用应开放地解释为是指该元件、装置、组件、设备、步骤等的至少一个实例。除非明确地将一个步骤描述为在另一个步骤之后或之前和/或隐含地一个步骤必须在另一个步骤之后或之前,否则本文所公开的任何方法的步骤不必以所公开的确切顺序执行。在任何适当的情况下,本文公开的任何实施例的任何特征可以适用于任何其他实施例。同样,任何实施例的任何优点可以适用于任何其他实施例,反之亦然。通过下面的描述,所附实施例的其他目的、特征和优点将是明显的。
图1是示出根据一些实施例的包括要被证明的节点的网络结构的示意图。
在示例性网络中,网络所有者100负责网络的操作。网络所有者100管理节点,例如包括V10、V11、V12、V13和V14。网络所有者100可以是能够管理网络的任何计算设备,例如计算机服务器。网络中的节点可以是任何能够接入网络的电子设备,例如分布式工业控制器、智能家居设备或可穿戴设备。节点V10、V11、V12、V13和V14之间或节点与网络所有者100之间的通信链路104可以由网络所有者100建立和维护。通信链路104可以基于有线硬件连接或无线硬件连接,并且可以使用任何类型的通信协议。通信链路104示出了示例性逻辑链路,这不一定意味着通信链路104的两个节点被限制为彼此直接物理地传送信号。可以使用一个或多个中间节点(例如信号传送路由器)建立通信链路104。
为了整个网络的安全,需要定期对节点进行证明。例如,网络所有者100可以周期性地将指定的消息发送给网络中的每个节点,并且基于对该指定的消息的响应来确定每个节点的证明结果。这种证明方式也可以称为挑战-响应方式。这种方式很容易实现。
然而,这种方式在某些情况下可能是无效的。在网络中,节点与网络所有者100之间的通信链路通常是间接的。指定的消息必须经过多个中间节点,因此对指定的消息的响应时间将是不可预测的。网络所有者100的定时成本和计算成本增加。此外,在没有可预测的时间限制的情况下,攻击者可能有足够的时间伪造或修改受损节点的响应以假装正常。另外,由于网络中(特别是在IoT中)的节点通常受到能量容量的限制,因此对网络所有者100的对指定的消息的定期响应也是该节点的负担。
图2是示出根据一些实施例的用于在图1的网络中进行证明的第一示例性方法的示意图。
参见图2,本公开的实施例引入了一种进一步改进对网络中的第一节点的证明的方法。该方法包括:步骤S201,通过在网络中与第一节点相邻的节点,对网络中的第一节点进行证明;以及步骤S202,生成第一节点的证明结果。由在网络中与第一节点相邻的多个节点生成的第一节点的多个证明结果被组合以确定第一节点的可信度。
对于网络中的第一节点,通常有多个第二节点与第一节点相邻。作为示例,图1中的节点V11被示为要被证明的第一节点101,而节点V12、V13、V14被示为多个第二节点102以实现图2中所示的方法。“11、12、13、14”用作节点的ID号。在第一节点101和第二节点102之间存在证明交互105。
如图2所示,第二节点V12、V13、V14中的每个可以证明第一节点V11。以这种方式,一个提供者(第一节点101)可以由许多验证者(第二节点102)证明。因此,消除了用于其他节点的固定验证者,并且可以避免由于这种固定验证者的故障而导致崩溃的风险。这种多对一的证明方案将改善网络的安全性能,特别是对于包括许多分布式节点(例如物联网的群)的网络。
该方法还包括:步骤S203,获取第一节点的可信度;以及步骤S204,响应于第一节点的可信度指示第一节点不可信,从第一节点断开连接。
即,一旦节点V12、V13、V14发现节点V11是不可信的,它们都立即与节点V11断开连接。因此,可以限制由于受损节点V11造成的损坏。
特定证明交互105可以利用任何证明策略。例如,下面将说明一种改进的挑战-响应策略。
图3是示出图2中的S201和S202的示例性子过程的示意图。
参见图3,至少一个第二节点中的一个第二节点对第一节点的证明可以包括:步骤S301,向第一节点发送证明请求;以及步骤S302,从第一节点接收证明响应。然后,可以按照以下步骤基于证明响应来生成证明结果:步骤S303,确定第一节点的响应时间;步骤S304,响应于响应时间长于响应时间阈值,生成指示证明失败的证明结果;步骤S305,响应于该响应时间小于该响应时间阈值,验证该证明响应;步骤S306,响应于证明响应未被成功验证,生成指示证明失败的证明结果;以及步骤S307,响应于证明响应被成功验证,生成指示证明成功的证明结果。
以节点V11与节点V12之间的证明交互105为例,在步骤S301中,节点V12向节点V11发送第一消息ch,作为证明请求(也称为挑战)。第一消息ch可以包含特定标识符,例如可以防止重放攻击的随机数a。第一节点V11使用随机数a来产生响应r,然后将包括响应r的第二消息发送给节点V12。第二消息可以由节点V11加密,以防止不是来自节点V12的访问。
在步骤S302中,节点V12接收第二消息,并获取响应r。基于包括响应r的第二消息,将生成证明结果b。
在步骤S303中,节点V12确定第一节点的响应时间,该响应时间是从发送第一消息到接收第二消息的时间期间。
在步骤S304中,首先验证响应时间。如果响应时间长于响应时间阈值,则证明失败,因为节点V11可能受损以进行需要额外时间的额外计算或过程。严格的时间控制提高了网络的安全性。
节点V12记录发送第一消息ch的时间和接收第二消息的时间。计算从发送和接收的时间期间,并将其与预定的响应时间阈值Tt进行比较。如果该时间期间大于响应时间阈值Tt,则将第一证明结果b设置为指示失败的值,例如“-1”。可以根据特定类型的第一节点来确定响应时间阈值Tt。可以预先针对特定类型的第一节点在正常情况下进行多次证明测试,以收集针对该类型的第一节点的正常响应时间。然后,可以将正常响应时间本身或比正常响应时间稍大的值用作响应时间阈值Tt。
在步骤S305中,如果响应时间小于响应时间阈值,则将进一步验证响应r。将响应r与存储在第二节点中的预期响应re进行比较。作为通常的示例,预期响应re由节点V12基于随机数a和先前存储的信息(例如先前与节点V11交换的指定计算函数)来计算。响应r应对应于预期响应re。例如,它们之间可存在固定关系,或者它们可能完全相同。
在步骤S306中,如果响应r与预期响应re不对应,则将第一证明结果b设置为指示失败的值,例如“-1”。在步骤S307中,如果响应时间期间不大于响应时间阈值Tt,并且响应r对应于预期响应re,则将第一证明结果b设置为指示通过的值,例如“1”。应该理解,可以采用任何其他数字来指示失败或通过的结果,例如“1”指示通过,“0”指示失败。
在本公开的实施例中,利用相邻节点来证明提供者,这使得更容易估计证明时间并改善网络的安全性能。
图4是示出根据一些实施例的图2所示的方法的其他示例性步骤的示意图。
在本公开的实施例中,证明第一节点包括:步骤S401,获取第一节点的信用值;步骤S402,确定信用值是否小于信用阈值;以及步骤S403,响应于该信用值小于该信用阈值,对该第一节点进行证明。
第一节点的信用值是可调整的,用于指示第一节点是否需要证明。作为示例,为了调整第一节点的信用值,该方法还包括:步骤S404,检测第一节点的异常行为;以及步骤S405,报告第一节点的异常行为。异常行为的报告将导致第一节点的信用值降低。
节点V11可以具有被初始化为3的信用值w11。信用值可以被限制为从0到5。通过使用上限,响应于一个或一些异常行为,即使最高信用值也被迅速降低以触发证明。信用值阈值可被设置为1。在实施例中,可以根据实际情况调整信用值阈值。
表1示出了示例性的异常行为形式,其中可以根据实际情况调整每种异常行为的分数。
表1异常行为表
根据表1,当节点V12从节点V11检测到异常请求时,节点V12报告检测到异常请求。可以将信用值w11减去例如1以等于2。在几次之后,可能将信用值w11减到0,小于1。因此,由于对其异常行为的此检测,将开始对节点V11的证明。
因此,利用信用值和对异常行为的检测,一旦该节点表现出可疑行为,就可以快速实施对该节点的证明。
作为另一示例,可以周期性地证明第一节点。附加于信用值或替代信用值,证明的有效时间期间可被用来触发该证明。如果第一节点首次加入网络,则将向第一节点颁发证明时间证书cert(ta,te)。其中ta表示加入网络或最后一次证明的时间点,te表示证明的有效时间期间。当到达另一个时间点(ta+te)时,第一节点将由其相邻节点证明。即,在每个时间期间te,将至少对第一节点进行一次证明。因此,可以避免永不证明节点的情况。
图5是示出根据一些实施例的用于在图1的网络中进行证明的第二示例性方法的示意图。
本公开的实施例可以提供一种方法,包括:步骤S501,从在网络中与第一节点相邻的多个第二节点中获取第一节点的多个证明结果;以及步骤S502,基于多个证明结果,确定第一节点的可信度。
图1中的多个第二节点V12、V13、V14可以产生多个证明结果b12,11、b13,11、b14,11,其中b12,11意味着由V12进行的对V11的证明结果,b13,11意味着由V13进行的对V11的证明结果,b14,11意味着由V14进行的对V11的证明结果。这些证明结果b12,11、b13,11、b14,11可以进一步被聚合以生成可信度。
作为示例,在步骤S502中,可以将证明结果直接求和以获取可信度,因为它们被设置为如上所述的值。总和越大,第一节点越可信。
作为另一示例,在步骤S502中,基于多个证明结果确定第一节点的可信度度包括:基于多个证明结果和多个第二节点的信用值,计算第一节点的置信度级别;以及基于该置信度级别确定该第一节点的可信度。
在本公开的实施例中,基于置信度级别确定第一节点的可信度包括:将置信度级别与证明阈值进行比较;响应于该置信度级别小于证明阈值,确定第一节点的可信度以指示第一节点是不可信的;以及响应于置信度级别等于或大于证明阈值,确定第一节点的可信度以指示第一节点是可信的。
在这样的步骤中,首先,可以通过以下公式计算归一化的总和sj作为置信度级别:
其中,j是第一节点的ID号,i是第二节点的ID号。由于bi,j等于-1或1,sj是从-1到1的范围中的值。对于图1,归一化的总和sj被相应地计算:
其中,w13是节点V13的信用值,而w14是节点V14的信用值。
证明阈值g指示评价标准。证明阈值g越大,节点V11通过证明越难。例如,如果证明阈值g为1,则节点V11仅在每个bi,j等于1时才通过证明。作为示例,证明阈值g可以被设置为0.5,其从0到1的范围中选择。
提出了其他公式来实现计算:
其中e指示关于sj和g的比率,f是可信度。根据该公式,如果sj大于g,则e大于1,并且f=1。如果sj小于g,则e小于1,并且f=-1。当e=1或g=0时,不需要计算这些公式,并且确定第一节点101通过。根据这样的公式,可信度f的值与证明结果bi,j具有相同的含义,“1”指示通过,“-1”指示失败。当节点V11通过证明时,网络所有者100或节点V10将使信用值w11增加到大于信用值阈值,从而停止证明过程。当第一节点101未通过证明时,网络所有者100将使节点V11与其他节点断开连接。另外,网络所有者100可以进一步检查或报告给用户或工程师,以便隔离保护或恢复节点V11。当节点V11可信时,可以进一步使用置信度级别来设置新的信用值,以结束证明过程。例如,置信度级别可以乘以信用值的上限。
该聚合过程可以由任何节点来实现,例如由进一步被授权的第二节点V12、V13、V14中的一个来实现,或者就由网络所有者100来实现。在图1中,作为示例,节点V10由网络所有者100选择作为第三节点103,以实现聚合过程。第三节点103也可以是网络中的簇头。节点V10的布置可以提高证明的速度,并减轻网络所有者和网络传输的负担。
在第三节点处实现的方法还包括:步骤S503,向多个第二节点发送第一节点的可信度;以及步骤S504,通过网络中的树形结构报告第一节点的可信度。
在节点V10完成聚合过程之后,可信度被从节点V10发送给节点V12、V13、V14,以及网络所有者100。然后,这些节点和网络所有者100根据该可信度进行操作。例如,如上所述,如果该可信度指示节点V11不可信,则节点V12、V13、V14将与节点V11断开连接。如果该可信度指示节点V11是可信的,则这些节点和网络所有者将正常与节点V11进行操作,并且在步骤S505中,节点V10将第一节点的信用值设置为预定值。预定值可以刚好大于信用值阈值,以关闭该证明过程。
此外,节点V10可以通过网络中的树形结构将该可信度发送给网络所有者100,以提高传输效率。
证明结果bi,j和可信度f可被进一步用于调整第二节点102(即节点V12、V13、V14)的信用值。
图6是示出根据一些实施例的图5所示的方法的其他示例性步骤的示意图。
该方法还包括:S601,比较第一节点的可信度和多个证明结果;S602,响应于多个证明结果中的一个证明结果与第一节点的可信度相反,降低多个第二节点中与这一个证明结果相对应的第二节点的信用值;以及S603,响应于多个证明结果中的一个证明结果与第一节点的可信度相对应,增加多个第二节点中与该一个证明结果相对应的第二节点的信用值。
如上述示例,第一节点的可信度和证明结果均被表示为数字“-1”或“1”。当它们相同时,它们彼此对应;当它们不同时,它们彼此相反。例如,对于节点V12,如果第一证明b12,11(-1)与可信度f(1)不同,则减小节点V12的信用值w12。否则,如果它们相同,则增加节点V12的信用值w12。因此,可以在每次证明之后动态地调整第二节点102的信用值(即,用于证明的权重)。
为了通过异常行为检测来调整信用值,该方法还包括:从第二节点接收第一节点的异常行为的报告;降低第一节点的信用值;以及降低第二节点的信用值。
例如,当节点V12报告检测到节点V11的异常行为时,节点V12的信用值w12也可以被减小,以避免恶意报告。第二节点的信用值的减少可以与第一节点的信用值的减少成比例,以便避免对于报告者的过于严格的规则。比例比率可以是0.5,因此在该示例中,可以将节点V12的信用值w12减去0.5。
如果信用值w12也小于信用值阈值,则也可以在对节点V11的证明之后实现对节点V12的证明。即,网络中的一个节点的角色不受限制。当该节点本身需要被证明时,该节点可以是提供者(第一节点),而当相邻节点需要被证明时,该节点可以是验证者(第二节点)。
图7是示出根据一些实施例的用于在图1的网络中进行证明的第三示例性方法的示意图。
该方法包括:步骤S701,分别为网络中的多个节点设置信用值;步骤S702,将多个节点指派到多个簇中;以及步骤S703,选择簇中具有最高信用值的第三节点作为簇头。第三节点被配置为:从在簇中与第一节点相邻的多个第二节点中获取第一节点的多个证明结果;以及基于多个证明结果确定第一节点的可信度。
在步骤S701中,当网络被创建和初始化时,网络所有者可以设置每个节点的信用值。当新节点被***网络时,将为该新节点创建新的信用值并将其广播到相关节点,例如相邻节点。每个节点可以记录信用值表以存储其相关节点的信用值。当节点收到新的信用值广播时,如果它与相关节点有关,则新的信用值将被添加到信用值表中或在其中刷新,否则该新的信用值将被丢弃。
在步骤S703中,基于信用值选择第三节点103,即簇头。例如,选择网络中的簇中具有最高信用值的第三节点,以基于多个证明结果来获取可信度。即,在实施例中,选择节点V10,因为其信用值w10高于节点V11、V12、V13、V14。
以信用值为标准,可以周期性地重新选择第三节点103。此外,如果当前第三节点103的信用值降低,则网络所有者100可以立即重新选择新的第三节点103。它们的安全性能得到进一步提高。
簇头的数量由群的大小确定。簇头的选择应考虑到彼此之间的距离,以便簇头可以在群中尽可能均匀地分布。其余节点连接到它们最近的簇头,以形成簇。
该方法还包括:步骤S704,接收第一节点的可信度的报告;以及步骤S705,响应于第一节点的可信度指示第一节点不可信,检查第一节点。在节点V10向网络所有者100报告节点V11的可信度指示第一节点不可信之后,网络所有者100可以根据检查结果来移除或重新连接节点V11。或者,使用严格的安全策略,网络所有者100可以直接从网络移除节点V11,而无需检查。
图8是示出网络中的树形结构的示意图。如图8所示,可以根据接近原理按照树形结构将几个簇头(第三节点103,即节点V10、V20、V30、V40、V50、V60、V70、V80…)和网络所有者组织起来。其他节点(例如V11、V12、V13和V14)在连接时将其当前信用值和标识符发送给簇头(例如V10)。网络所有者100保存所有节点的信用值。
如图8所示,可信度通过网络中的树形结构从第三节点103发送给网络所有者100。网络中的树形结构可以更轻松地支持并行计算,从而提高信息传送的效率。此外,由于将消除长距离的单跳传输,因此利用通过簇头的多跳消息传输并将单跳传输距离控制在一定范围内可以极大地降低能量消耗。具体而言,如果所有节点都集中在某个区域,则可能只有一个簇,而无需进行多跳数据传输。
图9是示出根据一些实施例的图7所示的方法的其他示例性步骤的示意图。
在新添加的节点的初始化期间,可以完成对证明的适当准备,从而提高效率。仍然以节点V11为新添加的节点作为示例,在步骤S901中,网络所有者100初始化节点V11,以生成V11的基本配置,包括私有密钥sk11、公共密钥pk11、标识证书cert(pk11)、码证书cert(h11)、具有初始数的信用值w11、最大证明时间t11和唯一设备标识符d11。当证明节点V11时,最大证明时间t11可用作节点V11的响应时间阈值Tt。
初始化过程可以被示出为以下公式:
initial(Vi:hi)→(ski,pki,cert(pki),cert(hi),wi,ti,di),
其中,i指示节点的ID号,例如11,hi意味着Vi的哈希码。
在步骤S702中,节点V11被链接到其他节点,例如节点V12。它们交换其码证书、识别证书、设备标识符、最大证明时间和当前信用值。然后,它们将根据其私有密钥和码证书生成对称密钥ki。初始化过程可以用以下公式说明:
link[Vi:ski;Vj:skj;*:cert(pki),cert(pkj),cert(hi),cert(hj),ti,tj,di,dj,wi,wj]
→[Vi:ki,;Vj:ki,j];
其中,i意味着节点的一个ID号,例如11,并且j意味着节点的另一个ID号,例如12。节点V11将能够向节点V12发送使用对称密钥k11,12加密的消息,并且该加密消息无法由节点V12以外的其他节点解密。正常通信和证明的安全性能将得到进一步提高。对称密钥的利用将提高效率。
在节点V11的初始化期间,也可以使用其他步骤来提高安全性。例如,在第一节点的初始化期间,第一节点的存储器中的空白区域可以填充不可压缩的噪声。
图10是示出初始化期间第一节点的存储器布局的示意图。参见图10,在包括原始代码且没有噪声的原始存储器布局(a)中,攻击者可以轻松地使用空白区域来存储原始代码,而同时不改变整个程序的哈希码。攻击后的存储器布局(b)显示恶意代码、原始代码和空白区域。但是,如果空白区域填充了不可压缩的噪声,如带有噪声的存储器布局(c)中所示,攻击者只能删除部分噪声空间来存储恶意代码,如攻击后带有噪声的存储器布局(d)中所示。在这种情况下,它们也改变了证明程序可检测到的哈希码。
图11是适用于实践本公开的示例性实施例的各种装置的简化框图。在图11中,网络所有者100可以包括数据处理器(DP)100A、存储程序(PROG)100C的存储器(MEM)100B、以及用于与网络中的节点进行通信的合适的收发器100D。第一节点101可以包括数据处理器(DP)101A、存储程序(PROG)101C的存储器(MEM)101B、以及用于与诸如第二节点102之类的设备进行通信的合适的收发器101D。类似地,第二节点102可以包括数据处理器(DP)102A、存储程序(PROG)102C的存储器(MEM)102B、以及用于与诸如第一节点101之类的设备进行通信的合适的收发器102D。类似地,第三节点103可以包括数据处理器(DP)103A、存储程序(PROG)103C的存储器(MEM)103B、以及用于与诸如第二节点102或网络所有者100之类的装置进行通信的合适的收发器103D。
例如,收发器101D、102D、103D、100D中的至少一个可以是用于发送和/或接收信号和消息的集成组件。替代地,收发器101D、102D、103D、100D中的至少一个可以包括分别支持发送和接收信号/消息的单独的组件。各个DP 101A、102A、103A和100A可以用于处理这些信号和消息。
替代地或附加地,第一节点101、第二节点102、第三节点103和网络所有者100可包括用于实现上述步骤和方法的功能的各种设备(means)和/或组件。例如,第二节点102可以包括:用于对网络中的第一节点101进行证明的证明设备;以及用于生成第一节点的证明结果的生成设备。第三节点103可以包括:从在网络中与第一节点101相邻的多个第二节点102获取第一节点的多个证明结果的获取设备;以及基于该多个证明结果确定第一节点的可信度的确定设备。网络所有者100可以包括:用于分别为网络中的多个节点(诸如第一节点101、第二节点102和第三节点103)设置信用值的设置设备;用于将多个节点(例如,第一节点101、第二节点102和第三节点103)指派到多个簇的指派设备;以及用于选择簇中具有最高信用值的第三节点103作为簇头的选择设备。
假定PROG 101C、102C、103C、100C中的至少一个包括程序指令,该程序指令在由相关联的DP执行时使装置能够根据示例性实施例进行操作,如上所述。即,本公开的示例性实施例可以至少部分地由可由第一节点101的DP 101A、由第二节点102的DP 102A、由第三节点103的DP103A、以及由网络所有者100的DP 100A、或者由硬件、或者由软件和硬件的组合可执行的计算机软件来实现。
MEM 101B、102B、103B和100B可以是适合于本地技术环境的任何类型,并且可以使用任何适当的数据存储技术来实现,例如基于半导体的存储器设备、闪存、磁存储设备和***、光学存储设备和***、固定存储器和可移动存储器。DP 101A、102A、103A和100A可以是适合本地技术环境的任何类型,并且可以包括通用计算机、专用计算机、微处理器、数字信号处理器(DSP)和基于多核处理器架构的处理器中的一个或多个,作为非限制性示例。
通常,各种示例性实施例可以以硬件或专用电路、软件、逻辑或其任何组合来实现。例如,一些方面可以以硬件来实现,而其他方面可以以可以由控制器、微处理器或其他计算设备执行的固件或软件来实现,但是本公开不限于此。尽管本公开的示例性实施例的各个方面可以被图示和描述为框图、流程图或使用一些其他图形表示,但是可以理解的是,本文所述的这些框、装置、***、技术或方法可以作为非限制性示例以以下方式实现:硬件,软件,固件,专用电路或逻辑,通用硬件或控制器或其他计算设备或其某种组合。
将意识到,本公开的示例性实施例的至少一些方面可以体现在由一个或多个计算机或其他设备执行的计算机可执行指令中(例如在一个或多个程序模块中)。通常,程序模块包括例程、程序、对象、组件、数据结构等,它们在由计算机或其他设备中的处理器执行时执行特定任务或实现特定抽象数据类型。该计算机可执行指令可以存储在诸如硬盘、光盘、可移动存储介质、固态存储器、随机存取存储器(RAM)等的计算机可读介质上。如本领域技术人员将意识到的那样,在各种实施例中,可以根据需要组合或分布程序模块的功能。另外,功能可以全部或部分地体现在固件或硬件等同体中,例如集成电路、现场可编程门阵列(FPGA)等。
尽管已经公开了本公开的特定实施例,但是本领域普通技术人员将理解,可以在不脱离本公开的精神和范围的情况下对特定实施例进行改变。因此,本公开的范围不限于特定实施例,并且意图是所附权利要求覆盖本公开范围内的任何和所有这样的应用、修改和实施例。
Claims (57)
1.一种由网络中的第二节点执行的方法,包括:
由在网络中与第一节点相邻的第二节点来证明所述网络中的所述第一节点;以及
生成所述第一节点的证明结果;
其中,由在所述网络中与所述第一节点相邻的多个第二节点生成的所述第一节点的多个证明结果被第三节点组合以确定所述第一节点的可信度;
其中,所述第三节点被配置为:
比较所述第一节点的所述可信度和所述多个证明结果;
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相反,降低所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值;以及
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相对应,增加所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值。
2.根据权利要求1所述的方法,还包括:
获取所述第一节点的所述可信度;以及
响应于所述第一节点的所述可信度指示所述第一节点不可信,从所述第一节点断开连接。
3.根据权利要求1或2所述的方法,其中,证明所述第一节点包括:
获取所述第一节点的信用值;
确定所述信用值是否小于信用阈值;以及
响应于所述信用值小于所述信用阈值,证明所述第一节点。
4.根据权利要求1或2所述的方法,其中,证明所述第一节点包括:
周期性地证明所述第一节点。
5.根据权利要求1或2所述的方法,其中,证明所述第一节点包括:
向所述第一节点发送证明请求;以及
从所述第一节点接收证明响应;
其中,基于所述证明响应生成所述证明结果。
6.根据权利要求5所述的方法,其中,基于所述证明响应来生成所述证明结果包括:
确定所述第一节点的响应时间;
响应于所述响应时间长于响应时间阈值,生成指示所述证明失败的所述证明结果;
响应于所述响应时间小于所述响应时间阈值,验证所述证明响应;
响应于所述证明响应未被成功验证,生成指示所述证明失败的所述证明结果;以及
响应于所述证明响应被成功验证,生成指示所述证明成功的所述证明结果。
7.根据权利要求1或2所述的方法,还包括:
检测所述第一节点的异常行为;以及
报告所述第一节点的所述异常行为。
8.一种由网络中的第三节点执行的方法,包括:
从在网络中与第一节点相邻的多个第二节点获取所述第一节点的多个证明结果;以及
基于所述多个证明结果确定所述第一节点的可信度;
所述方法还包括:
比较所述第一节点的所述可信度和所述多个证明结果;
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相反,降低所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值;以及
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相对应,增加所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值。
9.根据权利要求8所述的方法,还包括:
将所述第一节点的所述可信度发送给所述多个第二节点;以及
通过所述网络中的树形结构报告所述第一节点的所述可信度。
10.根据权利要求8或9所述的方法,还包括:
响应于所述第一节点的所述可信度指示所述第一节点可信,将所述第一节点的信用值设置为预定值。
11.根据权利要求8或9所述的方法,其中,基于所述多个证明结果来确定所述第一节点的所述可信度包括:
基于所述多个证明结果和所述多个第二节点的信用值计算所述第一节点的置信度级别;以及
基于所述置信度级别确定所述第一节点的所述可信度。
12.根据权利要求11所述的方法,其中,基于所述置信度级别确定所述第一节点的所述可信度包括:
将所述置信度级别与证明阈值进行比较;
响应于所述置信度级别小于所述证明阈值,确定所述第一节点的所述可信度以指示所述第一节点是不可信的;以及
响应于所述置信度级别等于或大于所述证明阈值,确定所述第一节点的所述可信度以指示所述第一节点是可信的。
13.根据权利要求8所述的方法,还包括:
从第二节点接收所述第一节点的异常行为的报告;
降低所述第一节点的信用值;以及
降低所述第二节点的信用值。
14.一种由管理网络的设备执行的方法,包括:
分别为网络中的多个节点设置信用值;
将所述多个节点指派到多个簇中;以及
选择簇中具有最高信用值的第三节点作为簇头;
其中,所述第三节点配置为:
从在所述簇中与第一节点相邻的多个第二节点获取所述第一节点的多个证明结果;以及
基于所述多个证明结果确定所述第一节点的可信度;
其中,所述第三节点还被配置为:
比较所述第一节点的所述可信度和所述多个证明结果;
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相反,降低所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值;以及
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相对应,增加所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值。
15.根据权利要求14所述的方法,还包括:
接收所述第一节点的所述可信度的报告;以及
响应于所述第一节点的所述可信度指示所述第一节点不可信,检查所述第一节点。
16.根据权利要求14或15所述的方法,其中,所述网络中的多个第三节点被以树形结构组织。
17.根据权利要求14或15所述的方法,其中,所述第三节点被周期性地重新选择。
18.根据权利要求14或15所述的方法,其中,响应于所述第三节点的信用值的减少,重新选择所述第三节点。
19.根据权利要求14或15所述的方法,还包括:
在针对所述多个节点中的节点的初始化期间,用不可压缩的噪声填充存储器中的空白区域。
20.一种装置,包括:
至少一个处理器;以及
包括计算机程序代码的至少一个存储器,
所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述装置执行至少以下操作:
由在网络中与第一节点相邻的第二节点来证明所述网络中的所述第一节点;以及
生成所述第一节点的证明结果;
其中,由在所述网络中与所述第一节点相邻的多个第二节点生成的所述第一节点的多个证明结果被第三节点组合以确定所述第一节点的可信度;
其中,所述第三节点被配置为:
比较所述第一节点的所述可信度和所述多个证明结果;
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相反,降低所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值;以及
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相对应,增加所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值。
21.根据权利要求20所述的装置,其中,进一步使所述装置:
获取所述第一节点的所述可信度;以及
响应于所述第一节点的所述可信度指示所述第一节点不可信,从所述第一节点断开连接。
22.根据权利要求20或21所述的装置,其中,证明所述第一节点包括:
获取所述第一节点的信用值;
确定所述信用值是否小于信用阈值;以及
响应于所述信用值小于所述信用阈值,证明所述第一节点。
23.根据权利要求20或21所述的装置,其中,证明所述第一节点包括:
周期性地证明所述第一节点。
24.根据权利要求20或21所述的装置,其中,证明所述第一节点包括:
向所述第一节点发送证明请求;以及
从所述第一节点接收证明响应;
其中,基于所述证明响应生成所述证明结果。
25.根据权利要求24所述的装置,其中,基于所述证明响应来生成所述证明结果包括:
确定所述第一节点的响应时间;
响应于所述响应时间长于响应时间阈值,生成指示所述证明失败的所述证明结果;
响应于所述响应时间小于所述响应时间阈值,验证所述证明响应;
响应于所述证明响应未被成功验证,生成指示所述证明失败的所述证明结果;以及
响应于所述证明响应被成功验证,生成指示所述证明成功的所述证明结果。
26.根据权利要求20或21所述的装置,其中,进一步使所述装置:
检测所述第一节点的异常行为;以及
报告所述第一节点的所述异常行为。
27.一种装置,包括:
至少一个处理器;以及
包括计算机程序代码的至少一个存储器,
所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述装置执行至少以下操作:
从在网络中与第一节点相邻的多个第二节点获取所述第一节点的多个证明结果;以及
基于所述多个证明结果确定所述第一节点的可信度;
其中,所述装置还被配置为:
比较所述第一节点的所述可信度和所述多个证明结果;
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相反,降低所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值;以及
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相对应,增加所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值。
28.根据权利要求27所述的装置,其中,进一步使所述装置:
将所述第一节点的所述可信度发送给所述多个第二节点;以及
通过所述网络中的树形结构报告所述第一节点的所述可信度。
29.根据权利要求27或28所述的装置,其中,还使所述装置:
响应于所述第一节点的所述可信度指示所述第一节点可信,将所述第一节点的信用值设置为预定值。
30.根据权利要求27或28所述的装置,其中,基于所述多个证明结果来确定所述第一节点的可信度包括:
基于所述多个证明结果和所述多个第二节点的信用值计算所述第一节点的置信度级别;以及
基于所述置信度级别确定所述第一节点的所述可信度。
31.根据权利要求30所述的装置,其中,基于所述置信度级别确定所述第一节点的所述可信度包括:
将所述置信度级别与证明阈值进行比较;
响应于所述置信度级别小于所述证明阈值,确定所述第一节点的所述可信度以指示所述第一节点是不可信的;以及
响应于所述置信度级别等于或大于所述证明阈值,确定所述第一节点的所述可信度以指示所述第一节点是可信的。
32.根据权利要求27所述的装置,其中,进一步使所述装置:
从第二节点接收所述第一节点的异常行为的报告;
降低所述第一节点的信用值;以及
降低所述第二节点的信用值。
33.一种装置,包括:
至少一个处理器;以及
包括计算机程序代码的至少一个存储器,
所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述装置至少执行以下操作:
分别为网络中的多个节点设置信用值;
将所述多个节点指派到多个簇中;以及
选择簇中具有最高信用值的第三节点作为簇头;
其中,所述第三节点被配置为:
从在簇中与第一节点相邻的多个第二节点中获取所述第一节点的多个证明结果;以及
基于所述多个证明结果确定所述第一节点的可信度;
其中,所述第三节点还被配置为:
比较所述第一节点的所述可信度和所述多个证明结果;
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相反,降低所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值;以及
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相对应,增加所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值。
34.根据权利要求33所述的装置,其中,进一步使所述装置:
接收所述第一节点的所述可信度的报告;以及
响应于所述第一节点的所述可信度指示所述第一节点不可信,检查所述第一节点。
35.根据权利要求33或34所述的装置,其中,所述网络中的多个第三节点被以树形结构组织。
36.根据权利要求33或34所述的装置,其中,所述第三节点被周期性地重新选择。
37.根据权利要求33或34所述的装置,其中,响应于所述第三节点的信用值的减少,重新选择所述第三节点。
38.根据权利要求33或34所述的装置,其中,进一步使所述装置:
在针对所述多个节点中的节点的初始化期间,用不可压缩的噪声填充存储器中的空白区域。
39.一种计算机可读介质,所述计算机可读介质承载体现在其中用于与计算机一起使用的计算机程序代码,所述计算机程序代码被配置为实现计算机过程,所述计算机过程包括:
通过在网络中与第一节点相邻的第二节点来证明所述网络中的所述第一节点;以及
生成所述第一节点的证明结果;
其中,由在所述网络中与所述第一节点相邻的多个第二节点生成的所述第一节点的多个证明结果被第三节点组合以确定所述第一节点的可信度;
其中,所述第三节点被配置为:
比较所述第一节点的所述可信度和所述多个证明结果;
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相反,降低所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值;以及
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相对应,增加所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值。
40.根据权利要求39所述的计算机可读介质,其中,所述计算机过程还包括:
获取所述第一节点的所述可信度;以及
响应于所述第一节点的所述可信度指示所述第一节点不可信,从所述第一节点断开连接。
41.根据权利要求39或40所述的计算机可读介质,其中,证明所述第一节点包括:
获取所述第一节点的信用值;
确定所述信用值是否小于信用阈值;以及
响应于所述信用值小于所述信用阈值,证明所述第一节点。
42.根据权利要求39或40所述的计算机可读介质,其中,证明所述第一节点包括:
周期性地证明所述第一节点。
43.根据权利要求39或40所述的计算机可读介质,其中,证明所述第一节点包括:
向所述第一节点发送证明请求;以及
从所述第一节点接收证明响应;
其中,基于所述证明响应生成所述证明结果。
44.根据权利要求43所述的计算机可读介质,其中,基于所述证明响应来生成所述证明结果包括:
确定所述第一节点的响应时间;
响应于所述响应时间长于响应时间阈值,生成指示所述证明失败的所述证明结果;
响应于所述响应时间小于所述响应时间阈值,验证所述证明响应;
响应于所述证明响应未被成功验证,生成指示所述证明失败的所述证明结果;以及
响应于所述证明响应被成功验证,生成指示所述证明成功的所述证明结果。
45.根据权利要求39或40所述的计算机可读介质,其中,所述计算机过程还包括:
检测所述第一节点的异常行为;以及
报告所述第一节点的所述异常行为。
46.一种计算机可读介质,所述计算机可读介质承载体现在其中用于与计算机一起使用的计算机程序代码,所述计算机程序代码被配置为实现计算机过程,所述计算机过程包括:
从在网络中与第一节点相邻的多个第二节点获取所述第一节点的多个证明结果;以及
基于所述多个证明结果确定所述第一节点的可信度;
所述计算机过程还包括:
比较所述第一节点的所述可信度和所述多个证明结果;
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相反,降低所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值;以及
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相对应,增加所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值。
47.根据权利要求46所述的计算机可读介质,其中,所述计算机过程还包括:
将所述第一节点的所述可信度发送给所述多个第二节点;以及
通过所述网络中的树形结构报告所述第一节点的所述可信度。
48.根据权利要求46或47所述的计算机可读介质,其中,所述计算机过程还包括:
响应于所述第一节点的所述可信度指示所述第一节点可信,将所述第一节点的信用值设置为预定值。
49.根据权利要求46或47所述的计算机可读介质,其中,基于所述多个证明结果来确定所述第一节点的可信度包括:
基于所述多个证明结果和所述多个第二节点的信用值计算所述第一节点的置信度级别;以及
基于所述置信度级别确定所述第一节点的所述可信度。
50.根据权利要求49所述的计算机可读介质,其中,基于所述置信度级别确定所述第一节点的所述可信度包括:
将所述置信度级别与证明阈值进行比较;
响应于所述置信度级别小于所述证明阈值,确定所述第一节点的所述可信度以指示所述第一节点是不可信的;以及
响应于所述置信度级别等于或大于所述证明阈值,确定所述第一节点的所述可信度以指示所述第一节点是可信的。
51.根据权利要求46所述的计算机可读介质,其中,所述计算机过程还包括:
从第二节点接收所述第一节点的异常行为的报告;
降低所述第一节点的信用值;以及
降低所述第二节点的信用值。
52.一种计算机可读介质,所述计算机可读介质承载体现在其中用于与计算机一起使用的计算机程序代码,所述计算机程序代码被配置为实现计算机过程,所述计算机过程包括:
分别为网络中的多个节点设置信用值;
将多个节点指派到多个簇中;以及
选择簇中具有最高信用值的第三节点作为簇头;
其中,第三节点被配置为:
从在簇中与第一节点相邻的多个第二节点中获取第一节点的多个证明结果;以及
基于多个证明结果确定第一节点的可信度;
其中,所述第三节点还被配置为:
比较所述第一节点的所述可信度和所述多个证明结果;
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相反,降低所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值;以及
响应于所述多个证明结果中的一个证明结果与所述第一节点的所述可信度相对应,增加所述多个第二节点中与所述一个证明结果相对应的所述第二节点的信用值。
53.根据权利要求52所述的计算机可读介质,其中,所述计算机过程还包括:
接收所述第一节点的所述可信度的报告;以及
响应于所述第一节点的所述可信度指示所述第一节点不可信,检查所述第一节点。
54.根据权利要求52或53所述的计算机可读介质,其中,所述网络中的多个第三节点被以树形结构组织。
55.根据权利要求52或53所述的计算机可读介质,其中,所述第三节点被周期性地重新选择。
56.根据权利要求52或53所述的计算机可读介质,其中,响应于所述第三节点的信用值的减少,重新选择所述第三节点。
57.根据权利要求52或53所述的计算机可读介质,其中,所述计算机过程还包括:
在针对所述多个节点中的节点的初始化期间,用不可压缩的噪声填充存储器中的空白区域。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/079816 WO2019178766A1 (en) | 2018-03-21 | 2018-03-21 | Remote attestation in network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111869162A CN111869162A (zh) | 2020-10-30 |
CN111869162B true CN111869162B (zh) | 2023-06-30 |
Family
ID=67988030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880091397.6A Active CN111869162B (zh) | 2018-03-21 | 2018-03-21 | 网络中的远程证明 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210037042A1 (zh) |
EP (1) | EP3769470A4 (zh) |
CN (1) | CN111869162B (zh) |
WO (1) | WO2019178766A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111869162B (zh) * | 2018-03-21 | 2023-06-30 | 诺基亚技术有限公司 | 网络中的远程证明 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103095589A (zh) * | 2013-01-17 | 2013-05-08 | 电子科技大学 | 基于IPv6的树形拓扑结构的无线传感器网络中传感器节点信任值管理方法 |
CN103957525A (zh) * | 2014-05-12 | 2014-07-30 | 江苏大学 | 车联网中基于分簇信任评估的恶意节点检测方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8898737B2 (en) * | 2012-11-26 | 2014-11-25 | King Fahd University Of Petroleum And Minerals | Authentication method for stateless address allocation in IPv6 networks |
CN104780535A (zh) * | 2014-01-14 | 2015-07-15 | 中兴通讯股份有限公司 | 一种多终端协同过程中安全中心节点的认证方法及装置 |
US10778720B2 (en) * | 2015-06-12 | 2020-09-15 | Teleputers, Llc | System and method for security health monitoring and attestation of virtual machines in cloud computing systems |
US10122695B2 (en) | 2015-10-28 | 2018-11-06 | Cisco Technology, Inc. | Remote crowd attestation in a network |
US9876825B2 (en) * | 2016-02-04 | 2018-01-23 | Amadeus S.A.S. | Monitoring user authenticity |
KR102522778B1 (ko) | 2016-04-27 | 2023-04-19 | 한국전자통신연구원 | 분산 대리자 기반 무결성 검증을 수행하는 개별 기기, 그를 포함하는 개별 기기 무결성 검증 시스템 및 그 방법 |
CN111869162B (zh) * | 2018-03-21 | 2023-06-30 | 诺基亚技术有限公司 | 网络中的远程证明 |
WO2020052751A1 (en) * | 2018-09-12 | 2020-03-19 | Huawei Technologies Co., Ltd. | Device and method for attesting distributed services |
US11240025B2 (en) * | 2018-11-09 | 2022-02-01 | Ares Technologies, Inc. | Systems and methods for distributed key storage |
US11563764B1 (en) * | 2020-08-24 | 2023-01-24 | Tanium Inc. | Risk scoring based on compliance verification test results in a local network |
-
2018
- 2018-03-21 CN CN201880091397.6A patent/CN111869162B/zh active Active
- 2018-03-21 US US16/981,875 patent/US20210037042A1/en active Pending
- 2018-03-21 WO PCT/CN2018/079816 patent/WO2019178766A1/en unknown
- 2018-03-21 EP EP18910342.7A patent/EP3769470A4/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103095589A (zh) * | 2013-01-17 | 2013-05-08 | 电子科技大学 | 基于IPv6的树形拓扑结构的无线传感器网络中传感器节点信任值管理方法 |
CN103957525A (zh) * | 2014-05-12 | 2014-07-30 | 江苏大学 | 车联网中基于分簇信任评估的恶意节点检测方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3769470A4 (en) | 2022-01-26 |
WO2019178766A1 (en) | 2019-09-26 |
CN111869162A (zh) | 2020-10-30 |
US20210037042A1 (en) | 2021-02-04 |
EP3769470A1 (en) | 2021-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111066287B (zh) | 使用可信执行环境检索区块链网络的公开数据 | |
CN111066286B (zh) | 使用高可用性的可信执行环境检索区块链网络的公共数据 | |
Ambrosin et al. | SANA: Secure and scalable aggregate network attestation | |
Ibrahim et al. | Darpa: Device attestation resilient to physical attacks | |
EP3881517A1 (en) | Collaborative risk aware authentication | |
US11425133B2 (en) | System and method for network device security and trust score determinations | |
US10798115B2 (en) | Apparatus and method for detecting malicious device based on swarm intelligence | |
Udgata et al. | Wireless sensor network security model using zero knowledge protocol | |
US20190044730A1 (en) | Apparatus and method for generating and operating dynamic can id based on hash-based message authentication code | |
US11362836B2 (en) | Consensus protocol for permissioned ledgers | |
US9237010B2 (en) | Secure transmission of a message | |
US20210111900A1 (en) | Verification information attaching device, verification device, information management system, method, and program | |
CN112865959A (zh) | 分布式节点设备的共识方法、节点设备及分布式网络 | |
CN1758597B (zh) | 验证组元的方法 | |
Feng et al. | Supporting secure spectrum sensing data transmission against SSDH attack in cognitive radio ad hoc networks | |
CN113259135A (zh) | 用于检测数据防篡改的轻量级区块链通信认证装置及其方法 | |
Mansouri et al. | FADIA: fairness-driven collaborative remote attestation | |
Makhdoom et al. | PLEDGE: An IoT-oriented proof-of-honesty based blockchain consensus protocol | |
WO2015140942A1 (ja) | 情報処理システム、サーバ装置、情報処理方法およびプログラム | |
CN111869162B (zh) | 网络中的远程证明 | |
Xuemin et al. | Self-Organizing Key Security Management Algorithm in Socially Aware Networking | |
Lalouani et al. | Mitigating voltage fingerprint spoofing attacks on the controller area network bus | |
CN112104701B (zh) | 一种跨链通信的方法、装置、网络节点和存储介质 | |
JP2024526752A (ja) | マイクロコントローラの測定された再起動 | |
Jain et al. | Detection techniques of blackhole attack in mobile adhoc network: A survey |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |