CN111970247B - 匿名通信网络中对等环的混淆消息发送方法 - Google Patents
匿名通信网络中对等环的混淆消息发送方法 Download PDFInfo
- Publication number
- CN111970247B CN111970247B CN202010700758.1A CN202010700758A CN111970247B CN 111970247 B CN111970247 B CN 111970247B CN 202010700758 A CN202010700758 A CN 202010700758A CN 111970247 B CN111970247 B CN 111970247B
- Authority
- CN
- China
- Prior art keywords
- peer
- node
- ring
- hierarchical
- information
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
- H04L63/0421—Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种匿名通信网络中对等环的混淆消息发送方法,所述混淆消息发送包括:所述对等环中的每个节点,随机生成一个层级回环混淆消息后发送给所述对等环中下一跳节点;所述层级回环混淆消息由所述层级回环混淆消息的生成节点的下一跳节点,依次经由所述对等环的各节点后,回到所述层级回环混淆消息的生成节点。应用本发明能够通过在对等环中引入混淆消息来保护通信双方通信关系匿名性。
Description
技术领域
本发明涉及匿名通信技术领域,特别是指一种匿名通信网络中对等环的混淆消息发送方法。
背景技术
网络匿名通信是一种通过采用消息转发、数据加密、流量混淆等措施来隐藏通信内容及关系的隐私保护技术。网络匿名通信技术主要应用于匿名电子邮件系统、匿名网络存储系统、匿名发布系统、匿名Web浏览系统等。
然而,在实际应用中,本发明的发明人发现,面向匿名通信系统中对等环形核心网络上内部恶意节点可以知道消息的来源与目的地,从而可以导致两个环守卫网络通信关系的匿名性被破解。
发明内容
有鉴于此,本发明的目的在于提出一种匿名通信网络中对等环的混淆消息发送方法,能够通过在对等环中引入混淆消息来保护通信双方通信关系匿名性。
基于上述目的,本发明提供一种匿名通信网络中对等环的混淆消息发送方法,包括:
所述对等环中的每个节点,随机生成一个层级回环混淆消息后发送给所述对等环中下一跳节点;
所述层级回环混淆消息由所述层级回环混淆消息的生成节点的下一跳节点,依次经由所述对等环的各节点后,回到所述层级回环混淆消息的生成节点。
其中,所述生成一个层级回环混淆消息,具体包括:
对于具有r个节点的对等环,所述对等环中层级回环混淆消息的生成节点利用分别与所述对等环中各节点共享的对称密钥将混淆消息进行层级加密后,得到r层的层级加密的层级回环混淆消息:
生成的层级回环混淆消息的第1层信息DumLBMsg包括:所述层级回环混淆消息的生成节点与自己共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:混淆消息内容DummyString、回环标识信息loopback,以及该密钥的哈希值;
对于r≥i>1的情况,生成的层级回环混淆消息的第i层信息包括:层级回环混淆消息的生成节点与对等环中该节点之后的第i-1个节点共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:层级回环混淆消息的第i-1层信息,以及该密钥的哈希值。
其中,所述层级回环混淆消息由所述层级回环混淆消息的生成节点的下一跳节点,依次经由所述对等环的各节点后,回到所述层级回环混淆消息的生成节点,具体包括:
对于r>i≥1的情况,所述对等环中所述层级回环混淆消息的生成节点之后的第i个节点,接收到上一跳节点发送的所述层级回环混淆消息的第r+1-i层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:所述层级回环混淆消息的第r-i层信息,以及本节点与所述层级回环混淆消息的生成节点共享的对称密钥的哈希值;进而根据解密出的密钥的哈希值验证解密信息的正确性;
所述层级回环混淆消息的生成节点之后的第i个节点确定解密出的信息中没有明文信息后,将解密出来的信息继续向下一跳节点发送;
当所述层级回环混淆消息的生成节点接收到上一跳节点发送的所述层级回环混淆消息的第1层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:混淆消息内容DummyString、回环标识信息loopback,以及所述层级回环混淆消息的生成节点与自己共享的对称密钥的哈希值;
所述层级回环混淆消息的生成节点根据解密出的密钥的哈希值验证解密信息的正确性;并在确定解密出的信息中具有明文信息,且识别出回环标识信息loopback,确认接收的信息为经过所述对等环各节点的、由自己生成的层级回环混淆消息后丢弃混淆消息内容DummyString。
本发明还提供一种匿名通信网络中对等环的混淆消息发送方法,包括:
所述对等环中的每个节点,随机生成一个层级脱环混淆消息后发送给所述对等环中下一跳节点;
所述层级脱环混淆消息由所述层级脱环混淆消息的发送节点的下一跳节点,依次经由所述对等环中若干节点后,转发至环外的节点。
其中,所述生成一个层级脱环混淆消息,具体包括:
对于具有r个节点的对等环,所述对等环中层级脱环混淆消息的生成节点随机生成转发节点个数值h,将所述对等环中本节点之后的h个节点作为所述层级脱环混淆消息在所述对等环中进行转发的转发节点;
所述对等环中层级脱环混淆消息的生成节点利用分别与所述对等环中h个转发节点共享的对称密钥将混淆消息进行层级加密后,得到h层的层级加密的层级脱环混淆消息:
生成的层级脱环混淆消息的第1层信息DumOMsg包括:所述层级脱环混淆消息的生成节点与所述对等环中转发所述层级脱环混淆消息的最后一个转发节点共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:脱环混淆消息体、消息脱环转发的标识信息out、下阶段路由信息RoutInfo、下阶段的阶段路径参数,以及所述层级脱环混淆消息的生成节点与所述对等环中转发所述层级脱环混淆消息的最后一个转发节点共享的对称密钥的哈希值;
对于h≥i>1的情况,生成的层级脱环混淆消息的第i层信息包括:所述层级脱环混淆消息的生成节点与对等环中该节点之后的第i个转发节点共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:层级脱环混淆消息的第i-1层信息,以及所述层级脱环混淆消息的生成节点与对等环中该节点之后的第i个转发节点共享的对称密钥的哈希值。
其中,所述层级脱环混淆消息由所述层级脱环混淆消息的发送节点的下一跳节点,依次经由所述对等环中若干节点后,转发至环外的节点,具体包括:
对于h>i≥1的情况,所述层级脱环混淆消息的生成节点之后的第i个转发节点,接收到上一跳节点发送的所述层级脱环混淆消息的第h+1-i层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:所述层级脱环混淆消息的第h-i层信息,以及本节点与所述层级脱环混淆消息的生成节点共享的对称密钥的哈希值;进而根据解密出的密钥的哈希值验证解密信息的正确性;
所述层级脱环混淆消息的生成节点之后的第i个转发节点确定解密出的信息中没有明文信息后,将解密出来的信息继续向下一跳节点发送;
所述层级脱环混淆消息的生成节点之后的第h个转发节点接收到上一跳节点发送的所述层级回环混淆消息的第1层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:脱环混淆消息体、消息脱环转发的标识信息out、下阶段路由信息RoutInfo、下阶段的阶段路径参数,以及本节点与所述层级脱环混淆消息的生成节点共享的对称密钥的哈希值;
所述层级脱环混淆消息的生成节点之后的第h个转发节点根据解密出的密钥的哈希值验证解密信息的正确性;并在确定解密出的信息中具有明文信息,且识别出消息脱环转发的标识信息out后,根据下阶段路由信息RoutInfo将解密的信息向对等环的环外节点发送。
本发明还提供一种对等环中的节点,包括:
层级回环混淆消息生成模块,用于随机生成层级加密的层级回环混淆消息,并将生成的层级回环混淆消息发送给所述对等环中的下一跳节点;
信息处理模块,用于从所述对等环中上一跳节点接收信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密;若解密出明文信息,并确定解密出的明文信息中包括回环标识信息loopback后,确认接收的信息为经过所述对等环各节点的、由自己生成的层级回环混淆消息后,丢弃混淆消息内容,完成一次层级回环混淆消息的发送过程;若没有解密出明文信息,则将解密出的信息向环内下一跳节点发送。
本发明还提供一种对等环中的节点,包括:
层级脱环混淆消息生成模块,用于随机生成层级加密的层级脱环混淆消息,并将生成的层级脱环混淆消息发送给所述对等环中的下一跳节点;
信息处理模块,用于从所述对等环中上一跳节点接收信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密;若解密出明文信息,并确定解密出的明文信息中包括消息脱环转发的标识信息out,则根据解密出的明文信息中的下阶段路由信息将所述消息内容向环外转发;若没有解密出明文信息,则将解密出的信息向环内下一跳节点发送。
本发明的技术方案中,对等环中的每个节点,随机生成一个层级回环混淆消息后发送给所述对等环中下一跳节点;所述层级回环混淆消息由所述层级回环混淆消息的生成节点的下一跳节点,依次经由所述对等环的各节点后,回到所述层级回环混淆消息的生成节点;从而可以针对恶意的环内节点,在对等环内掩护真实消息的传送,欺骗攻击者,保护通信双方通信关系匿名性。
此外,本发明的技术方案中,对等环中的每个节点,随机生成一个层级脱环混淆消息后发送给所述对等环中下一跳节点;所述层级脱环混淆消息由所述层级脱环混淆消息的发送节点的下一跳节点,依次经由所述对等环中若干节点后,转发至环外的节点。由于层级脱环混淆消息是节点随机产生的,在环上流转若干跳后离开环的消息,从而可以用来掩护离开环的真实消息,欺骗攻击者,保护通信双方通信关系匿名性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于环形架构的对等环的匿名通信网络的构建方法流程图;
图2为本发明实施例提供的一种目录服务器与环节点生成非对称密钥的方法流程图;
图3为本发明实施例提供的一种层级加密数据包的示意图;
图4a为本发明实施例提供的一种构建的对等环的环形结构示意图;
图4b为本发明实施例提供的一种基于环形架构的对等环的匿名通信网络的消息转发方法流程图;
图5为本发明实施例提供的一种对等环进行消息转发的方法流程图;
图6为本发明实施例提供的一种匿名通信网络中对等环的层级回环混淆消息发送方法流程图;
图7为本发明实施例提供的一种匿名通信网络中对等环的层级脱环混淆消息发送方法流程图;
图8a、8b、8c为本发明实施例提供的对等环中的节点的内部结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
需要说明的是,除非另外定义,本发明实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
本发明的发明人考虑到,构建一种基于环形结构的对等环的匿名通信网络,该网络中包括环形结构的对等环;在对等环中,一方面,所有节点功能一致,均可承担如下角色:
(1)EntryNode(入口节点):接收环外节点发到环上的入环消息(I nMSG),并根据协议执行消息转换后转发给下游节点;
(2)ExitNode(出口节点):接收上游节点转发过来的出环消息(OutMSG),并按路由信息发送给环外节点。
另一方面,对等环中所有节点掌握的信息一致,均知道如下三种信息:
(1)任意节点只知道上下游节点的地址信息,即I P地址、Port端口信息;
(2)环上任意一对节点i和j共享对称密钥,包括i=j的情况;
(3)任意节点知道与环上其它节点共享的对称密钥排列顺序,这也意味着节点知道环上的节点个数,以及环上的节点的排列顺序。
在上述对等环中引入混淆消息,与真实消息相互混淆,欺骗攻击者,从而可以保护通信双方通信关系匿名性。
下面结合附图详细说明本发明实施例的技术方案。
本发明实施例提供的一种基于环形结构的对等环的匿名通信网络的构建方法,具体流程如图1所示,包括如下步骤:
步骤S101:权威的目录服务器为待构建的对等环选择若干节点。
具体地,权威的目录服务器从其维护的节点信息中,基于环节点选择算法为待构建的对等环选择若干节点作为环节点,比如选择r个节点作为环节点,收集选择的节点的公钥、IP端口等信息,启动初始化过程。环节点应为高速、稳定的优质节点,因此节点选择算法除了参考现有的匿名通信系统设定些基本的安全限制,还可以进一步考虑节点信誉(reputation):(1)节点带宽大于某阈值、稳定运行时间超过某时间、信誉良好;(2)相邻节点不能位于同一地址段内、相邻节点位于不同的自治域、国家。即选择环节点时还需考虑节点是否满足上述节点信誉。其中,r为设定的大于1的自然数。
步骤S102:目录服务器分别与选择的各节点生成非对称密钥,并保存各节点返回的公钥。
具体地,目录服务器将选择的各环节点进行随机排序,由排序的各环节点形成一个环初始化路径,然后从环初始化路径中的第一个节点至最后一个节点,依次与环初始化路径中各节点生成非对称密钥,并保存各节点返回的非对称密钥中的公钥;对于环初始化路径中的每个节点,目录服务器将该节点返回的公钥作为所述对等环上该节点的公钥进行保存。
对于环初始化路径中的一个环节点,目录服务器与该环节点生成非对称密钥的具体过程,可以如图2所示,包括如下子步骤:
子步骤S201:目录服务器向该环节点发送携带对等环的标识(RingID)的对等环公钥请求信息。
子步骤S202:所述环节点接收到对等环公钥请求信息后,获取对等环的标识(RingID),并生成一对非对称密钥对应于RingID进行保存。
子步骤S203:所述环节点将非对称密钥中的公钥返回目录服务器。
如此,目录服务器可以获得环初始化路径中每个节点的对等环公钥;例如,对于环初始化路径中的节点A、B……G,目录服务器可以分别获得A、B……G的对等环公钥:RRingPubKeyA,RRingPubKeyB,…,RRingPubKeyG;目录服务器可以将环初始化路径中各节点的对等环公钥对应于RingID进行保存。
步骤S103:目录服务器根据各节点的公钥,协助生成所述对等环的任意两节点间共享的对称密钥。
具体地,将环初始化路径中第k个节点,作为对等环的第k个节点;在待构建的对等环中,相邻节点具有连接关系,且最后一个节点与第一个节点也具有连接关系,从而可以形成环形结构;针对此环形结构,目录服务器作为中间人,协助每个节点顺时针分别和对等环的各节点(包括对等环的其它节点以及节点自身)通过D-H(密钥交换协议)密钥协商过程建立共享的对称密钥RRingKey;对于具有r个节点作为环节点的对等环,此过程共需进行r×(r-1)次密钥协商,生成r×(r-1)个对称密钥;
且此过程中,对于对等环中的一个节点,目录服务器是根据环初始化路径中各节点的排序,协助该节点与其它节点通过D-H密钥协商过程建立共享的对称密钥。
因此,经过r(r-1)次密钥协商后,每个节点与对等环的各节点都有共享的对称密钥,且每个节点通过与对等环的各节点的密钥协商顺序,可以获知对等环上节点的排列顺序,以及对等环上节点的数量。例如,对等环的环初始化路径为:节点A-节点B-节点C-节点D-节点E-节点F-节点G,则节点A可以获知对等环上节点的排列顺序为:节点B-节点C-节点D-节点E-节点F-节点G-节点A,节点B可以获知对等环上节点的排列顺序为:节点C-节点D-节点E-节点F-节点G-节点A-节点B。
步骤S104:目录服务器利用各节点的公钥生成层级加密数据包,并将所述层级加密数据包发送给所述对等环的第一个节点。
具体地,对于具有r个节点的对等环,目录服务器生成r层加密的数据包;其中,生成的r层加密的数据包从最外层至最内层的加密信息,依次对应于对等环中第1个节点至最后一个节点,即目录服务器生成r层加密的数据包中的第1层信息是对应于对等环中的最后一个节点。
目录服务器生成从第1层至第r层信息,从而得到r层加密的数据包;在目录服务器生成层级加密数据包的第1层信息时,是利用对等环中的最后一个节点的公钥,加密如下信息:对等环中的最后一个节点在对等环中的下一跳节点的地址信息(包括IP地址和端口信息)、环中最后一个节点的标识信息closedRing、目录服务器生成的随机数nonce,以及对等环的标识(RingID);其中,对等环中的最后一个节点在对等环中的下一跳节点,具体为对等环中的第1个节点。
对于r>i>1的情况,在目录服务器生成层级加密数据包的第i层信息时,是利用对等环中的第r+1-i个节点的公钥,加密如下信息:对等环中第r+1-i个节点在对等环中的下一跳节点的地址信息(包括IP地址和端口信息)、环中非最后一个节点的标识信息extendRing、对等环的标识(RingID),以及之前生成的第i-1层信息;其中,对于i>1的情况,对等环中第r+1-i个节点在对等环中的下一跳节点,具体为对等环中的第r+2-i个节点。
在目录服务器生成层级加密数据包的第r层信息时,是利用对等环中的第1个节点的公钥,加密如下信息:对等环中第1个节点在对等环中的下一跳节点的地址信息(包括IP地址和端口信息)、环中非最后一个节点的标识信息extendRing、对等环的标识(RingID)、上述的随机数nonce,以及之前生成的第r-1层信息;其中,对等环中第1个节点在对等环中的下一跳节点,具体为对等环中的第2个节点。
例如,对等环具有7个节点,其环初始化路径为:节点A-节点B-节点C-节点D-节点E-节点F-节点G,则生成的层级加密数据包具体为7层加密的数据包,如图3所示。
之后,目录服务器将生成的层级加密数据包发送给环初始化路径中的第1个节点。
步骤S105:层级加密数据包由所述对等环的第一个节点传递至最后一个节点,各节点依次分别解密出所述层级加密数据包中各层级加密的信息,获得下一跳节点的地址信息;各节点根据获得的下一跳节点的地址信息可以建立链接形成环形结构的对等环。
具体地,对于r个节点的对等环,环初始化路径中的第j个节点即为对等环的第j个节点,其中,j为1~r的自然数;层级加密数据包由所述对等环的第一个节点传递至最后一个节点,由所述对等环的第一个节点至最后一个节点依次解密出所述层级加密数据包中各层级加密的信息,获得下一跳节点的地址信息:
对于具有r个节点的对等环,对等环的第1个节点对层级加密数据包中最外层的加密信息,即第r层信息进行解密:由于第r层信息是由目录服务器通过对等环的第1个节点的公钥进行加密得到的,因此,可以用对等环的第1个节点生成的非对称密钥中的私钥对其进行解密,从而获得如下信息:对等环的第1个节点的下一跳节点的地址信息(包括IP地址和端口信息)、环中非最后一个节点的标识信息extendRing、对等环的标识(RingID)、上述的随机数nonce,以及之前生成的第r-1层信息;
对等环的第1个节点存储下一跳节点的地址信息,并根据解密出的环中非最后一个节点的标识信息extendRing,依据下一跳节点的地址信息与下一跳节点建立链接后,将第r-1层信息继续向对等环的第1个节点的下一跳节点发送;
例如,上述的节点A接收到如图3所示的层级加密数据包后,利用私钥解密出最外层信息,得到如下信息:下一跳节点,即节点B的地址信息(包括IP地址和端口信息)、标识信息extendRing、对等环的标识(RingID)、上述的随机数nonce,以及之前生成的第6层信息;
节点A根据标识信息extendRing,确定本节点为环中的非最后一个节点,从而继续层级加密数据包的传递:节点A根据节点B的地址信息,与节点B建立链接,并将层级加密数据包中的第6层信息向节点B发送。
对于1<i<r的情况,对等环的第i个节点对层级加密数据包中第r+1-i层信息进行解密:由于第r+1-i层信息是由目录服务器通过对等环的第i个节点的公钥进行加密得到的,因此,对等环的第i个节点可以用生成的非对称密钥中的私钥对其进行解密,从而获得如下信息:对等环的第i个节点的下一跳节点的地址信息(包括IP地址和端口信息)、环中非最后一个节点的标识信息extendRing、对等环的标识(RingID),以及之前生成的第r-i层信息;
对等环的第i个节点存储下一跳节点的地址信息,并根据解密出的环中非最后一个节点的标识信息extendRing,依据下一跳节点的地址信息与下一跳节点建立链接后,将第r-i层信息继续向对等环的第i个节点的下一跳节点发送;
例如,上述的节点B接收到节点A发送的加密数据包后,利用私钥解密第6层信息,得到如下信息:下一跳节点,即节点C的地址信息(包括IP地址和端口信息)、标识信息extendRing、对等环的标识(RingID),以及之前生成的第5层信息;
节点B根据标识信息extendRing,确定本节点为环中的非最后一个节点,从而继续层级加密数据包的传递:节点B根据节点C的地址信息,与节点C建立链接,并将层级加密数据包中的第5层信息向节点C发送。
对等环的第r个节点对层级加密数据包中第1层信息进行解密:由于第1层信息是由目录服务器通过对等环的第r个节点的公钥进行加密得到的,因此,对等环的第r个节点可以用私钥对其进行解密,从而获得如下信息:对等环的第r个节点的下一跳节点的地址信息(包括IP地址和端口信息)、环中最后一个节点的标识信息closedRing、对等环的标识(RingID)以及随机数nonce;
对等环的第r个节点根据解密出的环中最后一个节点的标识信息closedRing,确定本节点为最后一个节点,存储下一跳节点的地址信息后,获取与下一跳节点共享的对称密钥,即获取与对等环的第1个节点共享的对称密钥;由于之前各节点均已获知对等环上节点的排列顺序,以及与其它节点共享的对称密钥,因此,第r个节点可以根据获知的对等环上节点的排列顺序确定出第1个节点以及与第1个节点共享的对称密钥;
对等环的第r个节点根据与第1个节点共享的对称密钥将随机数nonce加密后发送给下一跳节点,即对等环的第1个节点;从而,对等环的第1个节点可以接收到第r个节点发送的加密的随机数nonce。
例如,上述的节点G接收到节点F发送的加密数据包后,利用私钥解密第1层信息,得到如下信息:下一跳节点,即节点A的地址信息(包括IP地址和端口信息)、标识信息closedRing、对等环的标识(RingID)、随机数nonce;
节点G根据标识信息closedRing,确定本节点为环中的最后一个节点,从而不再继续层级加密数据包的传递;而是根据与节点A共享的对称密钥将随机数nonce加密后发送给下一跳节点,即节点A;从而,节点A可以接收到节点G发送的加密的随机数nonce。
对等环的第1个节点利用与第r个节点共享的对称密钥解密出随机数nonce后,将当前解密出的随机数nonce与之前解密出的随机数nonce进行比较,若比较结果为一致,则环形结构的对等环建立成功;若比较结果不一致,则环形结构的对等环建立失败。对等环的第1个节点可以将对等环的建立结果返回给目录服务器。这样,环形结构的对等环建立成功后,对等环中任意节点只知道上下跳节点的地址信息,即IP地址、Port端口信息。
例如,上述的环初始化路径:节点A-节点B-节点C-节点D-节点E-节点F-节点G,在构建对等环后,得到的环形结构如图4a所示。
步骤S106:目录服务器公布该对等环的相关信息。
具体地,目录服务器将该对等环的各节点的公钥信息进行公布,但不公布对等环上各节点的排列顺序。
客户端可以通过基于上述方法构建出的环形结构的对等环的匿名通信网络进行消息传送,本发明实施例提供的一种基于环形结构的对等环的匿名通信网络的消息转发方法,流程如图4b所示,包括如下步骤:
步骤S401:客户端选择所述匿名通信网络中的对等环中的一个节点,作为阶段路径头节点。
步骤S402:客户端利用公布的该节点的公钥加密阶段路径参数、待转发的消息内容、下阶段路由信息,将得到的加密信息发送给阶段路径头节点。
其中,阶段路径参数可以包括阶段路径的长度,进一步,阶段路径参数还可包括转发延迟参数;待转发的消息内容可以是加密后的消息内容;下阶段路由信息可以是消息内容发往目的节点的路由信息。如此,阶段路径头节点即为对等环的EntryNode(入口节点);事实上,客户端可以随机选择对等环中的一个节点作为阶段路径头节点,也就是说,对等环中的任一节点均可作为对等环的EntryNode(入口节点)。
步骤S403:阶段路径头节点将接收的加密信息通过对等环进行消息转发。
本步骤中,对等环进行消息转发的具体方法流程如图5所示,包括如下子步骤:
子步骤S501:阶段路径头节点利用本节点的私钥对接收的加密信息进行解密。
具体地,对等环中的阶段路径头节点在接收到环外的客户端发送的利用本节点的公钥进行加密的信息后,利用本节点的私钥对接收的加密信息进行解密,从而可以获得如下信息:阶段路径参数PathParam、待转发的消息内容EMSG、下阶段路由信息RoutInfo。
子步骤S502:所述阶段路径头节点根据解密得到的阶段路径参数确定所述消息内容在所述对等环中的转发节点。
具体地,阶段路径头节点根据解密得到的阶段路径参数中的阶段路径的长度m,则确定所述消息内容在所述对等环中所经过的节点数为m,由此,阶段路径头节点可以确定在所述对等环中于本节点之后,用于转发所述消息内容的转发节点的个数为n=m-1,进而根据对等环上节点的排列顺序,确定排列于本节点后的n个转发节点。
例如,若解密得到的阶段路径的长度为4,则可以确定对等环中的转发节点的个数为3,进而根据对等环上节点的排列顺序,确定排列于本节点后的3个节点为转发节点。
子步骤S503:所述阶段路径头节点利用分别与各转发节点共享的对称密钥将解密得到的信息进行层级加密后,将层级加密的信息发送给第1个转发节点。
具体地,阶段路径头节点在确定转发节点的个数为n后,生成从第1层至第n层信息,从而得到n层的层级加密的信息,其中,从最外层至最内层的加密信息,依次对应于第1个转发节点至最后一个转发节点;而转发节点的排列次序是根据转发节点在对等环上的排列顺序确定的。
阶段路径头节点生成的第1层信息包括:阶段路径头节点与最后一个转发节点共享的对称密钥的哈希值,以及利用与最后一个转发节点共享的对称密钥加密的如下信息:待转发的消息内容EMSG、下阶段路由信息RoutInfo,以及消息脱环转发的标识信息out,此外,加密的信息还可包括:阶段路径参数PathParam中的转发延迟参数。
对于n≥i>1的情况,阶段路径头节点生成的第i层信息包括:阶段路径头节点与第n+1-i个转发节点共享的对称密钥的哈希值,以及利用与第n+1-i个转发节点共享的对称密钥加密的如下信息:第i-1层信息,以及阶段路径头节点与第n+1-i个转发节点共享的对称密钥的哈希值,此外,加密的信息还可包括:阶段路径参数中的转发延迟参数。
阶段路径头节点将得到的n层的层级加密的信息发送给第1个转发节点。
子步骤S504:由所述转发节点中的第一个节点至最后一个节点依次解密出所述层级加密的信息中各层级加密的信息,并由最后一个节点根据解密出的下阶段路由信息将所述消息内容进行转发。
具体地,第1个转发节点接收到阶段路径头节点发送的n层的层级加密的信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:阶段路径头节点之前生成的第n-1层信息,以及阶段路径头节点与本节点共享的对称密钥的哈希值;第1个转发节点根据解密出的密钥的哈希值验证解密信息的正确性;
第1个转发节点在确定解密出的信息中没有明文信息后,将解密出来的信息继续向下一跳节点,即第2个转发节点发送;此外,若解密出的信息中还包括转发延迟参数,则第1个转发节点在根据转发延迟参数进行时间延迟后,再将解密出来的信息继续向下一跳节点发送。
对于n>i>1的情况,第i个转发节点接收到上一跳节点发送的信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:阶段路径头节点之前生成的第n-i层信息,以及阶段路径头节点与本节点共享的对称密钥的哈希值;第i个转发节点根据解密出的密钥的哈希值验证解密信息的正确性;
第i个转发节点在确定解密出的信息中没有明文信息后,将解密出来的信息继续向下一跳节点,即第i+1个转发节点发送;此外,若解密出的信息中还包括转发延迟参数,则第i个转发节点在根据转发延迟参数进行时间延迟后,再将解密出来的信息继续向下一跳节点发送。
第n个转发节点接收到上一跳节点发送的信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:待转发的消息内容EMSG、下阶段路由信息RoutInfo、消息脱环转发的标识信息out,以及阶段路径头节点与本节点共享的对称密钥的哈希值;第n个转发节点根据解密出的密钥的哈希值验证解密信息的正确性;
第n个转发节点在确定解密出的信息中具有明文信息,并识别出消息脱环转发的标识信息out后,作为对等环的ExitNode(出口节点),根据下阶段路由信息RoutInfo将解密的信息向对等环的环外节点发送。
由于阶段路径的长度n是客户端设定的,因此,对等环的任一节点均可作为对等环的ExitNode(出口节点)。
从上述可以看出,本发明构建的对等环的节点均可承担如下角色:EntryNode(入口节点)、ExitNode(出口节点),以及环上传递信息的节点;且对等环的任意节点只知道上下游节点的地址信息;环上任意一对节点i和j共享对称密钥;任意节点知道与环上其它节点共享的对称密钥排列顺序,这也意味着节点知道环上的节点个数,以及环上的节点的排列顺序。
本发明实施例提供的一种匿名通信网络中对等环的层级回环混淆消息发送方法中,对等环的每个节点均具备发送层级回环混淆消息的功能,即对等环的每个节点,可以按如图6所示的方法随机生成并发送一个层级回环混淆消息,具体包括如下步骤:
步骤S601:对等环中的一个节点(节点A)随机生成层级加密的层级回环混淆消息;
具体地,对于具有r个节点的对等环,假设当前生成并发送层级回环混淆消息的节点为节点A,节点A利用分别与所述对等环中各节点共享的对称密钥将混淆消息进行层级加密后,得到r层的层级加密的层级回环混淆消息:
生成的层级回环混淆消息的第1层信息DumLBMsg包括:节点A与自己共享的对称密钥的哈希值,以及利用节点A与自己共享的对称密钥加密的如下信息:混淆消息内容DummyString、回环标识信息loopback,以及节点A与自己共享的对称密钥的哈希值;
DumLBMsg=<H(RRingKeyAA),RRingKeyAA(“loopback”,DummyString,H(RRingKeyAA))>
其中,RRingKeyAA表示节点A与自己共享的对称密钥,H(RRingKeyAA)表示RRingKeyAA的哈希值。
此外,层级回环混淆消息的第1层信息中还可包括,利用节点A与自己共享的对称密钥加密的路径参数中的转发延迟参数。
对于r≥i>1的情况,生成的层级回环混淆消息的第i层信息包括:节点A与对等环中节点A之后的第i-1个节点共享的对称密钥的哈希值,以及利用节点A与节点A与对等环中节点A之后的第i-1个节点共享的对称密钥加密的如下信息:层级回环混淆消息的第i-1层信息,以及节点A与对等环中节点A之后的第i-1个节点共享的对称密钥的哈希值;此外,加密的信息还可包括:路径参数中的转发延迟参数。节点A在得到第r层信息后,生成所述层级回环混淆消息。
步骤S602:节点A将层级回环混淆消息发送给所述对等环中的下一跳节点。
步骤S603:所述层级回环混淆消息由节点A的下一跳节点,依次经由所述对等环的各节点后回到节点A,即回到所述层级回环混淆消息的生成节点。
具体地,对于r>i≥1的情况,所述对等环中节点A之后的第i个节点,接收到上一跳节点发送的所述层级回环混淆消息的第r+1-i层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:所述层级回环混淆消息的第r-i层信息,以及本节点与节点A共享的对称密钥的哈希值;进而根据解密出的密钥的哈希值验证解密信息的正确性;
节点A之后的第i个节点确定解密出的信息中没有明文信息后,将解密出来的信息继续向下一跳节点发送;
当节点A接收到上一跳节点发送的所述层级回环混淆消息的第1层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:混淆消息内容DummyString、回环标识信息loopback,以及节点A与自己共享的对称密钥的哈希值;
节点A根据解密出的密钥的哈希值验证解密信息的正确性;并在确定解密出的信息中具有明文信息,且识别出回环标识信息loopback,确认接收的信息为经过所述对等环各节点的、由自己生成的层级回环混淆消息,从而回收、丢弃混淆消息内容DummyString,完成一次层级回环混淆消息的发送过程。
本发明实施例提供的一种匿名通信网络中对等环的层级脱环混淆消息发送方法中,对等环的每个节点均具备发送层级脱环混淆消息的功能,即对等环的每个节点,可以按如图7所示的方法随机生成并发送一个层级脱环混淆消息,具体包括如下步骤:
步骤S701:对等环中的一个节点(节点A)生成层级加密的层级脱环混淆消息;
具体地,对于具有r个节点的对等环,假设当前生成并发送层级加密的层级脱环混淆消息的节点为节点A,节点A随机生成转发节点个数值h,其中,随机生成的转发节点个数值h大于1、且小于或等于r;节点A将所述对等环中本节点之后的h个节点作为所述层级脱环混淆消息在所述对等环中进行转发的转发节点;
节点A利用分别与所述对等环中h个转发节点共享的对称密钥将混淆消息进行层级加密后,得到h层的层级加密的层级脱环混淆消息:
生成的层级脱环混淆消息的第1层信息DumOMsg包括:节点A与所述对等环中转发所述层级脱环混淆消息的最后一个转发节点共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:脱环混淆消息体、消息脱环转发的标识信息out、下阶段路由信息RoutInfo、下阶段的阶段路径参数,以及节点A与与所述对等环中转发所述层级脱环混淆消息的最后一个转发节点共享的对称密钥的哈希值;
DumOMsg=<H(RRKAD),RRingKeyAD(PathParam,“_out”,RouteInfoT,PubKeyT(“_dum”,DumString),H(RRKAD))>
其中,RRKAD为节点A与所述对等环中转发所述层级脱环混淆消息的最后一个转发节点——节点D共享的对称密钥,H(RRKAD)为节点A与节点D共享的对称密钥的哈希值,PathParam表示下阶段的阶段路径参数,RouteInfoT为下阶段路由信息,具体为环外节点T的路由信息,PubKeyT(“_dum”,DumString)为脱环混淆消息体,具体为利用环外节点T的公钥加密的信息,其中,加密的信息中包括混淆消息内容DummyString。
对于h≥i>1的情况,生成的层级脱环混淆消息的第i层信息包括:节点A与对等环中节点A之后的第i个转发节点共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:层级脱环混淆消息的第i-1层信息,以及节点A与对等环中节点A之后的第i个转发节点共享的对称密钥的哈希值;节点A在得到第h层信息后,生成所述层级脱环混淆消息。
步骤S702:节点A将层级脱环混淆消息发送给所述对等环中的下一跳节点。
步骤S703:所述层级脱环混淆消息由节点A的下一跳节点,依次经由所述对等环中的若干转发节点后,由最后一个转发节点将所述层级脱环混淆消息向环外的节点发送。
具体地,对于h>i≥1的情况,所述对等环中节点A之后的第i个转发节点,接收到上一跳节点发送的所述层级脱环混淆消息的第h+1-i层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:所述层级脱环混淆消息的第h-i层信息,以及本节点与节点A共享的对称密钥的哈希值;进而根据解密出的密钥的哈希值验证解密信息的正确性;
节点A之后的第i个转发节点确定解密出的信息中没有明文信息后,将解密出来的信息继续向下一跳节点发送;
节点A之后的第h个转发节点接收到上一跳节点发送的所述层级脱环混淆消息的第1层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:脱环混淆消息体、消息脱环转发的标识信息out、下阶段路由信息RoutInfo、下阶段的阶段路径参数,以及本节点与节点A共享的对称密钥的哈希值;
节点A之后的第h个转发节点根据解密出的密钥的哈希值验证解密信息的正确性;并在确定解密出的信息中具有明文信息,且识别出消息脱环转发的标识信息out后,根据下阶段路由信息RoutInfo将解密的信息向对等环的环外节点发送。
例如,节点D从接收的信息DumOMsg中利用密钥RRKAD获得解密信息后,则在确定解密出的信息中具有明文信息,且识别出消息脱环转发的标识信息out后,根据环外节点T的路由信息,将脱环混淆消息体PubKeyT(“_dum”,DumString)向环外节点T发送。
上述对等环中的节点的一种具体的内部结构,如图8a所示,可以包括:信息处理模块802、层级回环混淆消息生成模块803。
其中,层级回环混淆消息生成模块803用于随机生成层级加密的层级回环混淆消息,并将生成的层级回环混淆消息发送给所述对等环中的下一跳节点;具体地,层级回环混淆消息生成模块803生成层级回环混淆消息的方法可参考上述步骤S601中的方法,此处不再赘述。
信息处理模块802用于从所述对等环中上一跳节点接收信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密;若解密出明文信息,并确定解密出的明文信息中包括回环标识信息loopback后,确认接收的信息为经过所述对等环各节点的、由自己生成的层级回环混淆消息,从而回收、丢弃混淆消息内容DummyString,完成一次层级回环混淆消息的发送过程;
信息处理模块802若解密出明文信息,并确定解密出的明文信息中包括消息脱环转发的标识信息out,则根据解密出的明文信息中的下阶段路由信息将所述消息内容向环外转发;
信息处理模块802若没有解密出明文信息,则将解密出的信息向环内下一跳节点发送。
上述对等环中的节点的另一种具体的内部结构,如图8b所示,可以包括:上述的信息处理模块802,以及层级脱环混淆消息生成模块804。
其中,层级脱环混淆消息生成模块804用于随机生成层级加密的层级脱环混淆消息,并将生成的层级脱环混淆消息发送给所述对等环中的下一跳节点;具体地,层级脱环混淆消息生成模块804生成层级脱环混淆消息的方法可参考上述步骤S701中的方法,此处不再赘述。
事实上,上述如图8a或8b所示的对等环中的节点中的模块可以共存于一个节点中,如图8c所示。
进一步,如图8c所示,所述对等环中的节点,还可包括:环外信息接收模块801。
环外信息接收模块801用于利用本节点的私钥对从环外接收到的加密信息进行解密;根据解密得到的阶段路径参数确定所述消息内容在所述对等环中的转发节点,并利用分别与各转发节点共享的对称密钥将解密得到的信息进行层级加密后,将层级加密的信息发送给所述转发节点中的第一个节点。
上述对等环中节点的环外信息接收模块801的具体功能的实现方法可参考上述图5所示流程中步骤S501~S503的方法。
上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
本发明的技术方案中,对等环中的每个节点,随机生成一个层级回环混淆消息后发送给所述对等环中下一跳节点;所述层级回环混淆消息由所述层级回环混淆消息的生成节点的下一跳节点,依次经由所述对等环的各节点后,回到所述层级回环混淆消息的生成节点;从而可以针对恶意的环内节点,在对等环内掩护真实消息的传送,欺骗攻击者,保护通信双方通信关系匿名性。
此外,本发明的技术方案中,对等环中的每个节点,随机生成一个层级脱环混淆消息后发送给所述对等环中下一跳节点;所述层级脱环混淆消息由所述层级脱环混淆消息的发送节点的下一跳节点,依次经由所述对等环中若干节点后,转发至环外的节点。由于层级脱环混淆消息是节点随机产生的,在环上流转若干跳后离开环的消息,从而可以用来掩护离开环的真实消息,欺骗攻击者,保护通信双方通信关系匿名性。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本发明难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本发明难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本发明的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本发明的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本发明。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本发明的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种匿名通信网络中对等环的混淆消息发送方法,其特征在于,包括:
所述对等环中的每个节点,随机生成一个层级回环混淆消息后发送给所述对等环中下一跳节点;其中,所述生成一个层级回环混淆消息,具体包括:
对于具有r个节点的对等环,所述对等环中层级回环混淆消息的生成节点利用分别与所述对等环中各节点共享的对称密钥将混淆消息进行层级加密后,得到r层的层级加密的层级回环混淆消息:
生成的层级回环混淆消息的第1层信息DumLBMsg包括:所述层级回环混淆消息的生成节点与自己共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:混淆消息内容DummyString、回环标识信息loopback,以及该密钥的哈希值;
对于r≥i>1的情况,生成的层级回环混淆消息的第i层信息包括:层级回环混淆消息的生成节点与对等环中该节点之后的第i-1个节点共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:层级回环混淆消息的第i-1层信息,以及该密钥的哈希值;
所述层级回环混淆消息由所述层级回环混淆消息的生成节点的下一跳节点,依次经由所述对等环的各节点后,回到所述层级回环混淆消息的生成节点。
2.根据权利要求1所述的方法,其特征在于,所述层级回环混淆消息由所述层级回环混淆消息的生成节点的下一跳节点,依次经由所述对等环的各节点后,回到所述层级回环混淆消息的生成节点,具体包括:
对于r>i≥1的情况,所述对等环中所述层级回环混淆消息的生成节点之后的第i个节点,接收到上一跳节点发送的所述层级回环混淆消息的第r+1-i层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:所述层级回环混淆消息的第r-i层信息,以及本节点与所述层级回环混淆消息的生成节点共享的对称密钥的哈希值;进而根据解密出的密钥的哈希值验证解密信息的正确性;
所述层级回环混淆消息的生成节点之后的第i个节点确定解密出的信息中没有明文信息后,将解密出来的信息继续向下一跳节点发送;
当所述层级回环混淆消息的生成节点接收到上一跳节点发送的所述层级回环混淆消息的第1层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:混淆消息内容DummyString、回环标识信息loopback,以及所述层级回环混淆消息的生成节点与自己共享的对称密钥的哈希值;
所述层级回环混淆消息的生成节点根据解密出的密钥的哈希值验证解密信息的正确性;并在确定解密出的信息中具有明文信息,且识别出回环标识信息loopback,确认接收的信息为经过所述对等环各节点的、由自己生成的层级回环混淆消息后丢弃混淆消息内容DummyString。
3.一种匿名通信网络中对等环的混淆消息发送方法,其特征在于,包括:
所述对等环中的每个节点,随机生成一个层级脱环混淆消息后发送给所述对等环中下一跳节点;其中,所述生成一个层级脱环混淆消息,具体包括:
对于具有r个节点的对等环,所述对等环中层级脱环混淆消息的生成节点随机生成转发节点个数值h,将所述对等环中本节点之后的h个节点作为所述层级脱环混淆消息在所述对等环中进行转发的转发节点;
所述对等环中层级脱环混淆消息的生成节点利用分别与所述对等环中h个转发节点共享的对称密钥将混淆消息进行层级加密后,得到h层的层级加密的层级脱环混淆消息:
生成的层级脱环混淆消息的第1层信息DumOMsg包括:所述层级脱环混淆消息的生成节点与所述对等环中转发所述层级脱环混淆消息的最后一个转发节点共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:脱环混淆消息体、消息脱环转发的标识信息out、下阶段路由信息RoutInfo、下阶段的阶段路径参数,以及所述层级脱环混淆消息的生成节点与所述对等环中转发所述层级脱环混淆消息的最后一个转发节点共享的对称密钥的哈希值;
对于h≥i>1的情况,生成的层级脱环混淆消息的第i层信息包括:所述层级脱环混淆消息的生成节点与对等环中该节点之后的第i个转发节点共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:层级脱环混淆消息的第i-1层信息,以及所述层级脱环混淆消息的生成节点与对等环中该节点之后的第i个转发节点共享的对称密钥的哈希值;
所述层级脱环混淆消息由所述层级脱环混淆消息的发送节点的下一跳节点,依次经由所述对等环中若干节点后,转发至环外的节点。
4.根据权利要求3所述的方法,其特征在于,所述层级脱环混淆消息由所述层级脱环混淆消息的发送节点的下一跳节点,依次经由所述对等环中若干节点后,转发至环外的节点,具体包括:
对于h>i≥1的情况,所述层级脱环混淆消息的生成节点之后的第i个转发节点,接收到上一跳节点发送的所述层级脱环混淆消息的第h+1-i层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:所述层级脱环混淆消息的第h-i层信息,以及本节点与所述层级脱环混淆消息的生成节点共享的对称密钥的哈希值;进而根据解密出的密钥的哈希值验证解密信息的正确性;
所述层级脱环混淆消息的生成节点之后的第i个转发节点确定解密出的信息中没有明文信息后,将解密出来的信息继续向下一跳节点发送;
所述层级脱环混淆消息的生成节点之后的第h个转发节点接收到上一跳节点发送的所述层级回环混淆消息的第1层信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密,获得如下信息:脱环混淆消息体、消息脱环转发的标识信息out、下阶段路由信息RoutInfo、下阶段的阶段路径参数,以及本节点与所述层级脱环混淆消息的生成节点共享的对称密钥的哈希值;
所述层级脱环混淆消息的生成节点之后的第h个转发节点根据解密出的密钥的哈希值验证解密信息的正确性;并在确定解密出的信息中具有明文信息,且识别出消息脱环转发的标识信息out后,根据下阶段路由信息RoutInfo将解密的信息向对等环的环外节点发送。
5.一种对等环中的节点,其特征在于,包括:
层级回环混淆消息生成模块,用于随机生成层级加密的层级回环混淆消息,并将生成的层级回环混淆消息发送给所述对等环中的下一跳节点;其中,所述生成一个层级回环混淆消息,具体包括:对于具有r个节点的对等环,所述对等环中层级回环混淆消息的生成节点利用分别与所述对等环中各节点共享的对称密钥将混淆消息进行层级加密后,得到r层的层级加密的层级回环混淆消息:生成的层级回环混淆消息的第1层信息DumLBMsg包括:所述层级回环混淆消息的生成节点与自己共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:混淆消息内容DummyString、回环标识信息loopback,以及该密钥的哈希值;对于r≥i>1的情况,生成的层级回环混淆消息的第i层信息包括:层级回环混淆消息的生成节点与对等环中该节点之后的第i-1个节点共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:层级回环混淆消息的第i-1层信息,以及该密钥的哈希值;
信息处理模块,用于从所述对等环中上一跳节点接收信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密;若解密出明文信息,并确定解密出的明文信息中包括回环标识信息loopback后,确认接收的信息为经过所述对等环各节点的、由自己生成的层级回环混淆消息后,丢弃混淆消息内容,完成一次层级回环混淆消息的发送过程;若没有解密出明文信息,则将解密出的信息向环内下一跳节点发送。
6.一种对等环中的节点,其特征在于,包括:
层级脱环混淆消息生成模块,用于随机生成层级加密的层级脱环混淆消息,并将生成的层级脱环混淆消息发送给所述对等环中的下一跳节点;其中,所述生成一个层级脱环混淆消息,具体包括:对于具有r个节点的对等环,所述对等环中层级脱环混淆消息的生成节点随机生成转发节点个数值h,将所述对等环中本节点之后的h个节点作为所述层级脱环混淆消息在所述对等环中进行转发的转发节点;所述对等环中层级脱环混淆消息的生成节点利用分别与所述对等环中h个转发节点共享的对称密钥将混淆消息进行层级加密后,得到h层的层级加密的层级脱环混淆消息:生成的层级脱环混淆消息的第1层信息DumOMsg包括:所述层级脱环混淆消息的生成节点与所述对等环中转发所述层级脱环混淆消息的最后一个转发节点共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:脱环混淆消息体、消息脱环转发的标识信息out、下阶段路由信息RoutInfo、下阶段的阶段路径参数,以及所述层级脱环混淆消息的生成节点与所述对等环中转发所述层级脱环混淆消息的最后一个转发节点共享的对称密钥的哈希值;对于h≥i>1的情况,生成的层级脱环混淆消息的第i层信息包括:所述层级脱环混淆消息的生成节点与对等环中该节点之后的第i个转发节点共享的对称密钥的哈希值,以及利用该密钥加密的如下信息:层级脱环混淆消息的第i-1层信息,以及所述层级脱环混淆消息的生成节点与对等环中该节点之后的第i个转发节点共享的对称密钥的哈希值;
信息处理模块,用于从所述对等环中上一跳节点接收信息后,将哈希值列表中本节点与对等环中各节点共享的对称密钥的哈希值,分别与接收到的信息中的哈希值进行比较;将比较结果一致的哈希值所对应的密钥,作为解密的密钥对接收到的信息中的加密信息进行解密;若解密出明文信息,并确定解密出的明文信息中包括消息脱环转发的标识信息out,则根据解密出的明文信息中的下阶段路由信息将解密出的信息向环外转发;若没有解密出明文信息,则将解密出的信息向环内下一跳节点发送。
7.根据权利要求6所述的节点,其特征在于,还包括:
层级回环混淆消息生成模块,用于随机生成层级加密的层级回环混淆消息,并将生成的层级回环混淆消息发送给所述对等环中的下一跳节点;以及
所述信息处理模块还用于若解密出明文信息,并确定解密出的明文信息中包括回环标识信息loopback后,确认接收的信息为经过所述对等环各节点的、由自己生成的层级回环混淆消息后,丢弃混淆消息内容,完成一次层级回环混淆消息的发送过程。
8.根据权利要求7所述的节点,其特征在于,还包括:
环外信息接收模块,用于利用本节点的私钥对从环外接收到的加密信息进行解密;根据解密得到的阶段路径参数确定所述消息内容在所述对等环中的转发节点,并利用分别与各转发节点共享的对称密钥将解密得到的信息进行层级加密后,将层级加密的信息发送给所述转发节点中的第一个节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010700758.1A CN111970247B (zh) | 2020-07-20 | 2020-07-20 | 匿名通信网络中对等环的混淆消息发送方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010700758.1A CN111970247B (zh) | 2020-07-20 | 2020-07-20 | 匿名通信网络中对等环的混淆消息发送方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111970247A CN111970247A (zh) | 2020-11-20 |
CN111970247B true CN111970247B (zh) | 2022-06-03 |
Family
ID=73361780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010700758.1A Active CN111970247B (zh) | 2020-07-20 | 2020-07-20 | 匿名通信网络中对等环的混淆消息发送方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111970247B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101635918A (zh) * | 2009-08-19 | 2010-01-27 | 西安电子科技大学 | 分层洋葱环路由方法 |
CN102006170A (zh) * | 2010-11-11 | 2011-04-06 | 西安理工大学 | 基于有限域上mq问题对消息匿名环签名的方法 |
CN102098318A (zh) * | 2011-03-23 | 2011-06-15 | 电子科技大学 | 多跳网络的端到端匿名安全通信方法 |
US8260918B2 (en) * | 2000-09-13 | 2012-09-04 | Fortinet, Inc. | Packet routing system and method |
CN105282161A (zh) * | 2015-10-23 | 2016-01-27 | 绵阳师范学院 | IPv6网络中基于随机无状态地址分配策略的点对点匿名通信方法 |
CN106506274A (zh) * | 2016-11-08 | 2017-03-15 | 东北大学秦皇岛分校 | 一种可动态扩展的高效单包溯源方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9674071B2 (en) * | 2015-02-20 | 2017-06-06 | Telefonaktiebolaget Lm Ericsson (Publ) | High-precision packet train generation |
CN105357113B (zh) * | 2015-10-26 | 2018-08-21 | 南京邮电大学 | 一种基于重路由匿名通信路径的构建方法 |
CN109714362B (zh) * | 2019-02-19 | 2021-06-08 | 重庆邮电大学 | 一种轻量级的工业无线网络安全数据融合方法 |
-
2020
- 2020-07-20 CN CN202010700758.1A patent/CN111970247B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8260918B2 (en) * | 2000-09-13 | 2012-09-04 | Fortinet, Inc. | Packet routing system and method |
CN101635918A (zh) * | 2009-08-19 | 2010-01-27 | 西安电子科技大学 | 分层洋葱环路由方法 |
CN102006170A (zh) * | 2010-11-11 | 2011-04-06 | 西安理工大学 | 基于有限域上mq问题对消息匿名环签名的方法 |
CN102098318A (zh) * | 2011-03-23 | 2011-06-15 | 电子科技大学 | 多跳网络的端到端匿名安全通信方法 |
CN105282161A (zh) * | 2015-10-23 | 2016-01-27 | 绵阳师范学院 | IPv6网络中基于随机无状态地址分配策略的点对点匿名通信方法 |
CN106506274A (zh) * | 2016-11-08 | 2017-03-15 | 东北大学秦皇岛分校 | 一种可动态扩展的高效单包溯源方法 |
Non-Patent Citations (2)
Title |
---|
匿名资源发布策略用户区分性的研究;赵文超等;《2011年全国通信安全学术会议论文集》;20110801;全文 * |
基于洋葱路由的双向匿名秘密通信协议;赵梦瑶等;《计算机科学》;20190415(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111970247A (zh) | 2020-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107567704B (zh) | 使用带内元数据的网络路径通过验证 | |
US11050724B2 (en) | IaaS-aided access control for information centric networking with Internet-of-Things | |
EP3254418B1 (en) | Packet obfuscation and packet forwarding | |
EP3157225B1 (en) | Encrypted ccnx | |
JP5449543B2 (ja) | ネットワークにおけるパケットルーティング | |
CN111970243B (zh) | 匿名通信网络中多阶段路由的消息转发方法 | |
CN111970244B (zh) | 基于环形架构的匿名通信网络的构建、消息转发方法 | |
US10681018B2 (en) | Transparent encryption in a content centric network | |
EP3408966B1 (en) | Method and system for interest encryption in a content centric network | |
Rothenberg et al. | Self-routing denial-of-service resistant capabilities using in-packet Bloom filters | |
EP2186252A2 (fr) | Procede de distribution de cles cryptographiques dans un reseau de communication | |
Sengupta et al. | Privacy-preserving network path validation | |
Alston et al. | Neutralizing interest flooding attacks in named data networks using cryptographic route tokens | |
CN111970247B (zh) | 匿名通信网络中对等环的混淆消息发送方法 | |
Alzahrani et al. | Key management in information centric networking | |
Sengupta | Valnet: Privacy-preserving multi-path validation | |
CN109769004B (zh) | 基于保留格式加密的匿名通信方法、设备及系统 | |
Chen | Infrastructure-based anonymous communication protocols in future internet architectures | |
Al Khazaali et al. | Blockchain simulation model for a communication system in IoT devices | |
Li et al. | Privacy-aware secure anonymous communication protocol in CPSS | |
CN114374564A (zh) | 一种内部网关路由链路安全管理系统及方法 | |
Uruena et al. | INDECT advanced security requirements | |
Meligy et al. | Social Network with Dynamic Identity-based Broadcast Encryption using Security Tree | |
Khan et al. | Content-location based key management scheme for content centric networks |
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 |