[go: up one dir, main page]

CN113196703B - 保护计算机网络免受中间人攻击的系统和方法 - Google Patents

保护计算机网络免受中间人攻击的系统和方法 Download PDF

Info

Publication number
CN113196703B
CN113196703B CN201980083274.2A CN201980083274A CN113196703B CN 113196703 B CN113196703 B CN 113196703B CN 201980083274 A CN201980083274 A CN 201980083274A CN 113196703 B CN113196703 B CN 113196703B
Authority
CN
China
Prior art keywords
node
nodes
key
attack
value
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
CN201980083274.2A
Other languages
English (en)
Other versions
CN113196703A (zh
Inventor
伊利亚·杜宾斯基
尼尔·切尔沃尼
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.)
Source Ltd
Original Assignee
Source Ltd
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 Source Ltd filed Critical Source Ltd
Publication of CN113196703A publication Critical patent/CN113196703A/zh
Application granted granted Critical
Publication of CN113196703B publication Critical patent/CN113196703B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • 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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • 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
    • 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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • 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/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/3239Cryptographic 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 non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/3263Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • 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/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing

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)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种检测对包括多个节点的计算机网络的攻击的系统和方法,该方法包括:以分布式账本配置将多个节点彼此关联;由多个节点中的请求节点产生用于设置至少一个密钥导出参数的值的请求;在多个节点的子集当中执行关于该请求的有效性的信任投票;以及根据该信任投票检测对多个节点中至少一个节点的攻击。

Description

