CN113632435B - 抵抗dos攻击的计算谜题 - Google Patents

抵抗dos攻击的计算谜题 Download PDF

Info

Publication number
CN113632435B
CN113632435B CN202080024045.6A CN202080024045A CN113632435B CN 113632435 B CN113632435 B CN 113632435B CN 202080024045 A CN202080024045 A CN 202080024045A CN 113632435 B CN113632435 B CN 113632435B
Authority
CN
China
Prior art keywords
puzzle
node
network
solution
received
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
Application number
CN202080024045.6A
Other languages
English (en)
Other versions
CN113632435A (zh
Inventor
R·罗莱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of CN113632435A publication Critical patent/CN113632435A/zh
Application granted granted Critical
Publication of CN113632435B publication Critical patent/CN113632435B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/141Denial of service attacks against endpoints in a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/144Detection or countermeasures against botnets

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

一种在计算机网络中发送数据的方法,所述方法包括在所述网络的第一节点处:从网络的与第一节点不同的谜题服务器节点接收计算谜题;确定谜题的解,以将消息发送到网络的与所述谜题服务器节点不同的第二节点;以及将数据发送到所述第二节点,其中,所发送的数据包括消息和所确定的谜题的解。

Description

抵抗DOS攻击的计算谜题
技术领域
本公开涉及通信网络中的数据通信领域,特别是涉及诸如工业总线网络(例如,OPC-UA网络)的工业网络中的数据通信领域。
背景技术
诸如工业现场总线网络的计算机网络中的数据通信机制通常允许根据数据通信协议在网络的两个节点之间发送和/或接收数据,所述数据包括时间关键分布式控制数据,这些数据通信协议通常是专有的并且专门为目标用例配置的。
近年来,传统上是封闭网络的工业网络已经发展到包括连接到公共网络(例如,互联网)的节点(例如,管理节点或网络间通信节点)。例如,被实现为连接到互联网的、运行PC操作系统的个人计算机平台的操作和管理(O&M)节点可以连接到先前封闭的网络以管理网络的操作。作为另一个示例,这种连接到互联网的、运行PC操作系统的个人计算机平台可以用于控制在地理上不同的站点上设置的封闭工业网络。
因此,包括连接到非安全计算机的节点的工业网络可能通过其连接到公共网络的节点成为计算机攻击的目标(例如,拒绝服务(DoS)攻击)。DoS或耗尽攻击是攻击者向特定设备(例如,服务器)发送大量请求耗尽其资源而导致其无法为某些合法请求提供服务的攻击。
关键系统中的DoS攻击可能会产生更大的影响,因为它们可能会很快导致合法请求的延迟处理。例如,用于实时分布式控制的工业现场总线系统是时间关键的,因为每个接收到的消息都应在有限的时间内进行处理,以保证工业处理的良好运行。通过接收一组意外消息引起的处理可能会延迟关键消息的处理,从而导致全局处理的故障或显著恶化的性能。此外,工业计算机网络可能对DoS攻击非常敏感,因为它们通常包括经常基于计算资源有限的硬件的设备(因为部署设备的环境、产品寿命和成本)。
因此,需要提供解决本领域中的常规技术的上述缺点和短处中的至少一些的改进的数据通信方案和实现该改进的数据通信方案的网络节点。
本主题公开的目的是提供一种改进的数据通信方案和实现该改进的数据通信方案的装置。
本主题公开的另一个目的是提供一种计算机网络中的改进的数据发送方案和实现该改进的数据发送方案的装置,以减轻常规方案的上述缺点和短处,特别是在配置用于在节点之间执行时间关键数据通信的计算机网络中。
本主题公开的又一个目的是提供一种计算机网络中的改进的数据接收方案和实现该改进的数据接收方案的装置,以减轻常规方案的上述缺点和短处,特别是在配置用于在节点之间执行时间关键数据通信的计算机网络中。
为了实现这些目的和其他优点,并且根据本主题公开的目的,如在本文中具体体现和广泛描述的,在本主题公开的一个方面,提出了一种用于在计算机网络中发送数据的方法。该方法包括在网络的第一节点处:从网络的与第一节点不同的谜题服务器节点接收计算谜题;确定谜题的解,以将消息发送到与网络的所述谜题服务器节点不同的第二节点;以及将数据发送到所述第二节点,其中,所发送的数据包括所述消息和所确定的谜题的解。
发明内容
所提出的方法有利地提供了一种可以在工业网络中用于保护此类网络免受诸如DoS攻击的攻击的方案。
根据本主题公开的另一方面,所提出的用于在计算机网络中发送数据的方法包括在网络的第一节点处:从网络的与所述第一节点不同的谜题服务器节点接收计算谜题的随机数(nonce);使用所述随机数确定所述谜题的至少一个解,以将消息发送到与所述网络的所述谜题服务器节点不同的第二节点;以及将数据发送到所述第二节点,其中,所发送的数据包括消息和所确定的谜题的解。
根据本主题公开的又一方面,提出了用于在计算机网络中接收数据的方法,所述方法包括在所述网络的第二节点处:从网络的与所述第二节点不同的谜题服务器节点接收计算谜题;从所述网络的不同于所述谜题服务器节点的第一节点接收数据,其中,接收到的数据包括消息和所述谜题的解;基于接收到的谜题确定接收到的谜题解是否有效;以及在确定接收到的谜题解为有效时,处理包含在接收到的消息中的请求。
根据本主题公开的又一方面,提出了用于在计算机网络中接收数据的方法,所述方法包括在所述网络的第二节点处:从网络的与所述第二节点不同的谜题服务器节点接收计算谜题的随机数;从所述网络的不同于所述谜题服务器节点的第一节点接收数据,其中,接收到的数据包括消息和所述谜题的解;基于接收到的随机数确定接收到的谜题解是否有效;以及在确定接收到的谜题解为有效时,处理包含在接收到的消息中的请求。
在所提出的用于接收数据的方法的一个或更多个实施方式中,所提出的方法还可以包括:在确定接收到的谜题解不是有效的时,丢弃接收到的消息。
在所提出的方法(无论是用于接收和/或发送数据)的一个或更多个实施方式中,计算谜题可以是密码谜题。
在所提出的方法(无论是用于接收和/或发送数据)的一个或更多个实施方式中,随机数可以包括随机数值。在所提出的方法(无论是用于接收和/或发送数据)的一个或更多个实施方式中,随机数值可以是基于谜题的发送时间的。在所提出的方法(无论是用于接收和/或发送数据)的一个或更多个实施方式中,随机数值是基于时间同步消息中包含的时间戳信息的。
在所提出的方法(无论是用于接收和/或发送数据)的一个或更多个实施方式中,可以根据预定义的时间段周期性地接收新的谜题。
在所提出的方法的一个或更多个实施方式中(无论是用于接收和/或发送数据),可以将基于计算机网络中的时间同步信息获得的时间值与接收到的随机数一起用作谜题的参数。
在所提出的用于接收数据的方法的一个或更多个实施方式中,所述方法还可以包括:确定接收到的谜题解是否已经从计算机网络的任何节点接收到。
在所提出的方法的一个或更多个实施方式中(无论是用于接收和/或发送数据),数据流标识符可以与接收到的随机数一起用作谜题的参数。
在本主题公开的又一方面,提出了一种用于计算机网络中的网络节点的处理器,所述处理器被配置为执行本主题公开中提出的方法。
在本主题公开的又一方面,提出了一种装置,该装置包括处理器、在操作上联接到处理器的存储器以及在计算机网络中进行通信的网络接口,其中,该装置被配置为执行如在本主题公开中提出的方法。
在本主题公开的又一方面,提出了一种用可执行指令编码的非暂时性计算机可读介质,所述可执行指令在被执行时使包括与存储器在操作上联接的处理器的装置执行如在本主题公开中提出的方法。
在本主题公开的又一方面,提出了一种计算机程序产品,所述计算机程序产品包括有形地包括在计算机可读介质中的计算机程序代码,所述计算机程序代码包括指令,以在被提供给计算机系统并被执行时使所述计算机执行如在本主题公开中提出的方法。在本主题公开的另一方面,提出了一种数据集,所述数据集例如通过压缩或编码表示如在本文中提出的计算机程序。
应当理解,可以以多种方式来实现和利用本发明,包括但不限于过程、装置、系统、设备以及现在已知和以后开发的应用的方法。根据以下描述和附图,本文公开的系统的这些和其他独特特征将变得更加显而易见。
通过参考以下附图并结合所附的说明书,将更好地理解本主题公开,并且其众多目的和优点对于本领域技术人员将变得更加显而易见。
附图说明
[图1a]
图1a例示了可以根据一个或更多个实施方式使用的示例性基于散列的谜题方案。
[图1b]
图1b例示了可以根据一个或更多个实施方式使用的示例性基于散列的谜题方案。
[图1c]
图1c例示了客户端与服务器之间的客户端-服务器谜题协议。
[图1d]
图1d例示了由菊花链拓扑网络中的损坏节点产生的网络拥塞。
[图2a]
图2a例示了根据一个或更多个实施方式的可以应用所提出的方法的示例性计算机网络。
[图2b]
图2b例示了根据一个或更多个实施方式的可以应用所提出的方法的示例性计算机网络。
[图3a]
图3a例示了根据一个或更多个实施方式的示例性数据发送方案。
[图3b]
图3b例示了根据一个或更多个实施方式的示例性数据接收方案。
[图4]
图4例示了根据一个或更多个实施方式的可以用于谜题操作的示例性循环。
[图5a]
图5a例示了根据一个或更多个实施方式的示例性数据通信方案。
[图5b]
图5b例示了根据一个或更多个实施方式的示例性数据通信方案。
[图6]
图6例示了根据一个或更多个实施方式的示例性网络节点。
具体实施方式
为了图示的简单和清楚,附图例示了一般的构造方式,并且可以省略公知特征和技术的描述和细节,以避免不必要地使对本发明的所描述的实施方式的讨论变得模糊。另外,附图中的要素不一定按比例绘制。例如,图中的一些要素的尺寸可能相对于其他要素被放大,以帮助提高对本发明的实施方式的理解。为了帮助理解,可以以理想的方式示出某些图,诸如,当示出具有直线、锐角和/或平行平面等的结构时,在现实世界条件下其可能会大大降低对称性和有序性。不同附图中的相同附图标记表示相同的要素,而相似的附图标记可以但不一定表示相似的要素。
另外,显然的是,本文中的教导可以以多种形式来体现,并且本文中公开的任何特定结构和/或功能仅是代表性的。特别是,本领域的技术人员将理解,本文公开的方面可以独立于任何其他方面来实现,并且若干方面可以以各种方式组合。
以下参考根据一个或更多个示例性实施方式的方法、系统和计算机程序的功能、引擎、框图和流程图说明来描述本公开。所描述的每个功能、引擎、框图和流程图说明的框可以以硬件、软件、固件、中间件、微代码或其任何合适的组合来实现。如果以软件实现,则可以通过计算机程序指令或软件代码来实现框图和/或流程图说明的功能、引擎、框,所述计算机程序指令或软件代码可以被存储在计算机可读介质上或通过计算机可读介质传输,或者被加载到通用计算机、专用计算机或其他可编程数据处理装置上来生产机器,从而使在计算机或其他可编程数据处理装置上执行的计算机程序指令或软件代码创建用于实现本文所述功能的手段。
计算机可读介质的实施方式包括但不限于计算机存储介质和通信介质,通信介质包括有助于将计算机程序从一个地方转移到另一地方的任何介质。如本文所使用的,“计算机存储介质”可以是可以由计算机或处理器访问的任何物理介质。此外,术语“存储器”和“计算机存储介质”包括任何类型的数据存储设备,诸如但不限于硬盘驱动器、闪存驱动器或其他闪存设备(例如,存储密钥、存储棒、密钥驱动器、SSD驱动器)、CD-ROM或其他光学存储设备、DVD、磁盘存储或其他磁性存储设备、存储芯片、随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、智能卡、或可用于以可由计算机处理器读取的指令或数据结构形式执行或存储程序代码的任何其他合适的介质或其组合。另外,各种形式的计算机可读介质可以向计算机传输或携载指令,所述计算机包括路由器、网关、服务器或其他有线(同轴电缆、光纤、双绞线、DSL电缆)或无线(红外、无线电、蜂窝、微波)传输设备。指令可以包括来自任何计算机编程语言的代码,包括但不限于汇编、C、C++、Python、Visual Basic、SQL、PHP和JAVA。
除非另有明确说明,否则应理解,在以下所有描述中,利用诸如处理、计算、预测、确定等之类的术语的讨论是指计算机或计算系统或类似电子计算设备的动作或过程,将计算系统的寄存器或存储器中表示为物理量(诸如,电子量)的数据操纵或转换为类似地表示为计算系统的存储器、寄存器或其他这种信息存储、传输或显示设备中的物理量的其他数据。
如本文使用的,术语“包括”、“包含”、“具有”及其任何变型旨在覆盖非排他性包含,使得包括一系列要素的过程、方法、物品或装置不必受限于这些要素,而是可以包括未明确列出或此类过程、方法、物品或设备所固有的其他要素。
另外,术语“示例性”在本文中用来表示“用作示例、实例或者说明”。在此被描述为“示例性”的任何实施方式或者设计不必须被认为相比于其他实施方式或者设计是优选的或有利的。
在本主题公开中,术语“谜题”和“计算谜题”以及它们的派生词可以无差别地用于指示与可以用一个或更多个参数(例如,随机数)公式化的问题相关的数据,其要解决的问题涉及由包括处理器的机器或装置执行的计算,例如,通过在计算机上运行一个或更多个算法。
在本主题公开中将使用术语“随机数”来指定用作计算谜题的参数的数据,该参数对于确定谜题的解是必需的。优选地,随机数将被包括处理器的任何装置选择为不可预测的,所述处理器可用于确定谜题的解。例如,在所提出的方法的实施方式中使用的每个随机数将以随机方式生成或获得,或至少对于其中的一部分以随机方式生成或获得。
在本主题公开中,术语“密码谜题”、“工作谜题的证明”、“客户端谜题”、“密码”以及它们的派生词可以无差别地用来表示其解的确定涉及使用密码函数(例如,加密函数、散列函数、压缩函数)的谜题。
在本主题公开中,术语“联接”和“连接”以及它们的衍生词可以被无差别地用来表示两个或更多个要素彼此直接物理或电接触,或者两个或更多个要素彼此之间没有直接接触,但仍然彼此合作或彼此交互。
在本主题公开中,术语“有效载荷”、“有效载荷数据”、“消息”、“分组”和“数据分组”可以无差别地使用,并且可以包括数据块、协议数据单元或可以在节点或站之间或跨网络路由或发送的任何数据单元。分组可以包括一组位,其例如可以包括一个或更多个地址字段、控制字段和数据。数据块可以是任何数据或信息位的单元。
出于本主题公开的目的,术语“服务器”在本文中用于指代提供处理、数据库和通信设施的服务点。作为示例而非限制,术语“服务器”可以指具有相关通信和数据存储以及数据库设施的单个物理处理器,或者它可以指处理器和相关网络和存储设备的联网或集群复合体,以及支持服务器提供的服务的操作软件和一个或更多个数据库系统和应用软件。服务器的配置或能力可能有很大差异,但通常一台服务器可以包括一个或更多个中央处理单元和内存。服务器还可以包括一个或更多个大容量存储设备、一个或更多个电源、一个或更多个有线或无线网络接口、一个或更多个输入/输出接口或一个或更多个操作系统,例如,Windows Server、Mac OS X、Unix、Linux、FreeBSD等。
出于本主题公开的目的,“计算机网络”应当被理解为指可以联接设备(在本文中也称为“节点”)的网络,使得数据通信可以发生在设备之间,包括发生在经由例如无线网络联接的无线设备之间。网络还可以包括大容量存储器,例如,网络附加存储器(NAS)、存储区域网络(SAN)或例如计算机或机器可读介质的其他形式,并且可以包括服务器或连接到服务器。网络可以包括互联网、一个或更多个局域网(LAN)、一个或更多个广域网(WAN)、有线类型连接、无线类型连接、蜂窝网络(例如,载波电话线)、光纤、同步光网络、同步数字层次链路、电力线通信链路(例如,IEEE 61334、IEEE P1901.2)、以太网、蓝牙、蓝牙低功耗(BLE)或蓝牙智能、WiFi或任何基于IEEE802.11x协议的连接、ZigBee或任何基于IEEE802.15.4协议的连接、Z-Wave、6LowPAN(IPv6低功耗无线个人局域网)、Thread、Sigfox、Neul、LoRa、任何NFC连接、2G(包括GSM/GPRS/EDGE)/3G(包括UMTS/HSPA)/4G(包括LTE和LTE-Advanced)/5G蜂窝,或其任意组合。可以使用各种类型的设备(例如,网关),为网络中使用的不同架构或协议提供可互操作的能力。根据本主题公开,可以在计算机网络中使用任何数量的节点、设备、装置、链路、互连件等。
通信链路或信道可以包括例如模拟电话线、全数字线或部分数字线、包括卫星链路的无线链路或例如本领域技术人员已知的其他通信链路或信道。
网络的计算设备(例如,传感器节点或执行器节点)可能能够发送或接收信号(例如,经由有线或无线网络),和/或可能能够处理和/或存储数据。
应当理解,本主题公开的实施方式可以用于多种应用,特别是但不限于工业网络(例如,工业总线或传感器网络),在所述工业网络中,潜在的大量传感器协同监测不同位置的物理或环境状况(例如,在工厂或核电厂设施中)。尽管本主题公开不限于这方面,但本文公开的方法可以用于具有各种拓扑的多种类型的计算机网络,例如,任何LLN网络、任何菊花链拓扑网络、任何车辆总线网络、任何多跳系统(例如,网状网络)、任何物联网(IoT)网络或系统、任何机器对机器(M2M)网络或系统(例如,智能对象网络,诸如,传感器网络)或其任何组合,并且可用于许多装置,例如,计算机网络的任何网络节点(诸如,例如,根节点、网关节点、传感器节点、执行器节点)或连接到计算机网络或包含在计算机网络中的任何服务器中。
所提出的方法可以被有利地部署在通信系统中,该通信系统将传输具有关键定时和安全约束的单向数据流。特别是,新开发的基于以太网的支持消息加密和认证的工业控制网络(诸如,OPC-UA PubSub)需要被保护以免于一些潜在的拒绝服务攻击。即使加密和消息身份验证机制解决了大量威胁,但由于实施(硬件和软件),它们仍然可能容易受到DoS攻击。事实上,认证机制需要计算资源,并且可能会受到耗尽攻击。本主题公开有利地允许减轻对具有低计算资源的硬件平台的DoS攻击,因此这在保持网络安全的同时允许网络中的成本降低。
客户端密码谜题已被引入作为对抗计算机网络中的拒绝服务攻击的对策。在客户端/服务器模型中,客户端谜题是由服务器在从客户端接收到请求后提交给客户端的可计算的密码问题。客户端必须求解该问题并将解提供给服务器,作为服务器处理其请求的条件。在服务器侧,首先快速验证客户端提供的解以检查该解是否正确,并且只有在接收到的解正确的情况下才处理先前从客户端接收到的请求。为了保证客户端密码谜题方案的良好效率,谜题通常被设计成使得求解谜题所需的资源(计算资源和内存资源)比验证解的正确性所需的资源重要得多。因此,虽然合法客户端在向服务器提交请求时只会经历一些附加的计算,但攻击者必须能够访问大量计算资源以生成足够的请求来创建对服务器性能产生重大影响的DoS攻击。所提交的问题通常使用服务器秘密或随机数值、时间和附加客户端特定信息来进行公式化。
优选地,谜题解必须是唯一的,使得客户端或窃听设备不可能重播。
此外,谜题可以优选地以没有客户端能够预测从防御服务器接收到的谜题的方式来设计。通过这种方式,客户端无法提前计算谜题解。
谜题的复杂程度也可以根据服务器的压力进行调整,因此也可以根据攻击的强度进行调整。
已经提出了不同类别(类型)的谜题来解决诸如DoS攻击的攻击,其中,CPU绑定谜题的类别是最大的客户端谜题类别。
例如,计算所谓的“基于散列的谜题”的解通常需要执行涉及加密散列函数的计算。
根据基于散列的谜题方案的一个示例,可以向客户端提供散列的反向的一部分,使得它可以通过蛮力(即,使用随机尝试)来求解谜题,即,找到反向散列的剩余部分。如图1a所示,谜题P可能包含长度为n位的位串X的一部分(n-k位:X<k+1…n>)以及位串Y,其中,Y是位串X的散列值。谜题P的解包含X的丢失k位:X<1..k>,可以假设它是唯一的,使得X的散列值等于Y。
在图1b所例示的基于散列的谜题方案的另一个示例中,谜题P可以包含长度为n位的位串X的一部分(n-k位:X<k+1…n>)以及在位串Y的开头等于0的位数l,其中,Y是位串X的散列值。谜题P的解包含X的丢失部分,所述丢失部分可以在满足散列值Y的最低有效位等于0的条件的同时通过蛮力确定。
图1c例示了客户端(10)与服务器(11)之间的典型的客户端-服务器谜题协议。
在客户端-服务器客户端谜题协议方案中,客户端必须首先联系服务器一个请求,以便在处理该请求之前接收谜题并对其进行求解。如图1c所示,客户端(10)首先向服务器(11)发送(12)请求。在接收到请求后,服务器(11)生成(13)谜题P,并将谜题P发送(14)到客户端(10)。在接收到谜题P后,客户端(10)计算(15)谜题P的解S,并且将这样的解S发送(16)到服务器(11)。在接收到解S后,服务器(11)检查(17)解,并且如果解S正确,则服务器(11)执行(18)最初从客户端(10)接收到的请求。
如图1c所示,客户端-服务器客户端谜题协议方案涉及在客户端与服务器之间交换多个与谜题相关的消息。这会导致执行客户端请求的网络延时增加。此外,客户端-服务器客户端谜题协议方案不适用于某些单向通信方案,例如,广播或多播通信方案。
根据它们的架构和拓扑,(例如,工业中使用的)某些计算机网络可能用于网络的某些部分或网络中的某些通信、广播和/或多播通信。
此外,诸如现场总线系统的工业计算机网络可以被配置为用于时间关键数据通信。例如,工业或汽车总线可能会混合不同计算能力的异构设备(例如,具有非常低计算能力的设备到具有非常高计算能力的设备)。也就是说,即使是计算能力低的设备也可以通过简单地复制分组和更改分组内的少量字节而具有在网络接口上以高速发送分组的能力。这让攻击者有可能损坏任何设备,从而对连接到总线的任何其他设备发起DoS攻击。
此外,一些通信系统使用由发送节点在发送之前在每个消息中插入的加密和认证的(例如,签名的)数据流(例如,经由代码(有时称为消息认证代码(MAC)))以用于认证目的。网络的接收承载MAC代码的消息的节点可以使用这样的代码来验证消息不是由恶意或损坏的节点发送的。然而,检查消息认证码可能是相当消耗资源的操作,特别是对于计算能力低的节点,这限制了已认证数据流的使用。此外,MAC代码的这种检查可能会受到DoS攻击。事实上,在接收方,认证过程通常可能需要处理整个签名的数据。因此,即使攻击者无法访问签名密钥,它也可能生成大量带有错误签名(即,不正确的MAC代码)的损坏消息。为了验证每条接收到的消息,接收方仍然必须计算每条接收到的消息的MAC,以便针对接收到的消息检查该MAC。如果签名算法性能低于数据链路速度,那么攻击者很可能会耗尽接收方的资源并阻止其执行合法请求,特别是时间关键的合法请求。
向客户端提交谜题的方案也引起了一些问题,因为它通常需要客户端与服务器之间进行特定的消息交换。因此,除了求解和验证谜题所需的计算资源外,客户端谜题协议方案还消耗一些网络带宽。
此外,根据网络拓扑和架构,发起DoS攻击的攻击者还可能引起网络的某些部分出现网络拥塞,或干扰中间网络节点的正常运行。例如,工业现场网络总线可以以菊花链拓扑部署,如图1d所示。在该拓扑中,每个网络节点都串联连接到下一个网络节点。如果一个节点被损坏(图1d上的节点(21)),则该结点可能会淹没链中位于它之后的任何设备(图1d上的节点(22)和(23))。对于这种情况,基于使用网络指标(例如,速率限制)的网络流监管的防御策略可能缺乏效率,因为此类方法无法区分有效消息和泛洪消息。因此,为了解决这种攻击的威胁,需要识别和过滤在数据路径中最接近损坏节点(21)的健康网络节点(20)中的泛洪消息,而不是在损坏节点(21)与被攻击节点(23)之间的路径中。
图2a和图2b示出了根据一个或更多个实施方式的可以应用所提出的方法的示例性计算机网络。
图2a示出了具有经由以太网链路连接到多个节点(31-36)和外部托管云(37)的服务器(30)的星形拓扑网络(38)。节点(31)可以执行制造执行系统和/或企业资源规划(ERP)功能,节点(32)可以执行产品线功能的监视、控制和监督(监督控制和数据采集,SCADA),节点(33)可以通过一个或更多个可编程逻辑控制器(PLC)执行机器和系统功能的管理,并且一个或更多个节点(34–36)可以执行与系统的传感器和/或执行器的接口功能。
图2a所示的网络(38)可以使用为工业领域的数据通信设计的OPC-UA协议,使得可以将服务器配置为OPC-UA服务器,并且将其他节点配置为OPC-UA客户端。此外,一个或更多个节点可以被配置为OPC-UA发布者和/或订阅者。
图2b示出了具有单向数据流的菊花链拓扑网络。消息可以从每个节点(41–45)沿着图中箭头所示的数据通信路径发送到另一个节点。
图3a示出了根据本主题公开的一个或更多个实施方式的示例性数据发送方案。
如图3a所示,被配置为实现所提出的数据发送方案的第一网络节点可以从谜题服务器节点接收(50)计算谜题。
在一个或更多个实施方式中,计算谜题可以利用随机数进行公式化,使得第一网络节点可以接收随机数,并且可以被配置为通过接收谜题的随机数认为它已经接收到谜题。
在一个或更多个实施方式中,计算谜题可以是密码谜题,在这种情况下,它可以利用随机数值(即,表示数字或位串的随机数数据)进行公式化。随机数值通常可以针对其部分或全部被随机抽取,使得它可以包括其为随机的至少一部分,如下面提供的示例中所描述的。
在一个或更多个实施方式中,计算谜题可以是不同类型的。例如,计算谜题可以对应于这样的问题,对于该问题,通过包括处理器的机器或装置确定解可以涉及例如使用人工智能引擎识别随机数数据中的一个或更多个模式。在这种情况下,用于对谜题进行公式化的随机数数据可以对应于图像,该图像的部分或全部已经在一组图像中随机选择,并且确定计算谜题的解可能需要识别随机数数据中的预定义模式(例如,交通灯、汽车、动物等)。
在一个或更多个实施方式中,第一节点可以基于接收到的谜题确定(51)谜题的至少一个解,以用于将消息发送到网络的不同于谜题服务器节点的另一节点(第二节点)。在一些实施方式中,第一节点可以基于接收到的谜题的随机数确定谜题的解。
一旦确定了谜题的解,第一节点就可以向第二节点发送(52)数据,该数据包括要发送到第二节点的消息以及所确定的谜题的解。
在一些实施方式中,所发送的数据可以包括所发送的消息与所发送的谜题的解之间的关联的指示,取决于实施方式,该关联可以是隐式的或显式的。在一些实施方式中,第一节点可以有利地使用这样的指示来向第二节点发送若干消息,每个消息与谜题的(优选地单个)解相关联。例如,在一些实施方式中,所发送的消息可以包括所确定的谜题的解。在这种情况下,该指示是通过在相应消息中包含谜题的解而隐含地传达的。使用隐式指示有利地避免为了发送数据的目的而消耗带宽,所述数据指示与谜题的解相关联的消息。
在谜题解与消息之间的关联指示是显式(例如,使用标识符)的实施方式中,可以保护携载指示的数据免受潜在攻击,例如,通过使用不可预测的值(例如,通过使用部分或全部随机值),只有发送节点(发送消息、解和指示的节点)和接收节点(接收消息、解和指示的节点)才知道所述不可预测的值。
取决于实施方式,谜题可以是针对使用所提出的方案的网络节点的计算能力而定尺寸的计算谜题。
图3b示出了根据本主题公开的一个或更多个实施方式的示例性数据接收方案。
如图3b所示,被配置为实现所提出的数据发送方案的第二网络节点可以从与第二节点不同的谜题服务器节点接收(53)计算谜题。
此外,第二网络节点可以从第一节点(也不同于谜题服务器节点)接收(54)包括消息和谜题的解的数据。
第二节点然后可以检查接收到的解,即,基于接收到的谜题确定(55)接收到的解是否有效。
如上面参照图3a所描述的,在一个或更多个实施方式中,计算谜题可以利用随机数进行公式化,使得第二网络节点可以接收随机数,并且可以被配置为通过接收谜题的随机数认为它已经接收到要用于检查至少一个接收到的谜题的解的数据。
也如上文参照图3a所描述的,取决于实施方式,计算谜题可以是密码谜题,或者可以是不同的类型。
在确定接收到的解有效后,第二节点可以处理(56)接收到的消息。
在一些实施方式中,可以使用密码谜题(例如,基于散列的谜题)。
在一些实施方式中,接收到的数据可以包括接收到的消息与接收到的谜题的解之间的关联的指示,取决于实施方式,该关联可以是隐式的或显式的。
例如,在一些实施方式中,接收到的消息可以包括谜题的解。在这种情况下,该指示是通过在相应消息中包含谜题的解而隐含地传达的。
因此,所提出的数据发送方案提供了由节点接收谜题,该谜题用于节点想要将消息发送到另一节点的情况。节点可以被配置为使得它在没有首先对从谜题服务器节点接收的谜题进行求解的情况下不向网络的另一节点发送消息,并且将消息以及所确定的谜题的解发送到其他节点。
因此,所提出的数据接收方案提供了也由节点接收该谜题,该谜题用于节点从另一节点接收消息的情况。节点可以被配置为使得它在没有首先检查由同一发送节点接收的与所发送的消息相关的解是有效的情况下不接收或处理来自网络的另一节点的接收到的消息。因此,使用解的计算比检查解在计算上成本高得多的谜题将有利地减轻计算机网络中DoS攻击的风险,同时限制发送节点与接收节点之间网络带宽的使用以及两个节点处的资源的使用。检查与接收到的消息相关联的谜题解可能需要的有限量的计算资源可以在具有节点的网络中被有利地利用,所述节点可能仅以非常有限的计算资源接收消息,并且仍然提供用于保护这些节点免受攻击的高效解。
在一些实施方式中,接收节点可以被配置为如果接收到的消息没有接收到的谜题的解,则丢弃该接收到的消息。在一些实施方式中,接收节点可以被配置为如果接收到的消息具有接收到的谜题的无效解,则丢弃该接收到的消息。
发送节点处消息的发送和接收节点处消息的接收两者然后都可以基于由发送节点和接收节点两者(例如,从网络的谜题服务器节点)接收的谜题来调节。
由于谜题是从与消息要发送到的节点不同的服务器节点接收的,因此所提出的方案有利地限制了由所提出的方案产生的信令开销以及网络延时。此外,所提出的方案有利地适用于单向通信方案,例如,广播或多播通信方案。
根据一些实施方式,本主题公开提出了一种减轻DoS攻击的加密方案,该加密方案可以有利地用于已经利用数据加密和认证机制实现网络安全的关键通信系统中。所提出的方案可以有利地应用于各种网络架构和协议,包括用于单向数据流(诸如,在例如基于所谓的“发布/订阅”模型的新工业现场总线协议中使用的多播)的网络架构和协议。事实上,在这种网络中,由于设备在可用计算资源方面的异构性,接收设备很容易被攻击者通过发送大量带有错误签名的签名消息所淹没。
在一个或更多个实施方式中,所提出的方法由希望将消息发送到另一节点的节点使用密码谜题的解,迫使发送节点在发送消息之前花费时间(和计算资源)。与常规方法不同,它对消息传递延时(这在关键系统中很重要)的影响非常有限,并且产生的信令开销很小。在一些实施方式中,它还有利地允许识别和过滤任何中间节点中的恶意泛洪流量,这防止了由攻击造成的可能的网络拥塞的发生。此外,所提出的方案被有利地设计为对可能的重放、预计算或模拟攻击具有弹性,并且还可以被容易地部署在基于微控制器的轻型设备上。
所提出的方案还有利地解决了当前对适用于将支持同步节点之间的数字签名单向数据流的一些通信系统的新密码谜题协议方案的需求。
例如,被设计用于工业通信总线(例如,工业自动化应用)的新开发的通信协议OPC统一架构(由OPC基金会指定的,首字母缩写词“OPC”代表“开放平台通信”)包括基于客户端/服务器的协议(其可能依赖于TCP/IP协议栈(如由互联网工程任务组(IETF)指定的),并且还包括用于实时通信的发布订阅(PubSub)方案,每个方案都可能依赖于以太网。由于安全要求,OPC-UA PubSub协议通过使用秘密签名密钥对消息中包含的数据进行计算并添加在消息末尾的消息身份验证代码(MAC)来本地实现每个协议消息的加密和认证。在接收方侧,系统地验证接收到的消息中的MAC。该操作需要非常大量的计算资源并增加延时。
将支持同步节点之间数字签名单向数据流的通信系统的另一示例是音频/视频广播系统,该音频/视频广播系统依赖于将传送单向加密的音频/视频数据流的IEEE802.1AVB。
在一些实施方式中,所提出的方法可以使用基于散列的谜题,该基于散列的谜题包括找到位串解X,使得与由协议提供的另一位串Z连接的X的散列值的m个最低有效位等于预定位流Y,也就是说,LSBm[H(x|z)]=Y。
在一个或更多个实施方式中,为了防止预计算攻击,谜题可以利用公共的随机数(例如,随机数值)进行公式化,优选地被选择为使得它不能被预测。该随机数n可以由特定消息(例如,称为“随机数谜题控制”(NPC)消息)传达,该消息可以(例如,使用广播和/或多播数据传输)被提供给网络的配置为使用所提出的处理的节点。在一些实施方式中,NPC消息可以由主节点通过网络以给定频率周期性地发送。
在一些实施方式中,新的谜题可以由谜题主节点重复发送,使得节点接收的每个谜题都可以被认为是有效的以供该节点使用,直到接收到新的谜题为止。在一些实施方式中,节点可以被配置为在预定的时间段接收新的谜题,使得节点可以根据预定的时间段周期性地接收新的谜题。使用所提出的方法向节点重复(例如,周期性地)发送谜题有利地允许根据各种网络参数(例如,根据计算机网络中的带宽约束)将两个连续的谜题发送之间的持续时间设置为选定值。例如,两个连续的谜题发送之间的持续时间可以选择得足够大,以使得到网络的节点的谜题发送不会消耗不期望的大量网络带宽。相反,两个连续的谜题发送之间的持续时间可以选择得足够短,以确保节点使用的谜题经常更新,以针对攻击确保更高的安全性。
在一个或更多个实施方式中,发送到节点以将谜题发送到这些节点的随机数值可以基于谜题的发送时间。在一些实施方式中,NPC消息的发送时间可以用作被配置为根据本主题公开计算或验证谜题解的所有网络节点的公共随机数值。
在一些实施方式中,包括随机数值的谜题被重复发送(例如,以给定周期广播),基于谜题的发送时间的随机数值可以是谜题的一部分,并且可以是有效的,直到发送新的随机数值为止。优选地,被配置为基于它们的发送时间生成谜题的谜题服务器节点可以被配置为使得生成的随机数值不能被任何节点(特别是攻击者)预测,这有利地避免了谜题解预计算。为此,在一些实施方式中,用于生成随机数值的发送时间可以被选择得足够精确(例如,达到纳秒),使得它必然携载防止其他节点预测的随机部分。
在节点包括在时间同步网络中的一个或更多个实施方式中,用于将节点的本地时钟与网络时钟同步的时间同步协议可以有利地用于分发基于其发送时间的随机数值,从而减少与谜题的分发相关的带宽使用。例如,在精确时间协议(如在IEEE-1588标准中定义的)用于网络节点的时间同步的实施方式中,如后续“FollowUp”PTP消息内指示的表示“同步”PTP消息的发送时间的时间戳数据可以被接收同步和FollowUp PTP消息的节点用作公共随机数值。因此,时间同步协议的广播消息中包含的数据可以被时间同步网络的节点用作公共随机数值。所提出的谜题分发方案有利地避免了使用特定消息来将谜题分发到网络中的节点,同时减轻了对与谜题在网络中的分发相关联的附加的网络带宽的需求。
本领域技术人员将理解,尽管本说明书将PTP协议作为可以在一个或更多个实施方式中使用的时间同步协议的示例,但是任何其他合适的时间同步协议(诸如,例如,如在征求意见(RFC)5905中指定的IETF网络时间协议(NTP)协议)可以用于代替仅作为示例给出的PTP协议。
在一个或更多个实施方式中,计算机网络的关注节点(发送节点和/或接收节点)要使用的谜题可以利用多个参数来公式化,所述多个参数包括关注节点根据谜题分发方案获得的随机数参数(随机数参数可以由谜题服务器节点或如上所述的网络的另一服务器节点(例如,时间同步服务器节点)提供)以及由关注节点独立于例如用于分发随机数参数的谜题分发方案而获得的一个或更多个参数。换句话说,被配置为使用所提出的方法的节点可以使用至少利用随机数参数(从谜题服务器节点或从上文关于时间同步网络描述的另一种类型的服务器节点接收的)以及利用在执行除了谜题分发相关的功能以外的功能的过程中获得的一个或更多个参数(称为“隐式”谜题参数,因为它们不作为谜题分发方案的一部分被分发到节点)而被公式化的谜题。
例如,在一些实施方式中,可以使用基于计算机网络中的时间同步信息获得的时间值连同接收到的随机数(当通过将谜题参数发送到节点的谜题分发方案获得时,所述随机数不是隐式谜题参数)一起作为谜题的(隐式)参数。其他隐式谜题参数可以与时间值隐式谜题参数和随机数参数结合使用。
下面提供了使用这样的时间值作为关于时间同步网络的谜题的隐式参数的示例性实施方式,在所述时间同步网络中,通信节点是时间同步的并且共享公共时钟。
为了加强谜题对抗重放攻击(即,攻击者使用单个谜题解来发送大量消息的攻击),在一个或更多个实施方式中,谜题可以利用不是随机数的部分的时间值来公式化。也就是说,根据这样的实施方式无论是由发送节点还是接收节点使用的谜题都可以具有多个参数,所述多个参数包括随机数参数和时间值参数。
在时间同步计算机网络的节点具有与网络时钟同步的本地时钟的一些实施方式中,可以基于预定义时间段(也称为“周期”)划分时域,使得时间可以由序列中的周期编号(或索引)来标识。换句话说,时域可以被划分为预定持续时间(例如,100ms)的周期,使得时间值可以对应于索引的周期序列中的周期索引。
因此,在所提出的方法用于节点为时间同步的时间同步网络中的一个或更多个实施方式中,每个节点可以被配置为基于其本地时钟计算周期索引。例如,任何节点可以被配置为获得(例如,从网络接收或确定)当前周期数。当前周期数的确定可能涉及计算当前时间(基于与网络时钟同步的本地时钟)除以预定周期持续时间(例如,整数)的除法。在一些实施方式中,除了由谜题主节点作为谜题的一部分分发给节点的随机数之外,由节点使用所提出的方法计算的当前周期的索引可以用作附加谜题参数。
在这样的实施方式中,被配置为使用所提出的方法的节点可以被配置为使用所获得的周期索引作为要使用的谜题的一部分(用于在发送节点确定解,并且用于在接收节点检查接收到的解),使得必须在单个周期内发送若干消息的发送节点可以被配置为基于接收到的随机数和获得的周期索引来求解相同的谜题。以这种方式,生成的解在每个周期期间可以有利地是唯一的。在一些实施方式中,接收节点可以被配置为在验证谜题解之前检查在当前周期期间尚未提交谜题解。结果,在一些实施方式中,对应于周期索引的时间值可以用于由发送节点和接收节点使用的谜题的公式化,使得每个周期可以确定一个谜题,紧随其后的周期确定另一个谜题。因此,周期索引可以用作谜题参数,其优点是该附加参数可以不像随机数参数那样分发到节点,因为可以在时间同步网络的每个节点处计算该附加参数。该方案有利地增加了谜题参数的数量,这针对攻击改进了节点保护,同时不产生与谜题分发相关联的附加信令开销。更有利的是,周期的持续时间可以选择得短,使得谜题的有效性的持续时间同样短,并且谜题被经常更新。
图4例示了根据本主题公开的实施方式的可以用于谜题操作的周期。如图4所示,携载用于谜题P的随机数的消息可以在计算机网络中基本上以预定义的随机数广播时段周期性地广播。这种消息的示例被示出在图4上作为随机数谜题控制(NPC)消息NPCn、NPCn+1和NPCn+2。两个连续的随机数分发消息之间的时间段可以分为m+1个预定义周期持续时间的周期:Cycle0,Cycle1,……,Cyclem。对于与NPC消息NPCn(即,在周期Cyclei开始时最后收到的NPC消息)对应的每个周期Cyclei,被配置为使用所提出的方法的节点(确定一个或更多个谜题解的发送节点或检查一个或更多个接收到的谜题解的接收节点)可以从在相应的NPC消息NPCn中接收到的随机数和从周期索引i得到谜题Pn,i
图5a例示了根据本主题公开的一个或更多个实施方式的示例性数据通信方案。
参照图5a,在一个或更多个实施方式中,谜题服务器节点可以被配置为向网络的多个节点中的每一个节点提供利用随机数(例如,随机数值(例如,不可预测(部分或完全随机)值))公式化的谜题P。例如,如图5a所示,所谓的“谜题主”节点(60)向第一发送节点(62)、第二发送节点(63)和服务节点(61)发送(64a、64b、64c)谜题P的随机数值。
在一个或更多个实施方式中,为了让发送到另一节点的消息由其他这种节点处理(例如,为了让发送到另一节点的请求由其他这样的节点服务),有效的谜题解必须是由发送消息的节点获得(例如,计算)和发送的,并且被提供给目的地节点以便处理消息。例如,在一些实施方式中,为了完成请求,有效的谜题解必须由任何向服务节点发送请求的请求节点计算。
在一个或更多个实施方式中,由发送节点计算的解可以与所发送的消息一起发送。在一些实施方式中,计算出的解可以被嵌入到所发送的消息中。
在一些实施方式中,可以将最后接收到的谜题的解嵌入到每个发送的消息中。
在接收节点处,可以在处理消息之前验证与接收到的消息一起接收的谜题解。在一些实施方式中,可以在任何其他处理操作之前在接收节点处验证解,所述其他处理操作包括消息认证(如果支持的话)。在接收到的消息包括谜题的解的情况下,可以首先处理该消息以提取该谜题解,并且一旦确定该了谜题解是有效的,就可以进一步处理该消息。
在使用基于散列的谜题的实施方式中(该基于散列的谜题包括找到位串解X使得与由协议提供的另一位串Z连接的X的散列值的m个最低有效位等于预定位流Y(LSBm[H(x|z)]=Y)),签名验证(即,检查接收到的谜题的解)可以有利地仅包括计算与Z连接的谜题解X的散列值,并检查结果的m个最低有效位是否对应于Y。从计算成本的角度来看,该操作通常比计算谜题的解更轻巧、更快速。因此,虽然将阻止潜在的攻击者向网络的另一节点发送大量带有相关解的消息,但这种其他节点将不需要大量计算资源来防御此类DoS攻击,因为检查接收到的解在计算上将是便宜的。
例如,如图5a所示,发送节点#1(62)计算从谜题主节点(60)接收(64b)的谜题P的解(S1),然后将包括Request#1连同(可能包括)谜题P的解S1的消息Msg#1发送(65)到服务节点(61)。同样地,发送节点#2(63)计算从谜题主节点(60)接收(64b)的谜题P的解(S2),然后将包括Request#2连同(可能包括)谜题P的解S2的消息Msg#2发送(67)到服务节点(61)。
服务节点(61)可以被配置为在接收到消息Msg#1和解S1后,检查(66)解S1,并且一旦确定解S1是有效的,则处理Msg#1,例如,为Request#1提供服务。同样地,服务节点(61)可以被配置为在接收到消息Msg#2和解S2后,检查(68)解S2,并且一旦确定解S2是有效的,则处理Msg#2,例如,为Request#2提供服务。
如上所述,所提出的方法不依赖于利用接收节点秘密进行公式化的谜题。例如,在使用基于散列的谜题的实施方式中,该散列的谜题包括寻找位串解X,使得与由协议提供的另一位串Z连接的X的散列值的m个最低有效位等于预定位流Y(LSBm[H(x|z)]=Y),位串Z可能不包括在发送节点与接收节点之间共享的任何秘密。更有利的是,不需要在发送节点与接收节点之间进行一些先前的消息交换来获得任何秘密。此外,所提出的处理有利地允许发送节点与接收节点之间的消息路由上的任何节点检查由任何消息传达的谜题解,因为这样的节点将已经从谜题主节点接收谜题。
在一个或更多个实施方式中,可以在接收后使用存储已经关于谜题P使用并且验证的谜题解的查找表来验证谜题P的解的唯一性。查找表(在本文中称为“谜题解LUT”)可以在网络的被配置为使用所提出的方法来接收数据每个节点处维护,并且对于给定的节点,查找表可以用于存储已经关于(与对应的谜题相关的)不同的谜题使用和验证的谜题解。被配置为管理谜题解LUT的节点可以被配置为在至少一个预定谜题参数改变后(例如,在随机数参数改变后和/或在时间值参数改变后,取决于节点配置)清除其表。也就是说,在被配置为触发谜题解LUT的刷新的谜题参数改变后,可以清除查找表,从而可以将查找表重新用于其他谜题。可以利用每个接收到的有效解顺序地填充查找表。在接收到解后,接收节点可以首先通过在其查找表中查找已存储在该表中的相同解来验证接收到的解是唯一的(即,尚未接收到)。在确定已经存储在表中的相同解后,接收节点可以丢弃该消息,甚至不检查连同消息一起接收到的解的有效性。在确定没有相同的解已经存储在表中后,接收节点可以继续检查连同消息一起接收到的解的有效性。然后可以执行如上所述根据本主题公开的实施方式的在接收节点处的进一步操作。
例如,如图5b所示,谜题主节点(60)可以向发送节点(62)和服务节点(61)(接收节点)发送NPC消息,该NPC消息携载在时段n内有效的谜题P1的随机数。发送节点(62)可以计算(69)在时段n期间从谜题主节点(60)接收到(68a)的谜题P1的解(S1,1),然后向服务节点(61)发送(70)消息Msg#1连同(可能包括)谜题P1的解S1,1。
服务节点(61)可以被配置为在接收到消息Msg#1和解S1,1后,在其解表中查找(71)解S1,1以检查其是否已经接收到解S1,1。如果在解表中找不到解S1,1,则服务节点(61)可以基于在时段n期间从谜题主节点(60)接收到(68b)的谜题P1来检查解S1,1的有效性,并且一旦确定解S1,1是有效的,则处理Msg#1,例如,为其中包含的请求提供服务。
同时,在同一时段n期间,发送节点(62)可以计算(72)在时段n期间从谜题主节点(60)接收到(68a)的谜题P1的另一解(S1,2),以便将另一消息发送到服务节点(61)。发送节点(62)然后可以向服务节点(61)发送(73)消息Msg#2连同(可能包括)谜题P1的解S1,2。
服务节点(61)可以被配置为在接收到消息Msg#2和解S1,2后,在其解表中查找(74)解S1,2以检查其是否已经接收到解S1,2。如果在解表中找不到解S1,2,则服务节点(61)可以基于在时段n期间从谜题主节点(60)接收到(68b)的谜题P1来检查解S1,2的有效性,并且一旦确定解S1,2是有效的,则处理Msg#2,例如,为其中包含的请求提供服务。
然后可以达到以下时段(n+1),此时谜题主节点(60)可以向发送节点(62)和服务节点(61)(接收节点)发送携载对于当前时段(n+1)有效的谜题P2的随机数的新NPC消息。
想要向服务节点发送数据的发送节点(62)可以被配置为使用最后接收到的谜题来计算将与要发送到服务节点的消息一起发送的谜题解。然后,发送节点(62)可以计算(77)在当前时段n+1期间从谜题主节点(60)接收到(75a)的谜题P2的解(S2,1),以便将另一消息发送到服务节点(61)。发送节点(62)然后可以向服务节点(61)发送(73)消息Msg#3连同(可能包括)谜题P2的解S2,1。
服务节点(61)可以被配置为在接收到谜题P2的随机数后,清理其解表(例如,刷新其解表中存储的所有谜题解),以使得它在新的当前时段(n+1)期间管理接收到的谜题解。服务节点(61)可以被配置为在接收到消息Msg#3和解S2,1后,在其解表中查找(79)解S2,1以检查其是否已经接收到解S2,1。如果在解表中不能找到解S2,1,则服务节点(61)可以基于在时段n期间从谜题主节点(60)接收到(75b)的谜题P2来检查解S2,1的有效性,并且一旦确定解S2,1是有效的,则处理Msg#3,例如,为其中包含的请求提供服务。
如上所述,在一个或更多个实施方式中,计算机网络的关注节点(发送节点和/或接收节点)要使用的谜题可以利用多个参数来公式化,所述多个参数包括关注节点根据谜题分发方案获得的随机数参数以及由关注节点独立于例如用于分发随机数参数(隐式谜题参数)的谜题分发方案而获得的一个或更多个参数。
作为隐式谜题参数的另一示例,在一些实施方式中,可以将数据流标识符与接收到的随机数一起用作谜题的(隐式)参数。
数据流标识符隐式谜题参数可以有利地用于一个或更多个实施方式中以增强对任何类型攻击的谜题弹性,使得节点不能“窃取”由另一上游节点计算的谜题解。包括流标识符的谜题的使用对于菊花链拓扑网络特别有用,其中,中间损坏的节点可能窃取与传入消息相对应的谜题解,并发送具有所窃取的谜题解的一些泛洪消息。
在使用基于以太网的工业总线的实施方式中,根据所提出的方法使用的流标识符可以包括第2层以太网源地址和目的地地址的连接,并且可能包括VLAN标签。
对于UDP层传送的数据流,根据所提出的方法使用的流标识符可以包括UDP源地址、UDP目的地地址、UDP源端口和UDP目的地端口的连接。
其他隐式谜题参数(诸如,例如,如上所述的时间值参数)可以与数据流标识符参数和随机数参数结合使用。
例如,在使用基于散列的谜题的一些实施方式中,该基于散列的谜题包括找到位串解X,使得与由协议提供的另一位串Z连接的X的散列值的m个最低有效位等于预定义位流Y(LSBm[H(x|z)]=Y,位串z可以包括随机数值(例如,对应于时间同步协议消息的发送时间(例如,当使用IEEE-1588协议时的“同步”消息))、时间值(例如,时间周期序列号)和流标识符的连接。例如,可以按如下方式选择z:z=TimeSync|CycleSN|StreamID。
在使用上述公式(LSBm[H(x|z)]=Y)的实施方式中,发送节点必须使用蛮力计算解。试验数取决于应设置为特定值的输出位数。为简单起见,输出期望值Y可以选择为0的位串。当系统可以安全地依赖数据流标识符时(即,不能被任何节点伪造),那么位数可能取决于数据流标识符,使得谜题对于具有高计算资源的节点比对于具有低计算资源的节点更复杂。这种有利的灵活方法还可以用于在网络中定义一些高度可信的节点,对于这些节点来说,所需的位数可以被设置为0。
在使用基于散列的谜题的实施方式中,可以优选地选择散列函数以使得结果输出值不能被预测。例如,(例如,SHA-2或SHA-3系列的)安全散列算法可以用于利用基于散列的谜题来实现所提出的方法。
在一个或更多个实施方式中,用于广播基于随机数的谜题的消息可以被保护(例如,使用认证方案)。在一些实施方式中,NPC消息本身可以被认证以防止可能允许攻击者使用预先计算的谜题解的集合的假消息。
此外,为了防止可能的分组丢失,随机数值可以通过插入到谜题解中的索引来标识。该索引可以是当前时间除以NPC消息周期。由于接收到的随机数值中反映了周期,因此然后节点可以很容易地检测到传送随机数值的分组的丢失。如上面关于一些实施方式所讨论的,发送节点可以被配置为使用最新接收的随机数来计算谜题解。当验证谜题解时,接收节点可以被配置为使用由插入到解中的索引标识的随机数。在一些实施方式中,如果该随机数在节点处不可用(由于分组丢失),则谜题解可以被认为是正确的。在其他实施方式中,如果随机数在节点处不可用(由于分组丢失),则谜题解会被认为是不正确的,并且与解相关联的消息可能被丢弃,如上所述。
在使用IEEE-1588协议进行时间同步的实施方式中,“SequenceId”字段可以优选地用作随机数索引。
图6例示了根据本主题公开的实施方式的使用网络发送和/或接收特征的示例性网络节点1。
网络节点1包括控制引擎2、网络管理引擎3、数据通信引擎4、存储器5和电源(例如,电池、插入式电源等)(图中未表示)。
在图6所示的架构中,所有网络管理引擎3、数据通信引擎4和存储器5通过控制引擎2彼此可操作地联接。
在一个实施方式中,网络管理引擎3被配置为执行如本文所述的用于数据发送和/或数据接收的所提出的方法的实施方式的各个方面。
在一个实施方式中,数据通信引擎4被配置为接收和发送数据分组,并处理接收到的分组。
控制引擎2包括处理器,该处理器可以是任何合适的微处理器、微控制器、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、数字信号处理芯片和/或状态机或其组合。根据各种实施方式,计算机中的一个或更多个可以被配置为具有用于提供并行计算的多个处理器的多处理器计算机。控制引擎2还可以包括计算机存储介质(例如,但不限于存储器5),或者可以与计算机存储介质通信(例如,但不限于存储器5),所述计算机存储介质能够存储计算机程序指令或软件代码,当由处理器执行计算机程序指令或软件代码时使处理器执行本文所述的要素。此外,存储器5可以是任何类型的数据存储计算机存储介质,其能够存储表示网络节点1所属的计算机网络的数据结构,联接到控制引擎2并且可与数据通信引擎4和网络管理引擎3一起工作以便于管理和处理与其关联存储的数据分组。
在本主题公开的实施方式中,网络节点1被配置用于执行本文描述的数据发送和/或数据接收方法。
应当理解,仅以示例的方式提供了参照图6示出和描述的网络节点1。许多其他架构、操作环境和配置也是可能的。节点的其他实施方式可以包括更少或更多的组件,并且可以结合关于图6所示的网络节点组件描述的一些或全部功能。因此,尽管控制引擎2、网络管理引擎3、数据通信引擎4和存储器5被示为网络节点1的一部分,但对组件2-5的位置和控制没有限制。特别是,在其他实施方式中,组件2-5可以是不同实体或计算系统的部分。
所提出的谜题方法可以有利地用于减轻各种网络通信系统(包括具有以下特征的系统:涉及轻量级设备发送的可能性的时间同步网络节点(例如,使用IEEE1588/PTP)、高数据速度(例如,吉比特以太网))中的DoS攻击。
在本文提供的所提出的方法的各种实施方式的优点包括以下:支持单向数据流(例如,发布-订阅通信模式/多播流)、可能与消息加密和身份验证一起使用,低附加网络信令(轻谜题客户端协议)、中间节点能够识别和过滤泛洪消息(上游过滤)、对于重播和预计算的弹性;适合合法节点的谜题解所需的计算以及接收节点中的低复杂度计算(谜题验证)。
尽管参照优选实施方式描述了本发明,但是本领域技术人员将理解的是,在不背离所附的权利要求中下限定的本发明的精神或者范围的情况下可以对本发明进行各种修改和变化。
尽管已经在某些优选实施方式的上下文中公开了本发明,但是应该理解,可以在各种其他实施方式中实现系统、设备和方法的某些优点、特征和方面。另外,可以预期的是,本文所述的各个方面和特征可以分开地实践,组合在一起或彼此替代,并且可以进行特征和方面的各种组合和子组合,并且仍然落入本发明的范围内。此外,上述系统和设备不必包括优选实施方式中描述的所有模块和功能。
可以使用多种不同技术和技术中的任何一种来表示本文所述的信息和信号。例如,数据、指令、命令、信息、信号、位、符号和芯片可以由电压、电流、电磁波、磁场或粒子、光场或粒子或其任意组合表示。
取决于实施方式,本文描述的任何方法的特定动作、事件或者功能可以按照不同顺序进行,可以添加、合并或者一起省略(例如不是全部描述的动作或者事件对于方法的实施是必要的)。此外,在某些实施方式中,动作或事件可以同时执行而不是顺序执行。

Claims (10)

1.一种在计算机网络中发送数据的方法,所述方法包括:
在所述网络的第一节点处:
从所述网络的与所述第一节点不同的谜题服务器节点接收(50)用作计算谜题的参数的随机数;
使用所述随机数确定(51)所述谜题的至少一个解,以用于将消息发送到所述网络的与所述谜题服务器节点不同的第二节点;以及
将数据发送(52)到所述第二节点,其中,所发送的数据包括消息和所确定的谜题的解,
其中,所述随机数包括随机数值,
其中,所述随机数值是基于所述谜题的发送时间的,
其中,所述随机数值是基于时间同步消息中包括的时间戳信息的;
其中,数据流标识符与接收到的随机数一起用作所述谜题的参数。
2.根据权利要求1所述的方法,其中,根据预定时段周期性地接收新的谜题。
3.一种在计算机网络中接收数据的方法,所述方法包括:
在所述网络的第二节点处:
从所述网络的与所述第二节点不同的谜题服务器节点接收(53)用作计算谜题的参数的随机数;
从所述网络的不同于所述谜题服务器节点的第一节点接收(54)数据,其中,接收到的数据包括消息和所述谜题的解;
基于接收到的随机数确定(55)接收到的谜题解是否有效;以及
在确定接收到的谜题解有效时,处理包含在接收到的消息中的请求,
其中,所述随机数包括随机数值,
其中,所述随机数值是基于所述谜题的发送时间的,
其中,所述随机数值是基于时间同步消息中包括的时间戳信息的;
其中,数据流标识符与接收到的随机数一起用作所述谜题的参数。
4.根据权利要求3所述的方法,所述方法还包括以下步骤:在确定接收到的谜题解不是有效的时,丢弃接收到的消息。
5.根据权利要求3或4所述的方法,所述方法还包括以下步骤:确定所接收的谜题解是否已经从所述计算机网络的任何节点接收到。
6.根据权利要求1到4中任一项所述的方法,其中,所述谜题的解包括在所述消息中。
7.根据权利要求1到4中任一项所述的方法,其中,基于所述计算机网络中的时间同步信息获得的时间值与接收到的随机数一起用作所述谜题的参数。
8.一种用于计算机网络中的网络节点(1)的处理器(2),所述处理器(2)被配置为执行根据权利要求1至7中任一项所述的方法。
9.一种包括处理器(2)、在操作上联接到所述处理器(2)的存储器(5)以及在计算机网络中进行通信的网络接口(4)的装置(1),其中,所述装置(1)被配置为执行根据权利要求1至7中任一项所述的方法。
10.一种计算机可读介质,存储计算机程序代码,所述计算机程序代码包括指令,所述指令在被提供给计算机系统并被执行时使所述计算机执行根据权利要求1至7中任一项所述的方法。
CN202080024045.6A 2019-03-29 2020-01-30 抵抗dos攻击的计算谜题 Active CN113632435B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP19305427.7 2019-03-29
EP19305427.7A EP3716570B1 (en) 2019-03-29 2019-03-29 Computational puzzles against dos attacks
PCT/JP2020/004445 WO2020202780A1 (en) 2019-03-29 2020-01-30 Computational puzzles against dos attacks

Publications (2)

Publication Number Publication Date
CN113632435A CN113632435A (zh) 2021-11-09
CN113632435B true CN113632435B (zh) 2023-04-18

Family

ID=66951865

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080024045.6A Active CN113632435B (zh) 2019-03-29 2020-01-30 抵抗dos攻击的计算谜题

Country Status (7)

Country Link
US (1) US11785043B2 (zh)
EP (1) EP3716570B1 (zh)
JP (1) JP7427689B2 (zh)
KR (1) KR102581039B1 (zh)
CN (1) CN113632435B (zh)
TW (1) TWI770483B (zh)
WO (1) WO2020202780A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3716570B1 (en) * 2019-03-29 2022-07-27 Mitsubishi Electric R&D Centre Europe B.V. Computational puzzles against dos attacks
US11962703B2 (en) * 2022-02-08 2024-04-16 International Business Machines Corporation Cooperative session orchestration

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102017578A (zh) * 2008-05-09 2011-04-13 高通股份有限公司 用于在令牌与验证器之间进行认证的网络助手
CN106850603A (zh) * 2017-01-19 2017-06-13 北京洋浦伟业科技发展有限公司 一种白盒密码双向身份认证方法、终端、服务端及系统
CN107534997A (zh) * 2015-04-16 2018-01-02 瑞典爱立信有限公司 网络节点中的向设备提供对网络的访问的方法
CN107888615A (zh) * 2017-12-01 2018-04-06 郑州云海信息技术有限公司 一种节点注册的安全认证方法
CN108270821A (zh) * 2016-12-30 2018-07-10 深圳瀚德创客金融投资有限公司 用于区块链网络中的区块生成方法和网络节点

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6944765B1 (en) * 1999-12-21 2005-09-13 Qualcomm, Inc. Method of authentication anonymous users while reducing potential for “middleman” fraud
US8321955B2 (en) * 2003-08-26 2012-11-27 Wu-Chang Feng Systems and methods for protecting against denial of service attacks
KR100828372B1 (ko) * 2005-12-29 2008-05-08 삼성전자주식회사 서비스 거부 공격으로부터 서버를 보호하는 방법 및 장치
WO2010003459A1 (en) * 2008-07-09 2010-01-14 Telefonaktiebolaget Lm Ericsson (Publ) Traffic control within a network architecture providing many-to-one transmission with denial-of service protection
US9614868B2 (en) * 2013-03-15 2017-04-04 Robert Bosch Gmbh System and method for mitigation of denial of service attacks in networked computing systems
WO2016167693A1 (en) * 2015-04-16 2016-10-20 Telefonaktiebolaget Lm Ericsson (Publ) Method and device for establishing a computational puzzle for use in communication between a client and a server.
US10462138B2 (en) * 2016-02-19 2019-10-29 Google Llc Application programming interface access controls
JP2018011370A (ja) * 2016-07-11 2018-01-18 株式会社日立製作所 電力系統監視システム、方法および装置
JP6870072B2 (ja) * 2016-09-23 2021-05-12 アップル インコーポレイテッドApple Inc. ネットワークタイミング同期
US20210264426A1 (en) * 2017-01-25 2021-08-26 State Farm Mutual Automobile Insurance Company Blockchain based asset access
US10824746B1 (en) * 2017-01-25 2020-11-03 State Farm Mutual Automobile Insurance Company Systems and methods for controlled access to blockchain data
EP3425845A1 (de) * 2017-07-05 2019-01-09 Siemens Aktiengesellschaft Verfahren und vorrichtung zum erzeugen eines kryptographischen zeitstempels für ein digitales dokument auf mehrheitsbasis
US11171791B2 (en) * 2019-01-15 2021-11-09 0Chain, LLC Systems and methods of aggregate signing of digital signatures on multiple messages simultaneously using key splitting
US11979490B2 (en) * 2017-10-24 2024-05-07 0Chain Corp. Non-fungible token blockchain processing
US20190197130A1 (en) * 2017-12-21 2019-06-27 Microsoft Technology Licensing, Llc Ensuring consistency in distributed incremental content publishing
KR102610127B1 (ko) * 2018-04-26 2023-12-04 주식회사 넥슨코리아 전자 지갑을 이용한 암호화폐의 거래 서비스를 제공하는 장치 및 방법
CN108876332B (zh) * 2018-06-04 2020-09-22 清华大学 一种基于生物特征标记认证的区块链安全交易方法及装置
US11153070B2 (en) * 2018-09-11 2021-10-19 International Business Machines Corporation Access to data broadcast in encrypted form based on blockchain
GB2585816A (en) * 2018-12-12 2021-01-27 Univ York Proof-of-work for blockchain applications
SG11202106071UA (en) * 2018-12-14 2021-07-29 Sony Group Corp Communication network node, methods, and a mobile terminal
US20200210584A1 (en) * 2018-12-31 2020-07-02 Shape Security, Inc. Deterministic Reproduction of Client/Server Computer State or Output Sent to One or More Client Computers
ES2854289T3 (es) * 2019-01-16 2021-09-21 Siemens Ag Procedimiento, equipos y sistema para proporcionar registros de datos con seguridad protegida
AU2020217563A1 (en) * 2019-02-05 2021-09-30 Ethopass, Llc Security system and related methods
EP3935586A1 (en) * 2019-03-04 2022-01-12 nChain Licensing AG Method of using a blockchain
EP3713189A1 (de) * 2019-03-22 2020-09-23 Siemens Aktiengesellschaft Intrusionserkennung bei computersystemen
EP3716570B1 (en) * 2019-03-29 2022-07-27 Mitsubishi Electric R&D Centre Europe B.V. Computational puzzles against dos attacks

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102017578A (zh) * 2008-05-09 2011-04-13 高通股份有限公司 用于在令牌与验证器之间进行认证的网络助手
CN107534997A (zh) * 2015-04-16 2018-01-02 瑞典爱立信有限公司 网络节点中的向设备提供对网络的访问的方法
CN108270821A (zh) * 2016-12-30 2018-07-10 深圳瀚德创客金融投资有限公司 用于区块链网络中的区块生成方法和网络节点
CN106850603A (zh) * 2017-01-19 2017-06-13 北京洋浦伟业科技发展有限公司 一种白盒密码双向身份认证方法、终端、服务端及系统
CN107888615A (zh) * 2017-12-01 2018-04-06 郑州云海信息技术有限公司 一种节点注册的安全认证方法

Also Published As

Publication number Publication date
CN113632435A (zh) 2021-11-09
EP3716570A1 (en) 2020-09-30
TWI770483B (zh) 2022-07-11
US20220116418A1 (en) 2022-04-14
WO2020202780A1 (en) 2020-10-08
KR20210127971A (ko) 2021-10-25
JP2022517046A (ja) 2022-03-03
JP7427689B2 (ja) 2024-02-05
US11785043B2 (en) 2023-10-10
EP3716570B1 (en) 2022-07-27
KR102581039B1 (ko) 2023-09-20
TW202037125A (zh) 2020-10-01

Similar Documents

Publication Publication Date Title
Khan et al. IoT security: Review, blockchain solutions, and open challenges
Yang et al. Security vulnerabilities in LoRaWAN
Snoeren et al. Hash-based IP traceback
US8745723B2 (en) System and method for providing unified transport and security protocols
US20150067796A1 (en) Method for statistical object identification
US7139679B1 (en) Method and apparatus for cryptographic protection from denial of service attacks
Zhang et al. Shortmac: efficient data-plane fault localization.
CN113632435B (zh) 抵抗dos攻击的计算谜题
Cheng et al. Opportunistic piggyback marking for IP traceback
Heer et al. Alpha: an adaptive and lightweight protocol for hop-by-hop authentication
Lee et al. The case for in-network replay suppression
Raguvaran Spoofing attack: Preventing in wireless networks
Liu et al. AEH-MTD: Adaptive moving target defense scheme for SDN
EP3766223B1 (en) Defeating man-in-the-middle attacks in one leg of 1+1 redundant network paths
CN114826602B (zh) 安全感知的时间敏感网络调度方法、系统、装置及介质
Garai et al. IOT Securities: A Review
Huang Loft: Low-overhead freshness transmission in sensor networks
CN115426116B (zh) 一种基于动态密钥的加密哈希跳变方法
Ming-Hao The security analysis and attacks detection of OSPF routing protocol
Faraj et al. ZIRCON: Zero-watermarking-based approach for data integrity and secure provenance in IoT networks
Narayanan et al. TLS cipher suite: Secure communication of 6LoWPAN devices
Ansa et al. A proactive DOS filter mechanism for delay tolerant networks
Mahlous A defense framework against DDoS in a multipath network environment
Zhang et al. Privacy-Preserving Traceable Encrypted Traffic Inspection in Blockchain-based Industrial IoT
Ansa et al. Combating Intra-Region DoS Attacks in Delay Tolerant Networks using Energy-Efficient Mechanisms

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