CN112910890B - 基于时间卷积网络的匿名网络流量指纹识别方法及设备 - Google Patents

基于时间卷积网络的匿名网络流量指纹识别方法及设备 Download PDF

Info

Publication number
CN112910890B
CN112910890B CN202110129289.7A CN202110129289A CN112910890B CN 112910890 B CN112910890 B CN 112910890B CN 202110129289 A CN202110129289 A CN 202110129289A CN 112910890 B CN112910890 B CN 112910890B
Authority
CN
China
Prior art keywords
sequence
time
data packet
layer
basic unit
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
CN202110129289.7A
Other languages
English (en)
Other versions
CN112910890A (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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN202110129289.7A priority Critical patent/CN112910890B/zh
Publication of CN112910890A publication Critical patent/CN112910890A/zh
Application granted granted Critical
Publication of CN112910890B publication Critical patent/CN112910890B/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/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network 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/0421Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Power Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本说明书一个或多个实施例提供基于时间卷积网络的匿名网络流量指纹识别方法及设备,包括:获取目标用户访问的匿名网络的流量数据包;对流量数据包进行解析,生成流量数据包的基本单元层的方向序列、基本单元层的时间序列、方向序列的累积特征序列和时间序列的累积特征序列;将基本单元层的方向序列和方向序列的累积特征序列相结合,将基本单元层的时间序列和时间序列的累积特征序列相结合,并将结合后的序列分别输入预先构建的匿名网络流量指纹识别模型中的不同时间卷积网络中,输出目标用户访问的匿名网络的类别。本发明充分利用匿名网络的流量数据的方向序列和时间序列,提高了识别匿名网络流量指纹的准确性。

Description

基于时间卷积网络的匿名网络流量指纹识别方法及设备
技术领域
本说明书一个或多个实施例涉及互联网技术领域,尤其涉及基于时间卷积网络的匿名网络流量指纹识别方法及设备。
背景技术
匿名网络流量指纹识别技术,是指一个本地、被动的用户能否通过对客户端的流量监听,判断匿名网络用户访问的目的。流量指纹识别是指本地、被动的用户将目标用户客户端的可观察流量收集为数据包序列,将机器学习分类应用于客户端的数据包序列,进而猜测目标用户访问了哪个网页。
现有的网站指纹识别技术,其中基于机器学习方法的技术需要人工选择特征,主要基于直觉、经验以及有关Tor和HTTP协议如何工作的专业知识,比较耗费人力和时间成本。此外,基于机器学习的分类器的性能在很大程度上取决于特定的协议或防御措施。当协议或防御策略更改为隐藏这些提取的特征时,这些识别技术可能会失败。
发明内容
有鉴于此,本说明书一个或多个实施例的目的在于提出基于时间卷积网络的匿名网络流量指纹识别方法及设备,以解决现有的匿名网络识别技术成本较高且准确性较低的问题。
基于上述目的,本说明书一个或多个实施例提供了基于时间卷积网络的匿名网络流量指纹识别方法,包括:
获取目标用户访问的匿名网络的流量数据包;
对所述流量数据包进行解析,生成所述流量数据包的基本单元层的方向序列、基本单元层的时间序列、方向序列的累积特征序列和时间序列的累积特征序列;
将所述基本单元层的方向序列和方向序列的累积特征序列相结合,将所述基本单元层的时间序列和时间序列的累积特征序列相结合,并将结合后的序列分别输入预先构建的匿名网络流量指纹识别模型中的不同时间卷积网络中,输出所述目标用户访问的匿名网络的类别。
可选的,所述对所述流量数据包进行解析,生成所述流量数据包的基本单元层的方向序列、基本单元层的时间序列、方向序列的累积特征序列和时间序列的累积特征序列,包括:
对所述流量数据包进行解析,生成基本单元层的方向序列;
根据所述基本单元层的方向序列,生成基本单元层的时间序列;
根据所述基本单元层的方向序列,生成方向序列的累积特征序列;
根据所述基本单元层的时间序列,生成时间序列的累积特征序列。
可选的,所述对所述流量数据包进行解析,生成基本单元层的方向序列,包括:
将所述流量数据包在传输层安全性协议TLS层进行解析,得到TLS层的数据包序列;
按照预设的基本单元划分规则,对所述TLS层的数据包序列中的TLS层的数据包进行划分,得到TLS层的基本单元;
根据所述TLS层的基本单元中的每个基本单元的流量方向,生成所述基本单元层的方向序列。
可选的,所述根据所述基本单元层的方向序列,生成基本单元层的时间序列,包括:
对应于所述基本单元层的方向序列,将每个基本单元对应的TLS层的数据包的时间作为该基本单元的时间,生成基本单元层的时间序列。
可选的,所述根据所述基本单元层的方向序列,得到方向序列的累积特征序列,包括:
定义所述基本单元层的方向序列为:
F=(q1,q2,…,qM),其中qi为+1或者-1;
则所述基本单元层的方向序列的累积序列为:
D(F)=((0,0),(b1,d1),…,(bM,dM)),其中d1=q1,b1=|q1|,di=d(i-1)+qi,bi=b(i-1)+|qi|,i=2,…,M;
在D(F)上采用分段线性插值方法采样m个等距点,得到m个特征D1,…,Dm,作为所述方向序列的累积特征序列。
可选的,所述根据所述基本单元层的时间序列,得到时间序列的累积特征序列,包括:
定义所述基本单元层的时间序列为:
T=(t1,t2,…,tN);
则所述基本单元层的时间序列的累积序列为:
C(T)=((0,0),(a1,c1),…,(aN,cN)),其中c1=t1,a1=|t1|,ci=c(i-1)+ti,ai=a(i-1)+|ti|,i=2,…,N;
在C(T)上采用分段线性插值方法采样n个等距点,得到n个特征C1,…,Cn,作为所述时间序列的累积特征序列。
可选的,所述将所述基本单元层的方向序列和方向序列的累积特征序列相结合,将所述基本单元层的时间序列和时间序列的累积特征序列相结合,并将结合后的序列分别输入预先构建的匿名网络流量指纹识别模型中的不同时间卷积网络中,输出所述目标用户访问的匿名网络的类别,包括:
将所述基本单元层的方向序列和方向序列的累积特征序列相结合并输入第一时间卷积网络,输出结果方向序列;
将所述基本单元层的时间序列和时间序列的累积特征序列相结合并输入第二时间卷积网络,输出结果时间序列;
利用全连接层收集并组合所述结果方向序列和所述结果时间序列;
利用激活函数将组合后的所述结果方向序列和所述结果时间序列映射到相应的类标签,得到所述目标用户访问的匿名网络的类别。
可选的,所述获取目标用户访问的匿名网络的流量数据包,包括对所述流量数据包进行数据清洗:
删除为空的流量数据包;
删除加载错误的流量数据包;
删除解析失败的流量数据包;
删除识别为异常的流量数据包。
可选的,以实例为单位获取所述目标用户访问的匿名网络的流量数据包,则所述识别为异常的流量数据包,包括:
对于所述目标用户访问的匿名网络包含的实例中的每一个实例,计算该实例包含的流量数据包的大小总和;
响应于该实例不满足:Q1-1.5(Q3-Q1)<I<Q3+1.5(Q3-Q1),将该实例包含的流量数据包作为所述识别为异常的流量数据包;其中,Q1表示四分之一位数;Q3表示四分之三位数;I表示该实例包含的流量数据包的大小总和。
基于同一发明构思,本说明书一个或多个实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的方法。
从上面所述可以看出,本说明书一个或多个实施例提供的基于时间卷积网络的匿名网络流量指纹识别方法及设备,包括:获取目标用户访问的匿名网络的流量数据包;对流量数据包进行解析,生成流量数据包的基本单元层的方向序列、基本单元层的时间序列、方向序列的累积特征序列和时间序列的累积特征序列;将基本单元层的方向序列和方向序列的累积特征序列相结合,将基本单元层的时间序列和时间序列的累积特征序列相结合,并将结合后的序列分别输入预先构建的匿名网络流量指纹识别模型中的不同时间卷积网络中,输出目标用户访问的匿名网络的类别。现有的识别匿名网络的技术方案,无论是基于机器学习方法还是基于深度学习方法,大多数都更关注匿名网络的流量的数据包序列(方向序列),而没有对流量的时间序列进行充分利用。本发明同时考虑数据包序列(方向序列)和时间序列,对于匿名网络的流量的特征的提取更加精准,有效提高了识别匿名网络流量指纹的准确性。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例提供的基于时间卷积网络的匿名网络流量指纹识别方法的一种流程示意图;
图2为本说明书一个或多个实施例提供的特征序列生成方法的一种流程示意图;
图3为本说明书一个或多个实施例提供的匿名网络流量指纹识别模型的一种示意图;
图4为本说明书一个或多个实施例提供的时间卷积网络的残差块的一种结构示意图;
图5为本说明书一个或多个实施例提供的流量数据包的数据清洗方法的一种流程示意图;
图6为本说明书一个或多个实施例提供的一种更为具体的电子设备硬件结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本说明书一个或多个实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
如背景技术部分所述,匿名网络流量指纹识别技术,是指一个本地、被动的用户能否通过对客户端的流量监听,判断匿名网络用户访问的目的。流量指纹识别是指本地、被动的用户将目标用户客户端的可观察流量收集为数据包序列,将机器学习分类应用于客户端的数据包序列,进而猜测目标用户访问了哪个网页。
现有的网站指纹识别技术,其中基于机器学习方法的技术需要人工选择特征,主要基于直觉、经验以及有关Tor和HTTP协议如何工作的专业知识,比较耗费人力和时间成本。此外,基于机器学习的分类器的性能在很大程度上取决于特定的协议或防御措施。当协议或防御策略更改为隐藏这些提取的特征时,这些识别技术可能会失败。
申请人在实现本公开的过程中发现,无论是基于机器学习方法还是基于深度学习方法的技术,大多数工作都更关注流量的数据包序列,而没有对流量的时间序列进行充分利用。
以下,通过具体的实施例进一步详细说明本公开的技术方案。
图1为本说明书一个或多个实施例提供的基于时间卷积网络的匿名网络流量指纹识别方法的一种流程示意图;基于时间卷积网络的匿名网络流量指纹识别方法,包括:
S110、获取目标用户访问的匿名网络的流量数据包。
作为一个可选的实施例,所述流量数据包为过程特性分析软件包pcap文件。pcap文件是一种数据包存储格式,可以理解为就是一种文件格式,pcap文件中的数据是按照特定格式存储的,具体的,pcap文件的总体结构就是文件头-数据包头1-数据包1-数据包头2-数据包2等的形式。数据包头可以有多个,每个数据包头后面都跟着真正的数据包。
S120、对所述流量数据包进行解析,生成所述流量数据包的基本单元层的方向序列、基本单元层的时间序列、方向序列的累积特征序列和时间序列的累积特征序列。
作为一个可选的实施例,使用Wireshark工具对pcap文件进行解析。pcap文件中的数据是按照特定格式存储的,所以想要解析里面的数据,也必须按照一定的格式。普通的记事本打开pcap文件显示的是乱码,用安装了HEX-Editor插件的Notepad++打开,能够以16进制数据的格式显示,用wireshark这种抓包工具就可以正常打开这种文件,查看里面的网络数据包,同时wireshark也可以生成这种格式的文件。当然这些工具只是一些例举,还有很多其它能够查看pcap文件的工具,例如Tranalyzer工具。
作为一个可选的实施例,所述流量数据包的基本单元层的方向序列、基本单元层的时间序列、方向序列的累积特征序列和时间序列的累积特征序列,统称为所述目标用户访问的匿名网络的特征序列,表征了所述目标用户访问的匿名网络的特征。参照图2,S120包括:
S210、对所述流量数据包进行解析,生成基本单元层的方向序列。
作为一个可选的实施例,S210包括:
将所述流量数据包在传输层安全性协议TLS层进行解析,得到TLS层的数据包序列;
按照预设的基本单元划分规则,对所述TLS层的数据包序列中的TLS层的数据包进行划分,得到TLS层的基本单元;
根据所述TLS层的基本单元中的每个基本单元的流量方向,生成所述基本单元层的方向序列。
其中,安全传输层协议TLS用于在两个通信应用程序之间提供保密性和数据完整性。该协议由两层组成:TLS记录协议(TLS Record)和TLS握手协议(TLS Handshake)。记录层协议确定传输层数据的封装格式。
可选的,预设的基本单元划分规则为:对于解析流量数据包得到的TLS层的数据包序列,保持其中每个TLS层的数据包的方向不变,将每个TLS层的数据包的大小除以514,取整将每个TLS层的数据包划分为若干个基本单元。依据匿名网络流量数据包协议设计可知,用户数据首先都以基本单元的格式在Tor的链路中进行转发,且每个基本单元固定大小为514字节,所以将每个数据包的大小除以514,取整即为TLS层中的基本单元个数。
可选的,每个基本单元的流量方向为发出或者接收。将每个基本单元按不同方向记为“1”或“-1”,生成基本单元层的方向序列。其中,1为发出,-1为接收。
例如,TLS层的数据包序列为(550,550,-1200),生成的基本单元层的方向序列则为(1,1,-1,-1)。
S220、根据所述基本单元层的方向序列,生成基本单元层的时间序列。
作为一个可选的实施例,S220包括:
对应于所述基本单元层的方向序列,将每个基本单元对应的TLS层的数据包的时间作为该基本单元的时间,生成基本单元层的时间序列。
现有的识别匿名网络的技术方案,无论是基于机器学习方法还是基于深度学习方法,大多数都更关注匿名网络的流量的数据包序列(方向序列),而没有对流量的时间序列进行充分利用。本发明同时考虑数据包序列(方向序列)和时间序列,对于匿名网络的流量的特征的提取更加精准,有效提高了识别匿名网络的准确性。
S230、根据所述基本单元层的方向序列,生成方向序列的累积特征序列。
作为一个可选的实施例,S230包括:
定义所述基本单元层的方向序列为:
F=(q1,q2,…,qM),其中qi为+1或者-1;qi指的是q1,q2,…,qM中的第i个元素;
则所述基本单元层的方向序列的累积序列为:
D(F)=((0,0),(b1,d1),…,(bM,dM)),其中d1=q1,b1=|q1|,di=d(i-1)+qi,bi=b(i-1)+|qi|,i=2,…,M;di指的是d1,d2,…,dM中的第i个元素;bi指的是b1,b2,…,bM中的第i个元素;
在D(F)上采用分段线性插值方法采样m个等距点,得到m个特征D1,…,Dm,作为所述方向序列的累积特征序列。
S240、根据所述基本单元层的时间序列,生成时间序列的累积特征序列。
作为一个可选的实施例,S240包括:
定义所述基本单元层的时间序列为:
T=(t1,t2,…,tN);
则所述基本单元层的时间序列的累积序列为:
C(T)=((0,0),(a1,c1),…,(aN,cN)),其中c1=t1,a1=|t1|,ci=c(i-1)+ti,ai=a(i-1)+|ti|,i=2,…,N;ci指的是c1,c2,…,cM中的第i个元素;ai指的是a1,a2,…,aM中的第i个元素;ti指的是t1,t2,…,tM中的第i个元素;
在C(T)上采用分段线性插值方法采样n个等距点,得到n个特征C1,…,Cn,作为所述时间序列的累积特征序列。
S130、将所述基本单元层的方向序列和方向序列的累积特征序列相结合,将所述基本单元层的时间序列和时间序列的累积特征序列相结合,并将结合后的序列分别输入预先构建的匿名网络流量指纹识别模型中的不同时间卷积网络中,输出所述目标用户访问的匿名网络的类别。
作为一个可选的实施例,S130包括:
将所述基本单元层的方向序列和方向序列的累积特征序列相结合并输入第一时间卷积网络,输出结果方向序列;
将所述基本单元层的时间序列和时间序列的累积特征序列相结合并输入第二时间卷积网络,输出结果时间序列;
利用全连接层收集并组合所述结果方向序列和所述结果时间序列;
利用激活函数将组合后的所述结果方向序列和所述结果时间序列映射到相应的类标签,得到所述目标用户访问的匿名网络的类别。
参照图3,作为一个可选的实施例,匿名网络流量指纹识别模型包括:
输入层:输入的特征向量分别为基本单元层的时间序列和时间序列的累积特征序列相结合(t1,t2,…,tN)和(C1,C1,…,Cn)以及基本单元层的方向序列和方向序列的累积特征序列相结合(q1,q2,…,qM)和(D1,D2,…,Dm)。
时间卷积网络层:包含两个独立的时间卷积网络。
每一个时间卷积网络中均包括多个残差块。
参照图4,每一个残差块包含若干个卷积(Conv)、非线性映射(ReLU)、权重归一化(Normalization)和随机失活(Dropout)。当残差输入和输出有不同的维度,会往其中添加add一个1x1的卷积。
其中,作为一个优选的实施例,卷积(Conv)是扩张的因果卷积(Dilated CausalConv,如图4)。扩张的因果卷积和普通的卷积相比,可以增大感受视图,更好地学习序列的特征。
随机失活(Dropout)是为了避免过度拟合。如果模型参数过多,而训练样本过少,容易陷入过拟合。过拟合的表现主要是:在训练数据集上损失loss比较小,准确率比较高,但是在测试数据上loss比较大,准确率比较低。Dropout可以比较有效地缓解模型的过拟合问题,起到正则化的作用。
作为一个示例,具体的参数设置是:卷积核大小是8,每个卷积层有24个卷积核。扩张因子为1、2、4、8的四个卷积层堆叠成一个残差块。扩张因子是调节卷积扩张程度的参数。时间卷积网络总体的结构是由16个这样的残差块堆叠而成的。
全连接层:在全连接层中,将最后一个卷积层的输出压平,并把当前层的每个节点和下一层的节点相连。
激活函数层:激活函数层的作用就是分类。简单的说就是每一个特征节点手里握着一定的权重来决定输入是属于那个分类,最终全部特征的权重共同决定了输入所属分类的权重或概率。
输出层:输出目标用户访问的匿名网络的类别。
在匿名网络流量指纹识别模型的训练过程中,使用分类交叉熵作为损失函数。
分类交叉熵损失函数:
Figure BDA0002924933720000101
其中,L是损失;N是样本的数量;i指第i个样本;Li是第i个样本的损失;M是类别的数量;yic是指示变量,取值为0或1,如果该类别与样本i的类别相同则为1,否则为0;pic是对于观测样本i属于类别c的预测概率。
作为一个可选的实施例,所述获取目标用户访问的匿名网络的流量数据包,包括对所述流量数据包进行数据清洗。
在获取流量数据包的过程中,可能由于异常情况导致获取的流量数据无效或有误,为避免这部分异常数据干扰识别结果,对这部分数据进行清洗。
参照图5,对所述流量数据包进行数据清洗,包括:
S510、删除为空的流量数据包。
S520、删除加载错误的流量数据包。
S530、删除解析失败的流量数据包。
S540、删除识别为异常的流量数据包。
其中,作为一个可选的实施例,以实例为单位获取所述目标用户访问的匿名网络的流量数据包,则S540中所述识别为异常的流量数据包,包括:
对于所述目标用户访问的匿名网络包含的实例中的每一个实例,计算该实例包含的流量数据包的大小总和;
响应于该实例不满足:Q1-1.5(Q3-Q1)<I<Q3+1.5(Q3-Q1),将该实例包含的流量数据包作为所述识别为异常的流量数据包;其中,Q1表示四分之一位数;Q3表示四分之三位数;I表示该实例包含的流量数据包的大小总和。
可选的,对于每一个目标用户访问的匿名网络获取多个实例,每一个实例中包含多个流量数据包。每个目标用户访问的匿名网络包含的实例个数和每个实例包含的流量数据包个数是根据实际情况决定的,本发明对此不做限定。
在一种可能的实施方式中,在匿名网络流量指纹识别模型的训练过程中,对于100个网站,每个网站捕获了3000条流量,经过数据清洗后,最后每个网站使用2300条数据进行训练。数据包的长度取5000,少于5000的在后面补0,多于5000的进行截断。受益于时间卷积网络在捕获排序顺序特征和防止内存泄漏方面的优势,将序列填充和截断为5000长度。
可选的,对于四分之一位数Q1和四分之三位数Q3:是一组数据排序后处于25%和75%位置上的值。四分位数是通过3个点将全部数据等分为4部分,其中每部分包含25%的数据。很显然,中间的四分位数就是中位数,因此通常所说的四分位数是指处在25%位置上的数值(称为下四分位数)和处在75%位置上的数值(称为上四分位数)。与中位数的计算方法类似,根据未分组数据计算四分位数时,首先对数据进行排序,然后确定四分位数所在的位置,该位置上的数值就是四分位数。与中位数不同的是,四分位数位置的确定方法有几种,每种方法得到的结果会有一定差异,但差异不会很大。
本说明书一个或多个实施例,为了验证本发明提供的基于时间卷积网络的匿名网络流量指纹识别方法及设备的性能,进行了仿真实验,在仿真实验中,将本发明和现有网站指纹识别技术进行了对比,参与实验的现有技术方法有:CUMUL、Rimmer-CNN和var-CNN。
CUMUL,使用SVM并主要利用数据包大小的累积总和作为特征。当面对扰乱累积分组长度信息的防御时,CUMUL攻击的精确度会显着降低。Rimmer-CNN,在封闭世界场景下使用具有一定的准确率。Var-CNN,这是一个使用数据包信息的复杂模型。对应于上述两个序列,他们训练了两个优化的CNN,然后将它们组合起来以达到更高的精度。他们的模型在数据集较小的训练条件下效果更优。
本发明和现有网站指纹识别技术的实验结果对比如表1所示:
表1本发明和现有网站指纹识别技术的实验结果对比
Figure BDA0002924933720000111
仿真实验的结果表示:本发明提供的基于时间卷积网络的匿名网络流量指纹识别方法,在面对有时间序列和无时间序列的情况下,均能实现较好的准确率。
从上面所述可以看出,本说明书一个或多个实施例提供的基于时间卷积网络的匿名网络流量指纹识别方法及设备,包括:获取目标用户访问的匿名网络的流量数据包;对流量数据包进行解析,生成流量数据包的基本单元层的方向序列、基本单元层的时间序列、方向序列的累积特征序列和时间序列的累积特征序列;将基本单元层的方向序列和方向序列的累积特征序列相结合,将基本单元层的时间序列和时间序列的累积特征序列相结合,并将结合后的序列分别输入预先构建的匿名网络流量指纹识别模型中的不同时间卷积网络中,输出目标用户访问的匿名网络的类别。本发明充分利用匿名网络的流量数据的方向序列和时间序列,提高了识别匿名网络流量指纹的准确性。
可以理解,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。
需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
图6示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本说明书一个或多个实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本说明书一个或多个实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本说明书一个或多个实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本说明书一个或多个实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (8)

1.基于时间卷积网络的匿名网络流量指纹识别方法,其特征在于,包括:
获取目标用户访问的匿名网络的流量数据包;
对所述流量数据包进行解析,生成所述流量数据包的基本单元层的方向序列、基本单元层的时间序列、方向序列的累积特征序列和时间序列的累积特征序列,具体包括:
根据所述基本单元层的方向序列,得到所述方向序列的累积特征序列,包括:
定义所述基本单元层的方向序列为:
F=(q1,q2,…,qM),其中qi为+1或者-1;
则所述基本单元层的方向序列的累积序列为:
D(F)=((0,0),(b1,d1),…,(bM,dM)),其中d1=q1,b1=|q1|,di=d(i-1)+qi,bi=b(i-1)+|qi|,i=2,…,M;
在D(F)上采用分段线性插值方法采样m个等距点,得到m个特征D1,…,Dm,作为所述方向序列的累积特征序列;
根据所述基本单元层的时间序列,得到所述时间序列的累积特征序列,包括:
定义所述基本单元层的时间序列为:
T=(t1,t2,…,tN);
则所述基本单元层的时间序列的累积序列为:
C(T)=((0,0),(a1,c1),…,(aN,cN)),其中c1=t1,a1=|t1|,ci=c(i-1)+ti,ai=a(i-1)+|ti|,i=2,…,N;
在C(T)上采用分段线性插值方法采样n个等距点,得到n个特征C1,…,Cn,作为所述时间序列的累积特征序列;
将所述基本单元层的方向序列和方向序列的累积特征序列相结合,将所述基本单元层的时间序列和时间序列的累积特征序列相结合,并将结合后的序列分别输入预先构建的匿名网络流量指纹识别模型中的不同时间卷积网络中,输出所述目标用户访问的匿名网络的类别。
2.根据权利要求1所述的方法,其特征在于,所述对所述流量数据包进行解析,生成所述流量数据包的基本单元层的方向序列、基本单元层的时间序列、方向序列的累积特征序列和时间序列的累积特征序列,包括:
对所述流量数据包进行解析,生成所述基本单元层的方向序列;
根据所述基本单元层的方向序列,生成所述基本单元层的时间序列;
根据所述基本单元层的方向序列,生成所述方向序列的累积特征序列;
根据所述基本单元层的时间序列,生成所述时间序列的累积特征序列。
3.根据权利要求2所述的方法,其特征在于,所述对所述流量数据包进行解析,生成基本单元层的方向序列,包括:
将所述流量数据包在传输层安全性协议TLS层进行解析,得到TLS层的数据包序列;
按照预设的基本单元划分规则,对所述TLS层的数据包序列中的TLS层的数据包进行划分,得到TLS层的基本单元;
根据所述TLS层的基本单元中的每个基本单元的流量方向,生成所述基本单元层的方向序列。
4.根据权利要求3所述的方法,其特征在于,所述根据所述基本单元层的方向序列,生成基本单元层的时间序列,包括:
对应于所述基本单元层的方向序列,将每个基本单元对应的TLS层的数据包的时间作为该基本单元的时间,生成基本单元层的时间序列。
5.根据权利要求1所述的方法,其特征在于,所述将所述基本单元层的方向序列和方向序列的累积特征序列相结合,将所述基本单元层的时间序列和时间序列的累积特征序列相结合,并将结合后的序列分别输入预先构建的匿名网络流量指纹识别模型中的不同时间卷积网络中,输出所述目标用户访问的匿名网络的类别,包括:
将所述基本单元层的方向序列和方向序列的累积特征序列相结合并输入第一时间卷积网络,输出结果方向序列;
将所述基本单元层的时间序列和时间序列的累积特征序列相结合并输入第二时间卷积网络,输出结果时间序列;
利用全连接层收集并组合所述结果方向序列和所述结果时间序列;
利用激活函数将组合后的所述结果方向序列和所述结果时间序列映射到相应的类标签,得到所述目标用户访问的匿名网络的类别。
6.根据权利要求1所述的方法,其特征在于,所述获取目标用户访问的匿名网络的流量数据包,包括对所述流量数据包进行数据清洗:
删除为空的流量数据包;
删除加载错误的流量数据包;
删除解析失败的流量数据包;
删除识别为异常的流量数据包。
7.根据权利要求6所述的方法,其特征在于,以实例为单位获取所述目标用户访问的匿名网络的流量数据包,则所述识别为异常的流量数据包,包括:
对于所述目标用户访问的匿名网络包含的实例中的每一个实例,计算该实例包含的流量数据包的大小总和;
响应于该实例不满足:Q1-1.5(Q3-Q1)<I<Q3+1.5(Q3-Q1),将该实例包含的流量数据包作为所述识别为异常的流量数据包;其中,Q1表示四分之一位数;Q3表示四分之三位数;I表示该实例包含的流量数据包的大小总和。
8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任意一项所述的方法。
CN202110129289.7A 2021-01-29 2021-01-29 基于时间卷积网络的匿名网络流量指纹识别方法及设备 Active CN112910890B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110129289.7A CN112910890B (zh) 2021-01-29 2021-01-29 基于时间卷积网络的匿名网络流量指纹识别方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110129289.7A CN112910890B (zh) 2021-01-29 2021-01-29 基于时间卷积网络的匿名网络流量指纹识别方法及设备

Publications (2)

Publication Number Publication Date
CN112910890A CN112910890A (zh) 2021-06-04
CN112910890B true CN112910890B (zh) 2022-05-10

Family

ID=76121615

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110129289.7A Active CN112910890B (zh) 2021-01-29 2021-01-29 基于时间卷积网络的匿名网络流量指纹识别方法及设备

Country Status (1)

Country Link
CN (1) CN112910890B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113938290B (zh) * 2021-09-03 2022-11-11 华中科技大学 一种用户侧流量数据分析的网站去匿名方法和系统
CN114363353A (zh) * 2021-10-27 2022-04-15 北京邮电大学 一种比特币隐藏服务的匿名通信流量的识别方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103942425A (zh) * 2014-04-14 2014-07-23 中国人民解放军国防科学技术大学 一种数据处理方法和装置
CN109189827A (zh) * 2018-08-16 2019-01-11 阿里巴巴集团控股有限公司 时间序列处理方法和装置、电子设备
CN111260030A (zh) * 2020-01-13 2020-06-09 润联软件系统(深圳)有限公司 基于a-tcn电力负荷预测方法、装置、计算机设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110012029B (zh) * 2019-04-22 2020-05-26 中国科学院声学研究所 一种区分加密和非加密压缩流量的方法和系统
CN110363023B (zh) * 2019-06-20 2023-03-21 广东工业大学 一种基于phmm的匿名网络溯源方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103942425A (zh) * 2014-04-14 2014-07-23 中国人民解放军国防科学技术大学 一种数据处理方法和装置
CN109189827A (zh) * 2018-08-16 2019-01-11 阿里巴巴集团控股有限公司 时间序列处理方法和装置、电子设备
CN111260030A (zh) * 2020-01-13 2020-06-09 润联软件系统(深圳)有限公司 基于a-tcn电力负荷预测方法、装置、计算机设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
2ch-TCN: A Website Fingerprinting Attack over Tor Using 2-channel Temporal Convolutional Networks;Meiqi Wang等;《2020 IEEE Symposium on Computers and Communications (ISCC)》;20200710;正文第1-7页 *
基于循环时间卷积网络的序列流推荐算法;李太松等;《计算机科学》;20200331;全文 *

Also Published As

Publication number Publication date
CN112910890A (zh) 2021-06-04

Similar Documents

Publication Publication Date Title
CN111033531B (zh) 用于格式化神经网络参数的系统和设备
CN109829506B (zh) 图像处理方法、装置、电子设备和计算机存储介质
CN107204956B (zh) 网站识别方法及装置
CN112910890B (zh) 基于时间卷积网络的匿名网络流量指纹识别方法及设备
WO2018053511A1 (en) Threat scoring system and method
CN113177209B (zh) 基于深度学习的加密流量分类方法及相关设备
CN112541592B (zh) 基于差分隐私的联邦学习方法、装置及电子设备
CN108763274A (zh) 访问请求的识别方法、装置、电子设备及存储介质
JP7096431B2 (ja) ビデオ分析方法及びそれに関連するモデル訓練方法、機器、装置
CN112883227B (zh) 一种基于多尺度时序特征的视频摘要生成方法和装置
WO2019238125A1 (zh) 信息处理方法、相关设备及计算机存储介质
CN111369258A (zh) 实体对象类型的预测方法、装置及设备
CN111079944A (zh) 迁移学习模型解释实现方法及装置、电子设备、存储介质
US20140279815A1 (en) System and Method for Generating Greedy Reason Codes for Computer Models
WO2021042895A1 (zh) 基于神经网络的验证码识别方法、系统及计算机设备
CN109145987A (zh) 模型生成方法及装置
CN110956131B (zh) 单目标追踪方法、装置及系统
CN114549849A (zh) 图像识别方法、装置、计算机设备和存储介质
TW201903649A (zh) 辨識系統、辨識方法及非暫態電腦可讀取媒體
CN114448661A (zh) 慢速拒绝服务攻击检测方法及相关设备
CN113783795B (zh) 加密流量分类方法及相关设备
CN116055092A (zh) 一种隐蔽隧道攻击行为检测方法和装置
CN115314239A (zh) 基于多模型融合的隐匿恶意行为的分析方法和相关设备
JP7024687B2 (ja) データ分析システム、学習装置、方法、及びプログラム
CN110489592B (zh) 视频分类方法、装置、计算机设备和存储介质

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