保护计算机网络免受中间人攻击的系统和方法
发明领域
本发明大体上涉及计算机网络。更具体地,本发明涉及保护计算机网络免受诸如中间人攻击(man-in-the-middle attack)的攻击。
发明背景
通过可能被破坏的通信网络进行安全的数据交换可能需要交换加密密钥或在通信信道的任一端独立生成加密密钥的能力。这在连接装置的世界(例如,可以交换数据的装置,诸如计算机、家用电器、运输设备等)中尤为重要,在该世界中,需要受保护的通信的实体的数量正在迅速增长。
如本领域中已知的用于生成一次性密钥的方法通常假定网络中的一个或更多个计算装置以安全的方式被初始化,并且根据预定义的算法导出用于特定数据交易的一次性安全密钥。
例如,在商业组织(例如,购物中心)的计算机网络中关联的销售点(POS)终端可以被预加载有主密钥。第一终端可以根据预定义的参数(被称为密钥导出参数(KDP))从其主密钥导出一次性安全密钥。该过程通过装置对应方(例如,通过第二终端,通过终端管理系统等)独立地重复,并且独立导出的密钥被用于解密来自第一终端的安全通信。
第一终端可以从主密钥导出一次性密钥所基于的KDP例如可以是顺序参数,诸如与消息计数器上的消息相关联的序列号、金融交易的序列号,等等。
如本领域中已知的,中间人(MITM)攻击是这样的一种攻击,其中犯罪者秘密中继并可能更改认为他们是直接相互通信的两方之间的通信。在以上示例中,犯罪者可能已经破坏了网络的一个或更多个计算装置(例如,POS终端,终端管理系统等)与银行服务器之间的通信信道,并且可能正在这些各方之间中继消息。
由于中继的消息仍可能通过一次性安全密钥进行加密,因此,犯罪者可能仍无法解密其内容。因此,犯罪者可能尝试注入密钥导出参数,以确定至少一个一次性密钥的值,从而能够解密中继消息。这种类型的攻击在本领域中称为目标密钥攻击(targeted-keyattack)或选定密钥攻击。
用于分发密钥导出参数(KDP)的可商购解决方案依赖于用于分发密钥导出参数的集中式方案(例如,通过中央服务器)或完全可预测的方案,诸如顺序记数法。这样的配置特别容易受到目标密钥攻击,因为犯罪者可能只需要非法侵入或攻击计算机网络的单个节点,或者充当中间人以成功将密钥导出参数注入到节点之间的通信并以不可检测的方式访问网络上的加密数据业务。
因此需要一种安全共享密钥导出参数的系统和方法。
发明概述
本发明的实施例包括一种用于在计算机网络的节点之间生成和共享对等式(peer-to-peer)安全密钥的系统和方法。各实施例可以使用主密钥值来初始化网络节点,产生用于导出一次性安全密钥的KDP,并且通过利用分布式账本技术(distributed ledgertechnology)来由计算机网络的两个或更多个节点安全地共享KDP,如本文中所说明的。因此,各实施例可以以免受MITM KDP和/或安全密钥注入攻击的方式,允许密钥导出参数的随机生成和安全分发。
本发明的实施例可以包括一种检测对包括多个节点的计算机网络的攻击的系统和方法。该方法可以包括:
以分布式账本配置将多个节点彼此关联;
由多个节点中的请求节点产生用于设置至少一个密钥导出参数的值的请求;
在多个节点的子集当中执行关于该请求的有效性的信任投票;以及
根据该信任投票检测对多个节点中的至少一个节点的攻击。
可以实现本发明的实施例以检测和/或防御针对计算机网络的攻击,其中该攻击可以是中间人(MITM)攻击、选定密钥攻击和目标密钥攻击中的一种。
各实施例可以包括向多个节点中的每个节点加载专有的专用节点密钥。第一节点可以被配置为通过以下方式产生用于设置至少一个密钥导出参数的值的请求:
选择至少一个密钥导出参数的值;
向除第一节点之外的多个节点发送请求消息;以及
使用专有的专用节点密钥对请求消息进行签名。
至少一个第二节点可以被配置为:
验证请求节点对请求的签名;以及
基于验证,将密钥导出参数值存储在分布式账本的存储在第二节点处的本地副本的条目中。
根据一些实施例,可以向多个节点中的每个节点加载主密钥。至少一个第一节点可以:
根据主密钥并且根据存储在分布式账本的在第一节点处的本地副本上的密钥导出参数导出安全密钥;
根据导出的密钥对消息进行加密;以及
将加密的消息与分布式账本条目的标识一起发送到计算机网络中的至少一个第二节点。
根据一些实施例,关于所标识的分布式账本条目中的密钥导出参数值的有效性,至少一个第二节点可以请求在节点的子集中执行信任投票。如果信任投票通过,则第二节点可以根据密钥导出参数值来导出安全密钥并解密加密的消息。如果信任投票失败,则第二节点可以将密钥导出参数值标识为与计算机网络上的可疑攻击有关,并对其执行至少一种防范措施。
可以从包括例如以下措施的列表中选择防范措施:产生关于可疑攻击的通知,阻止源自第一节点的至少一个消息,隔离源自第一节点的至少一个消息,以及通过除第一节点之外的其他节点,产生用于改变至少一个密钥导出参数的值的请求。
该计算机网络可以包括同构网络拓扑的多个分开的实体。每个实体可以包括一个或更多个节点,并且所有实体的节点都以分布式账本配置进行关联。
第一同构网络实体的至少一个第一节点可以通过安全连接通信地连接到分开的第二同构网络实体的至少一个第二节点。例如,同构网络实体之间的安全网络连接可以包括本领域中已知的任何已知的物理或逻辑网络安全模块(例如,防火墙,非军事化区网络(DMZ)等),以促进与分布式账本配置30的信任投票相关联的消息的安全业务。
根据一些实施例,至少一个第一节点和至少一个第二节点可以被实现为虚拟专用网(VPN)中的节点。安全网络连接可以通过计算机网络执行。
另外地或替代地,至少一个第一节点和至少一个第二节点可以通过与计算机网络分开的安全网络连接通信地连接。
该计算机网络可以包括与同构网络拓扑的多个实体分开的至少一个处理中心。在一些实施例中,产生用于设置至少一个密钥导出参数的值的请求可以由处理中心执行。
本发明的实施例可以包括用于检测和/或转移对计算机网络的攻击的系统,该计算机网络可以包括多个节点。多个节点中的每个节点可以包括:
非暂时性存储器装置,其中存储了指令代码模块,以及
处理器,该处理器与存储器装置相关联并且被配置为执行指令代码模块。在执行指令代码模块时,处理器可以进一步被配置为执行检测和/或转移对计算机网络的攻击的至少一种方法。
本发明的实施例可以包括一种由至少一个处理器检测对计算机网络的攻击的方法,该计算机网络可以包括多个节点。该方法可以包括:
创建记录多个节点之间的交易的分布式账本;
由至少一个节点创建用于设置至少一个密钥导出参数的值的请求;
在多个节点的子集当中对该请求是否有效进行投票;以及
如果投票结果是该请求无效,则检测到攻击。
附图简述
在说明书结论部分中特别指出并清楚地要求保护被视为本发明的主题。然而,关于本发明的组织和操作方法,以及其目的、特征和优点,可以通过在阅读附图时参考以下详细描述而得到最好的理解,其中:
图1是描绘根据一些实施例的可以被包括在用于保护计算机网络免受攻击(诸如中间人攻击)的系统中的计算装置的框图;
图2是描绘如本领域中已知的用于密钥导出参数的集中式分发的系统的框图;
图3是描绘根据一些实施例的用于保护计算机网络免受攻击(诸如中间人攻击)的系统的框图;
图4是描绘可以被包括在计算机网络的一个或更多个节点内的数据元素的框图,
图5是描绘根据一些实施例的用于保护计算机网络免受中间人攻击的方法的流程图。
应当理解,为了图示的简单和清楚起见,附图中所示的元素不一定按比例绘制。例如,为了清楚起见,一些元素的尺寸可能相对于其他元素被放大。此外,在认为适当的情况下,附图标记可以在附图之间重复,以指示对应或相似的元素。
本发明的详细描述
在以下详细描述中,阐述了许多具体细节以便提供对本发明的透彻理解。然而,本领域技术人员将理解,可以在没有这些具体细节的情况下实施本发明。在其他情况下,没有详细描述众所周知的方法、过程和部件,以免模糊本发明。关于一个实施例描述的一些特征或元素可以与关于其他实施例描述的特征或元素组合。为了清楚起见,可能不会重复相同或相似特征或元素的讨论。
尽管本发明的实施例在这方面不受限制,但是利用诸如例如“处理”、“计算(computing)”、“计算(calculating)”、“确定”、“建立”、“分析”、“检查”等的术语,可以指的是计算机、计算平台、计算系统或其他电子计算装置的操作和/或过程,其操控被表示为计算机的寄存器和/或存储器内的物理(例如,电子)量的数据和/或将其转换为类似地表示为计算机的寄存器和/或存储器内的物理量的其他数据或可存储指令以执行操作和/或过程的非暂时性存储介质的其他信息。尽管本发明的实施例在这方面不受限制,但是本文使用的术语“多个(plurality)”和“多个(a plurality)”可以包括例如“多个(multiple)”或“两个或更多个”。在整个说明书中可以使用术语“多个(plurality)”或“多个(a plurality)”来描述两个或更多个部件、装置、元素、单元、参数等。当在本文中使用时,术语“集(set)”可以包括一个或更多个项目。除非明确说明,否则本文描述的方法实施例不受特定顺序或序列约束。另外,所描述的方法实施例中的一些方法实施例或其元素可以在同一时间点同时发生或同时执行。
本发明的实施例公开了一种用于在计算机网络的节点之间生成和共享对等式安全密钥的方法和系统,以保护网络免受MITM攻击,特别是免受本领域通常称为选定密钥攻击的攻击。术语“节点”在本文中用于指代计算装置(例如,如本文中关于图1所详述的),其可以被包括在计算机通信网络内,并且可以与网络中的其他这样的节点互连。例如,节点可以是POS终端、家用装置(例如恒温器,冰箱)、汽车中的部件、车辆本身等。节点可能由于多种原因相互通信(例如,汽车交换位置定位,家用电器发送状态信息等)。
现在参考图1,图1是描绘根据一些实施例的计算装置的框图,该计算装置可以被包括在用于保护计算机网络免受中间人攻击的系统的实施例中。
计算装置1可以包括控制器2(其可以是例如中央处理单元(CPU)处理器、芯片或任何合适的计算或计算性装置)、操作系统3,存储器4、可执行代码5、存储系统6、输入装置7和输出装置8。控制器2(或可能跨多个单元或装置的一个或更多个控制器或处理器)可以被配置为执行本文描述的方法的全部或一部分,和/或执行或充当各种模块、单元等。可以包括不止一个计算装置1,并且一个或更多个计算装置1可以充当根据本发明的实施例的系统的部件。
操作系统3可以是或可以包括被设计和/或配置为执行任务的任何代码段(例如,类似于本文所述的可执行代码5的代码段),该任务涉及协调、调度、仲裁、监督、控制或以其他方式管理计算装置1的操作,例如,安排软件程序或任务的执行或使软件程序或其他模块或单元能够进行通信。操作系统3可以是商业操作系统。将注意,操作系统3可以是可选部件,例如,在一些实施例中,系统可以包括不需要或不包括操作系统3的计算装置。
存储器4可以是或可以包括例如随机存取存储器(RAM)、只读存储器(ROM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双倍数据速率(DDR)存储器芯片、闪存、易失性存储器、非易失性存储器、缓冲存储器、缓冲器、短期存储器单元、长期存储器单元或其他合适的存储器单元或存储单元。存储器4可以是或者可以包括多个可能不同的存储器单元。存储器4可以是计算机或处理器非暂时性可读介质,或者是计算机非暂时性存储介质,例如,RAM。
可执行代码5可以是任何可执行代码,例如,应用、程序、过程、任务或脚本。可执行代码5可以由控制器2执行,可能在操作系统3的控制下。例如,根据如本文进一步描述的一些实施例,可执行代码5可以是可以保护计算机网络免受中间人攻击的应用。尽管为了清楚起见,在图1中示出了单条可执行代码5,但是根据本发明一些实施例的系统可以包括与可执行代码5相似的多个可执行代码段,该多个可执行代码段可以被加载到存储器4中并使控制器2执行本文描述的方法。
存储系统6可以是或可以包括例如本领域已知的闪存、本领域已知的在微控制器或芯片内部或嵌入微控制器或芯片的存储器、硬盘驱动器、CD-可记录(CD-R)驱动器、蓝光盘(BD)、通用串行总线(USB)装置或其他合适的可移动和/或固定存储单元。内容可以存储在存储系统6中,也可以从存储系统6加载到存储器4中,然后由控制器2在存储器4中对内容进行处理。在一些实施例中,可以省略图1所示的一些部件。例如,存储器4可以是具有存储系统6的存储容量的非易失性存储器。因此,尽管被示为分开的部件,但是存储系统6可以被嵌入或包括在存储器4中。
输入装置7可以是或可以包括任何合适的输入装置、部件或系统,例如,可拆卸的键盘或小键盘、鼠标等。输出装置8可以包括一个或更多个(可能是可拆卸的)显示器或监视器、扬声器和/或任何其他合适的输出装置。如框7和8所示,任何适用的输入/输出(I/O)装置都可以连接到计算装置1。例如,可以在输入装置7和/或输出装置8中包括有线或无线网络接口卡(NIC)、通用串行总线(USB)装置或外部硬盘驱动器。将认识到,如框7和8所示,任何合适数量的输入装置7和输出装置8可以可操作地连接到计算装置1。
根据本发明的一些实施例的系统可以包括部件,诸如但不限于多个中央处理单元(CPU)或任何其他合适的多用途或特定处理器或控制器(例如,类似于控制器2的控制器)、多个输入单元、多个输出单元、多个存储器单元和多个存储单元。
现在参考图2,图2描绘了一种本领域中已知的用于密钥导出参数的集中式分发的系统。如图2所示,计算机网络20可以包括可以通过有线和/或无线网络部件进行通信互连的一个或更多个计算装置,该有线和/或无线网络部件包括例如:计算机网络中的网络集线器、交换机、路由器和网关,如本领域中已知的。
例如,元素T(例如,T1-A至T3-C)可以是终端计算机,并且每个可以是或可以包括至少一个计算装置(例如,图1的一些或全部部件)。终端T1-A至T3-C可以例如经由局域网(LAN),诸如因特网的广域网(WAN)、蜂窝网络等互连。
在另一个示例中,可以将T1-A至T3-C划分为较小的同构本地网络。例如:T1-A、T1-B和T1-C可以是与(例如,商户M1的)第一组织计算机网络有关的终端,T2-A、T2-B和T2-C可以是与(例如,商户M2的)第二组织计算机有关的终端以及T3-A、T3-B和T3-C可以是与(例如,商户M3的)第三组织计算机网络有关的终端。
本文关于本地网络(例如,M1)使用术语“同构的(homogenous)”来指代可以被包括在本地网络中的所有计算装置所共有的至少一个参数。例如,本地网络M1在以下意义上可以是同构的:它可以包括单个网络段,该单个网络段具有到至多一个网络交换和/或路由元件的直接连接;以及它可以被包括在单个地址空间中,诸如本领域中已知的互联网协议(IP)网络的一个子网中。
在另一示例中,至少一个计算装置T(例如,T1-A至T3-C)可以连接至处理中心10。关于计算装置的示例,即作为安装在一个或更多个商户的计算机网络上的POS终端的T1-A至T3-C,处理中心10可以是银行服务器,其被配置为接收商业交易的至少一个参数(例如,信用卡的个人标识码(PIN))。在典型的实施方式中,处理中心10可以是安全性良好的计算系统,其可能难以被渗透或入侵(例如,通过物理地接入其中的通信线路或信道)并且可以用于分发安全密钥和/或KDP。
如图2所示,至少一个计算系统(例如,T1-A至T3-C、处理中心10)可以将安全密钥和/或KDP R1分发给网络20中的一个或更多个计算装置。犯罪者P1(在此由计算装置P1表示;犯罪者P1通常是诸如图1中可能由人远程操作的计算装置)可能会入侵或攻击分发安全密钥和/或KDP的第一计算装置与第二目标计算装置之间的通信信道,以建立中间人(MITM)配置,如“X”符号所示。在这种配置中,犯罪者P1可以改变第一计算装置和第二计算装置之间的通信。具体地,犯罪者P1可以改变或注入可能不同于R1的密钥导出参数(KDP)R1',以设置至少一个导出的安全密钥的值,并因此能够解密可以在第一计算装置和第二计算装置之间传递的数据。
现在参考图3,图3是描绘根据一些实施例的用于保护计算机网络(例如,计算机网络20)免受攻击(诸如MITM攻击)的系统100的框图。进一步参考图4,该图4是描绘可以被包括在计算机网络20的一个或更多个节点T内的数据元素的框图。如图3所示,系统100中包括的计算机网络20的结构可以与本文中关于图2所述的结构基本上相同。
根据一些实施例,每个节点T(例如,T1-A至T3-C)可以被初始化或加载有秘密主密钥(例如,图4的元素50A),该秘密主密钥可以用于导出一次性安全密钥(例如,图4的元素50C),如本领域中已知的。
另外地或替代地,每个节点T也可以(例如,在图1的存储装置6上)存储单独的、专有的专用节点密钥(例如,图4的元素40B)和受信任的公共根证书(例如,图4的元素40A),它们可用于在节点T之间发送签名消息,如本领域中已知的并且如本文中所说明的。
保护计算机网络20免受诸如MITM攻击的攻击可以基于经由分布式账本30配置在两个或更多个计算装置T(例如,T1-A至T3-C)之间共享信息。
如本领域中已知的,分布式账本30可以是在分散网络(例如,网络20)的节点T之间共享、复制和同步的分布式数据库,而无需使用中央授权机构或第三方中介者。如区块链和/或分布式账本数据库领域的技术人员所知,术语“分布式”在本文中用于指示数据库不是由单个计算装置或实体维护或存储,而是由两个或更多个节点T累积地保存(例如,在多个副本上)。
分布式账本30可以记录交易(例如,网络20中的节点T之间的数据交换),并且可以将记录的数据存储在分布式数据库的本地副本中。对于某个装置,术语“本地”在本文中用于暗指将记录的数据存储在可能包括在特定计算装置(例如,参与分布式账本30的特定节点T)中或与该特定计算装置相关联的存储装置(例如,图1中的元素6)或存储器装置(例如,图1中的元素4)上。
分布式账本中的每个记录都可以具有时间戳和/或唯一的加密签名,从而使账本成为网络中可审核的交易历史。
如本领域中已知的,参与账本30的节点T可以支配对账本30中的记录的更新并就该更新达成共识。例如,第一节点T可以发起投票,并且将投票请求传达给其他参与节点T的至少一个子集。节点T的子集中的每个节点可以接收该请求并通过(例如,用二进制正确/错误答案)响应所请求的投票来进行投票。节点T的子集中每个节点可以(例如,从所有其他投票节点T)接收它们各自的响应(例如,图4的元素60A),并且可以在总体投票计数(例如,图4的元素60B)中累积投票响应。因此,节点T的子集中的每个节点可以根据投票计数60B中的大多数投票来(例如,以单独的,分布式的方式)确定投票是否已经通过或失败。节点T的子集中的每个节点可以随后根据投票的结果(例如,通过或失败)来更新它们的分布式数据库的本地副本。
管理用户可以创建分布式账本配置30,并(例如,经由图1的输入装置7)将网络20的一个或更多个节点T(例如,T1-A、T1-B等)配置成包括在分布式账本配置30中。
一个或更多个节点T(例如,T1-A至T3-C)可以(例如,由管理员)配置为参与分布式账本30配置或包括在其中。如本领域中已知的,就每个节点可以(例如,由管理员)配置为识别可能源自参与账本30的所有其他关联节点T的数据传输的意义而言,每个参与节点可以与分布式账本30中的每个其他参与节点相关联。
参与分布式账本30的每个节点T可以保存关于网络20的KDP和/或安全密钥的分布式信息。节点T可以(例如,经由网络20)互连并且可以在它们之间进行通信,从而如分布式账本领域中已知的那样,使与网络20的分布式KDP 50B和/或安全密钥相关联的信息同步。
至少一个节点T可以包括存储装置(例如,图1中的元素6)或可以与存储装置相关联,节点T可以在该存储装置上维护数据库。数据库可以包括至少一个条目,该条目包括与分布式KDP(例如,图4的元素50B)相关联的信息的本地副本。在一些实施例中,分布式KDP信息50B可以包括至少一个特定KDP的值和相应的时间戳,时间戳对应于节点T可能已经接收到特定KDP的时间。
如图3所示,计算机网络20的计算装置(例如,节点T、处理中心10等)可以选择至少一个密钥导出参数(KDP)的值并产生请求R2以设置KDP值,从而产生一次性导出的安全密钥的值。
请求计算装置(例如,节点T)可以将包括所请求的值的请求消息R2发送到分布式账本30中的其他节点T(例如,除请求节点T之外),并且可以如本领域中已知的用其专有的专用节点密钥40B以及受信任的根证书40A对请求消息进行签名。
例如,请求节点(例如,T1-A)可以使用专用于签署外发消息的专有的专用节点密钥40B来对请求消息R2进行签名。如本领域中已知的,专有的专用节点密钥40B本身可以由诸如证书颁发机构(CA)的受信任根实体的证书40A进行签名。接收实体(例如,除请求节点T1-A之外的节点T1-B)可以接收请求消息R2,并可以通过以下至少一种方式来验证请求节点T1-A的签名:
如果接收实体T1-B知道并信任请求节点T1-A的专有的专用节点密钥40B,则T1-B可以基于请求节点T1-A的专有的专用节点密钥40B的值来验证请求消息R2的真实性。
如果接收实体T1-B不知道和/或不信任请求节点T1-A的专有的专用节点密钥40B,则T1-B可以基于受信任根实体(例如,证书颁发机构)的证书40A验证请求消息R2的真实性。
参与分布式账本30的节点T的子集(例如,两个或更多个节点)可以执行或参与关于请求的有效性的信任投票(在本领域中也称为共识投票(consensus vote))。
例如,如果请求R2是使用受信任的根证书40A和/或由第一请求节点T(例如,T1-A)签名的有效专用密钥40B进行签名的,则参与共识投票的第二节点T(例如,T2-B)可能投票同意变更后的KDP(例如,投票:“真”)。以一种补充的方式,如果请求没有如所说明的那样被正确签名,则第二节点T(例如,T2-B)可以投票反对变更(例如,投票:“假”)。
如本文详细说明的,参与投票的每个节点T可以单独地并且以分布式的方式对投票响应60A进行计数并且(例如,根据投票计数60B中的大多数选票)确定投票是否已经通过或失败。
因此,系统100可以总体上确定用于设置KDP值的请求是否源自合法请求(例如,由计算机网络20的节点T,诸如节点T1-A至T3-C或处理中心10请求)或者它是否源自犯罪者P1发起的诸如MITM攻击的攻击,该确定根据以下信任投票或共识投票的结果:
如果投票失败(例如,大多数节点投票反对变更),则分布式账本30的成员节点T可以确定该请求无效,并且确定对至少一个节点T的攻击(例如,MITM攻击)已发生。
如果共识投票通过或成功(例如,表明合法的投票多于表明攻击的投票),则分布式账本30的成员节点T可以确定设置KDP的请求是合法的。
参与投票的节点中的至少一个第二节点T可以验证请求节点对请求R2的签名。例如,第二节点T可以验证用于对请求R2进行签名的密钥是由根证书颁发机构(CA)签署的。至少一个第二节点T随后可以将请求R2中包含的KDP值存储在分布式账本的本地副本的条目50B中(例如,在图1的元素6上)。
通过比较图2和图3,本发明相对于现有技术(如图2中所描绘的)的改进(如图3的示例中所描绘的)是显而易见的,如本文详细说明的。
如图2和图3所示,计算机网络20可以包括同构网络拓扑的两个或更多个分开的实体(例如,M1、M2、M3),每个实体包括一个或更多个节点(例如,用于M1的T1-A、T1-B和T1-C等)。例如,M1可以是与特定商户或商店相关联的LAN,并且T1-A、T1-B和T1-C可以是包括在M1的LAN中的POS终端。
在一些实施例中,计算机网络20可以包括与同构网络拓扑的两个或更多个实体(例如,商户网络M1、M2、M3)分开的至少一个处理中心10(例如,银行服务器)。如本文中所说明的,并且如在图2和图3的示例中所描绘的,在网络20的一些集中星座中,处理中心10可以产生请求(R1,R2),以设置至少一个密钥导出参数的值。
在图3中,所有实体的不同节点T可以被配置为参与分布式账本配置30,或者与分布式账本配置30相关联或链接在分布式账本配置30中,如本文所说明的。例如,第一同构网络实体(例如,M1)的至少一个计算系统或节点T(例如,T1-A)可以安全地连接(例如,C1)到第二同构网络实体(例如,M2)的至少一个计算系统或节点T(例如,T2-A)。
如本领域已知的,同构网络实体(例如,M1、M2、M3)之间的安全网络连接(例如,C1、C2)可以包括任何已知的物理或逻辑网络安全模块(例如,防火墙,非军事区网络(DMZ)等),以促进与分布式账本配置30的信任投票相关联的消息的安全业务。在一些实施例中,安全网络连接(例如,C1、C2)可以仅促进与分布式账本配置30的信任投票有关的消息的业务,并且可以不在计算机网络20上传送与其他通信有关的消息。
例如,可以将分开的同构网络实体(例如,分别是M1和M2)的至少两个节点(例如,T1-A和T2-A)实现为虚拟专用网(VPN)中的节点,并且安全网络连接C(例如C1、C2)可以通过现有的公共互联网连接进行通信。在另一示例中,T1-A和T2-A可以被实现为免许可证的亚GHz无线广域网(WAN)中的节点。在又一个示例中,T1-A和T2-A可以被实现为VPN网络中的节点,并且安全网络连接C可以使用无线调制解调器进行通信以利用与处理中心10的互联网连接分开的互联网连接。
附加地或替代地,至少两个装置(例如,属于不同的同构网络拓扑实体M的装置)可以彼此直接通信,而不是通过网络20进行通信。
如图2和图3所示,犯罪者P1可能劫持或渗透(例如,未经许可或通过假冒来参与)计算机网络20的两个实体之间的通信连接链路或线路(例如,在诸如路由器、交换机、集线器等的计算机网络实体之间进行连接的物理电缆线路),以根据它们的偏好注入KDP。例如,如在两个附图中所描绘的,犯罪者P1可能劫持处理中心10与同构网络实体M1的至少一个节点T之间的通信。犯罪者P1可能因此产生用于在同构网络实体M1上设置KDP的恶意请求(例如,R1'、R2')。
在图2中,代表现有技术的示例,犯罪者P1可能已经成功地注入了R1',并且因此变得能够解密在同构网络实体M1内以及在M1和处理中心10之间传送的消息。在这种情况下,在M1的节点之间实施额外的分布式安全措施(诸如区块链或分布式账本)将无法解决此问题。
相反,如描绘本发明实施例的示例的图3所示,犯罪者P1最初可以设法“欺骗”M1的至少一个终端(例如,T1-A)使之相信请求R2'是合法的,但是,参与分布式账本30的计算装置(例如,终端节点,包括来自M1以外的节点(例如,实体M2和M3的节点T))之间通过安全通信信道(例如,C1、C2)的后续信任投票可以检测到并阻止攻击。例如,M2和M3的节点T可以投票反对R2'中包含的恶意KDP,因为它们尚未从犯罪者P1接收到消息R2',从而导致了反对R2'的KDP的整体投票。参与投票的每个节点T可以独立地对所有其他参与节点T的投票响应60A计数,因此可以单独确定已尝试进行攻击。
为了“欺骗”(例如,注入选定的KDP)同构网络实体(例如,M1)的终端(例如T1-A),犯罪者P1可能需要并发劫持或渗透多个通信连接,以便绕过分布式账本20提供的防御。在此上下文中,术语“并发”用于表示足够接近的时间范围,以防止在经由第二通信连接发起攻击之前,系统100经由第一通信连接识别到攻击并采取先发制人的措施。
例如,犯罪者P1可能需要:
并发劫持处理中心10与M1之间的通信(如图所示)以及处理中心10与M2之间的通信;或者
并发劫持处理中心10与M1(如图所示)和C1(在M1与M2之间)之间的通信,等等。
该要求大大降低了成功攻击的可能性,并且提供了优于现有技术的安全性。
如本文所说明的,分布式账本30的节点T可以将可以包含在请求(例如,图3的R2)中的KDP值50B存储在相关联的存储装置(例如,图1的元素6)上的分布式账本的本地副本的条目中,如本领域中已知的。在一些实施例中,在网络20上的至少一个数据交易期间或之后,分布式账本30的节点T可以对至少一个本地存储的KDP值50B的有效性执行信任投票或共识投票。
例如,第一节点T可以(例如,从请求节点T,从处理中心10,从犯罪者P1等)接收用于设置KDP值的请求(例如,R2、R2'),并且可以在分布式账本30的本地副本的条目中存储值50B。
可能需要第一节点T向网络20中的第二节点T发送加密的消息。因此,第一节点T可以根据其主密钥50A并根据本地存储的KDP 50B来导出安全密钥50C,以产生导出的安全密钥,如本领域中已知的。如本领域中已知的,第一节点T可以随后根据导出的安全密钥50C来加密消息。
根据一些实施例,第一节点T然后可以向第二节点T发送加密的消息(与分布式账本条目的标识(例如,接收到对应请求R2的时间戳)一起发送,或者结合分布式账本条目的标识进行发送,或者在与分布式账本条目的标识相同的通信中发送)。
第二节点T可以向分布式账本30的节点的至少一个子集发送请求消息,包括用于从节点T的子集执行信任投票或共识投票的请求,以证实标识的分布式账本条目中的密钥导出参数(KDP)值的有效性。
如本文所说明的,如果第二节点T确定信任投票已通过或成功(例如,节点子集中超过50%的节点T同意KDP的值,或投票认为KDP合法),则第二节点T可以根据KDP值50B并根据其自己的主密钥50A导出安全密钥50C,以解密加密的消息。
另一方面,如本文所说明的,如果第二节点T确定信任投票失败,或确定KDB不合法(例如,节点子集的50%或更少的节点T同意KDP值或投票认为KDP合法),则第二节点T可以将KDP值标识为与对计算机网络20的可疑攻击(例如,MITM攻击)有关。
在一些实施例中,已经将KDP标识为源自诸如MITM攻击的可疑攻击,第二节点T可以采取至少一种防范措施来击退或防御可疑攻击。
例如,第二节点T可以产生关于可疑的MITM攻击的警告通知(例如,经由图1的输出装置8的消息),包括例如与攻击的起源相关联的至少一个参数(例如,请求节点的标识、第一节点的标识等)、攻击时间(例如,包含在分布式账本的本地副本条目中的时间戳)等。
在一些实施例中,第二节点T可以向管理用户显示警告通知的内容(例如,在图1的输出装置8中包括的用户界面上显示),该管理用户可以根据他们的考虑采取所需的动作。
替代地或附加地,计算机网络20中的至少一个计算装置(例如,除第二节点T之外的第三节点T)可以接收警告通知,并且可以在存储装置(例如,图1的存储装置6)上存储警告通知的内容,诸如可疑攻击的定时和涉及的节点的属性。
第三节点T可以被配置为随后根据所存储的警告通知来应用安全措施。例如,第三节点T可以执行以下至少一项:
阻止可能源自第一节点的至少一个消息;
隔离源自第一节点的至少一个消息;
产生用于更改至少一个未被破坏的KDP的值的请求(例如,R2);
向一个或更多个其他节点T产生关于从第一节点T接收到的消息的第二警告通知,等等。
现在参考图5,图5是描绘根据一些实施例的用于检测和/或保护包括多个节点T的计算机网络(例如,图3的元素20)免受攻击(例如,MITM攻击)的方法的流程图。
如步骤S1005中所示,多个节点可以(例如,由管理员)以分布式账本配置彼此关联。
如步骤S1010中所示,多个节点T中的请求节点T的至少一个处理器(例如,图1的元素2)可以产生用于设置至少一个密钥导出参数(KDP)的值的请求。
如步骤S1015中所示,如本领域技术人员所已知的,节点T的至少一个处理器2可以在多个节点的子集当中执行关于请求的有效性的信任投票或共识投票。
如步骤S1020中所示,节点T的至少一个处理器2可以根据信任投票来检测对计算机网络20的多个节点中的至少一个节点T的攻击。
本发明的实施例提供了用于通过迫使犯罪者并发劫持或渗透(例如,未经许可或通过假冒进行参与)计算机网络20的多个通信连接链路或线路(例如,在诸如路由器、交换机、集线器等的计算机网络实体之间进行连接的物理电缆线路)来提高计算机通信网络的安全性(例如,抵御MITM攻击)的方法。
根据本发明的实施例,可以检测除MITM攻击之外的攻击、安全漏洞或渗透并对其采取行动。
虽然本文已经说明和描述了本发明的某些特征,但是本领域普通技术人员现在将想到许多修改、替换、改变和等同物。因此,应理解,所附权利要求旨在涵盖落入本发明的真实精神内的所有这些修改和改变。
在下文的一个或多个实施方案中可实现本公开的各方面。
1)一种由至少一个处理器检测对包括多个节点的计算机网络的攻击的方法,所述方法包括:
以分布式账本配置将所述多个节点彼此关联;
由所述多个节点中的请求节点产生用于设置至少一个密钥导出参数的值的请求;
在所述多个节点的子集当中执行关于所述请求的有效性的信任投票;以及
根据所述信任投票检测对多个节点中至少一个节点的攻击。
2)根据1)所述的方法,其中,所述攻击是中间人(MITM)攻击、选定密钥攻击和目标密钥攻击中的一种。
3)根据1)至2)中的任一项所述的方法,包括:向所述多个节点中的每个节点加载专有的专用节点密钥,并且其中,由所述请求节点产生用于设置至少一个密钥导出参数的值的请求包括:
选择至少一个密钥导出参数的值;
向除所述请求节点之外的所述多个节点发送请求消息;以及
使用所述专有的专用节点密钥对所述请求消息进行签名。
4)根据1)至3)中的任一项所述的方法,其中,至少一个其他节点被配置为:
验证所述请求节点对所述请求的签名;以及
基于所述验证,将所述至少一个密钥导出参数的值存储在分布式账本的存储在所述至少一个其他节点处的本地副本的条目中。
5)根据1)至4)中的任一项所述的方法,包括:
向所述多个节点中的每个节点加载主密钥;
由所述请求节点根据所述主密钥并根据存储在所述请求节点处的本地副本上的密钥导出参数来导出安全密钥;
由所述请求节点根据导出的密钥对消息进行加密;
将加密的消息以及分布式账本条目的标识一起发送到所述计算机网络中的所述至少一个其他节点。
6)根据1)至5)中的任一项所述的方法,包括:
由所述至少一个其他节点从节点的所述子集请求关于标识的分布式账本条目中的所述至少一个密钥导出参数的值的有效性的信任投票;
如果所述信任投票通过,则由所述至少一个其他节点根据所述至少一个密钥导出参数的值导出安全密钥并解密加密的消息;
如果所述信任投票失败,则将所述至少一个密钥导出参数的值标识为与所述计算机网络上的可疑攻击有关,并对其执行至少一种防范措施。
7)根据6)所述的方法,其中,从包括以下项的列表中选择所述防范措施:产生关于所述可疑攻击的通知,阻止源自所述请求节点的至少一个消息,隔离源自所述请求节点的至少一个消息,以及由除所述请求节点之外的节点,产生用于改变所述至少一个密钥导出参数的值的请求。
8)根据1)至7)中的任一项所述的方法,其中,所述计算机网络包括同构网络拓扑的多个分开的实体,每个实体包括一个或更多个节点,并且其中,所有实体的节点以分布式账本配置相关联。
9)根据1)至8)中的任一项所述的方法,其中,第一同构网络实体的至少一个第一节点通过安全网络连接通信地连接到分开的第二同构网络实体的至少一个第二节点。
10)根据9)所述的方法,其中,所述至少一个第一节点和所述至少一个第二节点被实现为虚拟专用网(VPN)中的节点,并且其中,所述安全网络连接是通过所述计算机网络执行的。
11)根据9)至10)中的任一项所述的方法,其中,所述至少一个第一节点和所述至少一个第二节点通过与所述计算机网络分开的安全网络连接进行通信连接。
12)根据1)至11)中的任一项所述的方法,其中,所述计算机网络包括与同构网络拓扑的多个实体分开的至少一个处理中心,并且其中,产生用于设置至少一个密钥导出参数的值的请求由所述处理中心执行。
13)一种用于检测对包括多个节点的计算机网络的攻击的系统,其中,每个节点包括:
非暂时性存储器装置,所述存储装置中存储了指令代码模块,以及
处理器,所述处理器与所述存储器装置相关联并且被配置为执行所述指令代码模块,其中,在执行所述指令代码模块时,所述处理器进一步被配置为:
以分布式账本配置将所述多个节点彼此关联;
由所述多个节点中的请求节点产生用于设置至少一个密钥导出参数的值的请求;
在所述多个节点的子集当中执行关于所述请求的有效性的信任投票;以及
根据所述信任投票检测对多个节点中的至少一个节点的攻击。
14)根据13)所述的系统,其中,所述攻击是MITM攻击、选定密钥攻击和目标密钥攻击中的一种。
15)根据13)至14)中的任一项所述的系统,其中,所述多个节点中的每个节点均被加载有专有的专用节点密钥,并且其中,所述请求节点的至少一个处理器被配置为通过以下方式产生用于设置至少一个密钥导出参数的值的请求:
选择至少一个密钥导出参数的值;
向除所述请求节点之外的所述多个节点发送请求消息;以及
使用所述专有的专用节点密钥对所述请求消息进行签名。
16)根据13)至15)中的任一项所述的系统,其中,除所述请求节点之外的至少一个节点的至少一个处理器被配置为:
验证所述请求节点对所述请求的签名;以及
基于所述验证,将所述至少一个密钥导出参数的值存储在分布式账本的存储在其他节点处的本地副本的条目中。
17)根据13)至16)中的任一项所述的系统,其中,所述多个节点中的每个节点被加载有主密钥,并且其中,所述请求节点的至少一个处理器被配置为:
根据所述主密钥并根据存储在所述请求节点处的本地副本上的密钥导出参数来导出安全密钥;
根据导出的密钥对消息进行加密;以及
将加密的消息以及分布式账本条目的标识一起发送到所述计算机网络中的至少一个其他节点。
18)根据13)至17)中的任一项所述的系统,其中,所述至少一个其他节点的至少一个处理器被配置为:
从节点的所述子集请求关于标识的分布式账本条目中的所述至少一个密钥导出参数的值的有效性的信任投票;
如果所述信任投票通过,则根据所述至少一个密钥导出参数的值导出安全密钥并解密加密的消息;以及
如果所述信任投票失败,则将所述至少一个密钥导出参数的值标识为与所述计算机网络上的可疑攻击有关,并对其执行至少一种防范措施。
19)根据18)所述的系统,其中,至少一个处理器被配置为执行从包括以下各项的列表中选择的至少一项防范措施:
产生关于所述可疑攻击的通知;
阻止源自第一节点的至少一个消息;
隔离源自所述第一节点的至少一个消息;以及
由除所述第一节点之外的节点的处理器产生用于改变所述至少一个密钥导出参数的值的请求。
20)根据13)至19)中的任一项所述的系统,其中,所述计算机网络包括同构网络拓扑的多个分开的实体,每个实体包括一个或更多个节点,并且其中,所有实体的节点以分布式账本配置相关联。
21)根据13)至20)中的任一项所述的系统,其中,第一同构网络实体的至少一个第一节点通过安全网络连接通信地连接到分开的第二同构网络实体的至少一个第二节点。
22)根据13)至21)中的任一项所述的系统,其中,所述计算机网络包括与同构网络拓扑的多个实体分开的至少一个处理中心,并且其中,产生用于设置至少一个密钥导出参数的值的请求由所述处理中心执行。
23)一种由至少一个处理器检测对包括多个节点的计算机网络的攻击的方法,所述方法包括:
创建记录所述多个节点之间的交易的分布式账本;
由至少一个节点创建用于设置至少一个密钥导出参数的值的请求;
在所述多个节点的子集当中对所述请求是否有效进行投票;以及
如果所述投票的结果是所述请求无效,则检测到攻击,其中,所述计算机网络包括同构网络拓扑的多个分开的实体,每个实体包括一个或更多个节点,并且其中,第一同构网络拓扑实体的至少一个第一节点经由安全网络连接而连接到第二同构网络拓扑实体的至少一个第二节点。
24)根据23)所述的方法,其中,所述至少一个第一节点和所述至少一个第二节点被实现为虚拟专用网(VPN)中的节点,并且其中,所述安全网络连接是通过所述计算机网络执行的。
25)根据23)所述的方法,其中,所述安全网络连接与所述计算机网络是分开的。

Claims (22)

1.一种由至少一个处理器检测对包括多个节点的计算机网络的攻击的方法,所述方法包括:
以分布式账本配置将所述多个节点彼此关联;
向所述多个节点中的每个节点加载主密钥;
由至少一个第一节点根据所述主密钥并根据存储在所述分布式账本的所述至少一个第一节点处的本地副本上的至少一个密钥导出参数来导出安全密钥;
由所述至少一个第一节点根据所导出的密钥对消息进行加密;
将所加密的消息以及分布式账本条目的标识一起发送到所述计算机网络中的至少一个第二节点;
由所述至少一个第二节点从节点的子集请求关于标识的分布式账本条目中的所述至少一个密钥导出参数的值的有效性的信任投票;
如果所述信任投票通过,则由所述至少一个第二节点根据所述至少一个密钥导出参数的值导出安全密钥并解密加密的消息;
如果所述信任投票失败,则将所述至少一个密钥导出参数的值标识为与所述计算机网络上的可疑攻击有关,并对其执行至少一种防范措施。
2.根据权利要求1所述的方法,其中,所述攻击是中间人(MITM)攻击、选定密钥攻击和目标密钥攻击中的一种。
3.根据权利要求1至2中的任一项所述的方法,包括:向所述多个节点中的每个节点加载专有的专用节点密钥,并且其中,由所述至少一个第一节点产生用于设置至少一个密钥导出参数的值的请求包括:
选择至少一个密钥导出参数的值;
向除所述至少一个第一节点之外的所述多个节点发送请求消息;以及
使用所述专有的专用节点密钥对所述请求消息进行签名。
4. 根据权利要求1至3中的任一项所述的方法,其中,所述至少一个第二节点被配置为:
验证所述至少一个第一节点对所述请求的签名;以及
基于所述验证,将所述至少一个密钥导出参数的值存储在分布式账本的存储在所述至少一个第二节点处的本地副本的条目中。
5.根据权利要求1所述的方法,其中,从包括以下项的列表中选择所述防范措施:产生关于所述可疑攻击的通知,阻止源自所述至少一个第一节点的至少一个消息,隔离源自所述至少一个第一节点的至少一个消息,以及由除所述至少一个第一节点之外的节点,产生用于改变所述至少一个密钥导出参数的值的请求。
6.根据权利要求1至5中的任一项所述的方法,其中,所述计算机网络包括同构网络拓扑的多个分开的实体,每个实体包括一个或更多个节点,并且其中,所有实体的节点以分布式账本配置相关联。
7.根据权利要求6所述的方法,其中,第一同构网络实体的至少一个第一节点通过安全网络连接通信地连接到分开的第二同构网络实体的至少一个第二节点。
8.根据权利要求7所述的方法,其中,所述至少一个第一节点和所述至少一个第二节点被实现为虚拟专用网(VPN)中的节点,并且其中,所述安全网络连接是通过所述计算机网络执行的。
9.根据权利要求7至8中的任一项所述的方法,其中,所述至少一个第一节点和所述至少一个第二节点通过与所述计算机网络分开的安全网络连接进行通信连接。
10.根据权利要求6至9中的任一项所述的方法,其中,所述计算机网络包括与同构网络拓扑的多个实体分开的至少一个处理中心,并且其中,产生用于设置至少一个密钥导出参数的值的请求由所述处理中心执行。
11.一种用于检测对包括多个节点的计算机网络的攻击的系统,
其中,每个节点包括:
非暂时性存储器装置,所述非暂时性存储器装置中存储了指令代码模块,以及
处理器,所述处理器与所述存储器装置相关联并且被配置为执行所述指令代码模块,其中,在执行所述指令代码模块时,所述处理器被配置为:
以分布式账本配置将所述多个节点彼此关联;
向所述多个节点中的每个节点加载主密钥;
由至少一个第一节点根据所述主密钥并根据存储在所述分布式账本的所述至少一个第一节点处的本地副本上的至少一个密钥导出参数来导出安全密钥;
由所述至少一个第一节点根据所导出的密钥对消息进行加密;
将所加密的消息以及分布式账本条目的标识一起发送到所述计算机网络中的至少一个第二节点;
由所述至少一个第二节点从节点的子集请求关于标识的分布式账本条目中的所述至少一个密钥导出参数的值的有效性的信任投票;
如果所述信任投票通过,则由所述至少一个第二节点根据所述至少一个密钥导出参数的值导出安全密钥并解密加密的消息;
如果所述信任投票失败,则将所述至少一个密钥导出参数的值标识为与所述计算机网络上的可疑攻击有关,并对其执行至少一种防范措施。
12.根据权利要求11所述的系统,其中,所述攻击是中间人MITM攻击、选定密钥攻击和目标密钥攻击中的一种。
13.根据权利要求11至12中的任一项所述的系统,其中,所述多个节点中的每个节点均被加载有专有的专用节点密钥,并且其中,请求节点的至少一个处理器被配置为通过以下方式产生用于设置至少一个密钥导出参数的值的请求:
选择至少一个密钥导出参数的值;
向除所述请求节点之外的所述多个节点发送请求消息;以及
使用所述专有的专用节点密钥对所述请求消息进行签名。
14. 根据权利要求11至13中的任一项所述的系统,其中,除请求节点之外的至少一个节点的至少一个处理器被配置为:
验证所述请求节点对所述请求的签名;以及
基于所述验证,将所述至少一个密钥导出参数的值存储在分布式账本的存储在其他节点处的本地副本的条目中。
15.根据权利要求11所述的系统,其中,至少一个处理器被配置为执行从包括以下各项的列表中选择的至少一项防范措施:
产生关于所述可疑攻击的通知;
阻止源自至少一个第一节点的至少一个消息;
隔离源自所述至少一个第一节点的至少一个消息;以及
由除所述至少一个第一节点之外的节点的处理器产生用于改变所述至少一个密钥导出参数的值的请求。
16.根据权利要求11至15中的任一项所述的系统,其中,所述计算机网络包括同构网络拓扑的多个分开的实体,每个实体包括一个或更多个节点,并且其中,所有实体的节点以分布式账本配置相关联。
17.根据权利要求16所述的系统,其中,第一同构网络实体的至少一个第一节点通过安全网络连接通信地连接到分开的第二同构网络实体的至少一个第二节点。
18.根据权利要求16至17中的任一项所述的系统,其中,所述计算机网络包括与同构网络拓扑的多个实体分开的至少一个处理中心,并且其中,产生用于设置至少一个密钥导出参数的值的请求由所述处理中心执行。
19.一种由至少一个处理器检测对包括多个节点的计算机网络的攻击的方法,所述方法包括:
创建记录所述多个节点之间的交易的分布式账本;
向所述多个节点中的每个节点加载主密钥;
由至少一个第一节点根据所述主密钥并根据存储在所述分布式账本的所述第一节点处的本地副本上的至少一个密钥导出参数来导出安全密钥;
由所述至少一个第一节点根据所导出的密钥对消息进行加密;
将所加密的消息以及分布式账本条目的标识一起发送到所述计算机网络中的至少一个第二节点;
由所述至少一个第二节点从节点的子集请求关于标识的分布式账本条目中的所述至少一个密钥导出参数的值的有效性的信任投票;
如果所述信任投票通过,则由所述至少一个第二节点根据所述密钥导出参数的值导出安全密钥并解密加密的消息;
如果所述信任投票失败,则将所述至少一个密钥导出参数的值标识为与所述计算机网络上的可疑攻击有关,并对其执行至少一种防范措施。
20.根据权利要求19所述的方法,其中,所述至少一个第一节点和所述至少一个第二节点被实现为虚拟专用网(VPN)中的节点,并且其中,安全网络连接是通过所述计算机网络执行的。
21.根据权利要求19所述的方法,其中,安全网络连接与所述计算机网络是分开的。
22.一种存储指令的非暂时性计算机可读存储介质,所述指令在由处理器执行时使所述处理器执行根据权利要求1-10中任一项所述的方法。
CN201980083274.2A 2018-12-18 2019-12-08 保护计算机网络免受中间人攻击的系统和方法 Active CN113196703B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/223,194 US11075944B2 (en) 2018-12-18 2018-12-18 System and method for protection of computer networks against man-in-the-middle attacks
US16/223,194 2018-12-18
PCT/IL2019/051336 WO2020129042A1 (en) 2018-12-18 2019-12-08 System and method for protection of computer networks against man-in-the-middle attacks

Publications (2)

Publication Number Publication Date
CN113196703A CN113196703A (zh) 2021-07-30
CN113196703B true CN113196703B (zh) 2025-02-28

Family

ID=71072120

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980083274.2A Active CN113196703B (zh) 2018-12-18 2019-12-08 保护计算机网络免受中间人攻击的系统和方法

Country Status (4)

Country Link
US (1) US11075944B2 (zh)
EP (1) EP3900260A4 (zh)
CN (1) CN113196703B (zh)
WO (1) WO2020129042A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE1950664A1 (en) * 2019-06-05 2020-12-06 C8 Tech Holding Jersey Limited Trading proposal arrangement, system and method
US11729192B2 (en) 2021-03-16 2023-08-15 Bank Of America Corporation Malware detection using document object model inspection
CN114866306B (zh) * 2022-04-24 2022-12-23 北京丁牛科技有限公司 一种安全防护方法、装置和存储介质
US20240267407A1 (en) * 2023-01-19 2024-08-08 University Of Utah Research Foundation Security systems, methods, storage medium for increasing security of devices utilizing a communication channel

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106416182A (zh) * 2014-05-09 2017-02-15 思科技术公司 用于攻击检测的分布式投票机制
WO2018073482A1 (en) * 2016-10-18 2018-04-26 Nokia Technologies Oy Accession control for network nodes

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020136226A1 (en) * 2001-03-26 2002-09-26 Bluesocket, Inc. Methods and systems for enabling seamless roaming of mobile devices among wireless networks
CN101453733B (zh) * 2008-11-28 2010-12-22 北京工业大学 无线Mesh网络中基于监视节点的虫洞攻击检测方法
US8484460B1 (en) * 2010-12-29 2013-07-09 Amazon Technologies, Inc. Post attack man-in-the-middle detection
CN104936173B (zh) * 2014-03-18 2022-02-25 华为技术有限公司 密钥生成方法、主基站、辅基站及用户设备
US20150326450A1 (en) * 2014-05-12 2015-11-12 Cisco Technology, Inc. Voting strategy optimization using distributed classifiers
CN108777616B (zh) * 2018-04-11 2020-08-25 中国科学院信息工程研究所 一种抗量子计算机攻击的电子选举方法、管理装置和电子选举系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106416182A (zh) * 2014-05-09 2017-02-15 思科技术公司 用于攻击检测的分布式投票机制
WO2018073482A1 (en) * 2016-10-18 2018-04-26 Nokia Technologies Oy Accession control for network nodes

Also Published As

Publication number Publication date
EP3900260A4 (en) 2022-09-07
EP3900260A1 (en) 2021-10-27
WO2020129042A1 (en) 2020-06-25
US20200195682A1 (en) 2020-06-18
US11075944B2 (en) 2021-07-27
CN113196703A (zh) 2021-07-30

Similar Documents

Publication Publication Date Title
US12225115B2 (en) Secure shared key establishment for peer to peer communications
US20240333500A1 (en) Systems, methods, and devices for secure blockchain transaction and subnetworks
CN113196703B (zh) 保护计算机网络免受中间人攻击的系统和方法
US20080276309A1 (en) System and Method for Securing Software Applications
CN101588245A (zh) 一种身份认证的方法、系统及存储设备
CN113098697B (zh) 一种区块链数据写入、访问方法及装置
EP1081891A2 (en) Autokey initialization of cryptographic devices
Alnahari et al. Authentication of IoT device and IoT server using security key
US20200412541A1 (en) Authentication ledger interactions for decentralized biometric authentication
WO2023151427A1 (zh) 量子密钥传输方法、装置及系统
CN113678131A (zh) 使用区块链保护在线应用程序和网页
CN112632574A (zh) 基于联盟链的多机构数据处理方法、装置及相关设备
CN108900595B (zh) 访问云存储服务器数据的方法、装置、设备及计算介质
US10523633B2 (en) Method of communicating between secured computer systems, a computer network infrastructure and a computer program product
CN114466353A (zh) App用户ID信息保护的装置、方法、电子设备及存储介质
US20210037009A1 (en) Biometric data sub-sampling during decentralized biometric authentication
CN106576050B (zh) 三层安全和计算架构
US11909874B2 (en) Secure confidential use of communication session keys
CN116881936A (zh) 可信计算方法及相关设备
Kankal et al. An adaptive authentication based on blockchain for bigdata hadoop framework
CN112673591B (zh) 用于向经授权的第三方提供对秘密的公开分类账安全密钥托管访问的系统和方法
US20240154806A1 (en) Anti-cloning of device cryptographic keys for counterfeit prevention
Ga et al. Active auditing Services for Storing and Securing the Data in the Cloud
Mashima et al. User-centric handling of identity agent compromise
Wazid et al. Design Principles and Privacy in Cloud Computing

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