CN109889616A - 一种识别域名的方法及装置 - Google Patents

一种识别域名的方法及装置 Download PDF

Info

Publication number
CN109889616A
CN109889616A CN201810489709.0A CN201810489709A CN109889616A CN 109889616 A CN109889616 A CN 109889616A CN 201810489709 A CN201810489709 A CN 201810489709A CN 109889616 A CN109889616 A CN 109889616A
Authority
CN
China
Prior art keywords
character
domain name
vector
character vector
input
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.)
Granted
Application number
CN201810489709.0A
Other languages
English (en)
Other versions
CN109889616B (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.)
New H3C Security Technologies Co Ltd
Original Assignee
New H3C Security Technologies Co 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 New H3C Security Technologies Co Ltd filed Critical New H3C Security Technologies Co Ltd
Priority to CN201810489709.0A priority Critical patent/CN109889616B/zh
Priority to US17/050,026 priority patent/US20210097399A1/en
Priority to PCT/CN2019/087076 priority patent/WO2019223587A1/zh
Priority to JP2021510515A priority patent/JP7069410B2/ja
Priority to EP19808429.5A priority patent/EP3799398A4/en
Publication of CN109889616A publication Critical patent/CN109889616A/zh
Application granted granted Critical
Publication of CN109889616B publication Critical patent/CN109889616B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • 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
    • 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
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]

Abstract

本发明实施例提供了一种识别域名的方法及装置,涉及通信技术领域,方法包括:接收终端发送的域名解析请求,域名解析请求包括待识别的域名,域名包括至少一个字符,确定域名对应的序列矩阵,序列矩阵包括至少一个字符向量,至少一个字符向量中每个字符向量与至少一个字符中每个字符一一对应,将至少一个字符向量中每个字符向量,依次输入至输入输出门,输入输出门包括多个激活函数之间的逻辑运算规则,通过多个激活函数之间的逻辑运算规则,分别对至少一个字符向量中每个字符向量进行逻辑运算处理,得到序列矩阵对应的特征向量,将序列矩阵对应的特征向量输入至域名分类模型中,确定域名是否为合法域名。采用本发明可以提高识别域名的准确度。

Description

一种识别域名的方法及装置
技术领域
本发明涉及通信技术领域,特别是涉及一种识别域名的方法及装置。
背景技术
目前,终端在访问网络的过程中,终端首先通过DNS服务器获取目标终端的网络协议(英文:Internet Protocol,简称:IP)地址。然后,根据目标终端的IP地址,终端与目标终端建立通信链路,进而与目标终端进行数据交互。在实际组网中,由于终端存在被病毒程序感染的情况,被感染的终端会与不法分子设置的恶意终端进行数据传输,给网络带来较大安全风险。
为了阻止被感染的电子设备与恶意终端之间的数据传输,DNS服务器在接收到终端发送的域名解析请求后,对域名解析请求包括的域名进行字符提取。通过将字符与已存储的字符特征库进行比对,实现对域名的合法性判断。
当域名为非法域名时,则DNS服务器不会向该终端发送响应消息,以避免该终端向恶意终端发送数据报文;如果域名为合法域名,则DNS服务器向终端发送响应消息,该响应消息中携带有域名对应的IP地址,以使终端访问该IP地址对应的目标终端。
然而,现有技术中的字符特征库是在先由技术人员统一设定,字符特征库包括的字符不够全面且有效性较差,这使得现有域名识别方式的准确度较低。
发明内容
本发明实施例的目的在于提供一种识别域名的方法及装置,以实现提高识别域名的准确度的技术效果。具体技术方案如下:
第一方面,提供了一种识别域名的方法,所述方法应用于网络设备,所述网络设备中已配置域名特征分析模型和域名分类模型,所述域名特征分析模型包括输入输出门,所述方法包括:
接收终端发送的域名解析请求,所述域名解析请求包括待识别的域名,所述域名包括至少一个字符;
确定所述域名对应的序列矩阵,所述序列矩阵包括至少一个字符向量,所述至少一个字符向量中每个字符向量与所述至少一个字符中每个字符一一对应;
将所述至少一个字符向量中每个字符向量,依次输入至所述输入输出门,所述输入输出门包括多个激活函数之间的逻辑运算规则;
通过所述多个激活函数之间的逻辑运算规则,分别对所述至少一个字符向量中每个字符向量进行逻辑运算处理,得到所述序列矩阵对应的特征向量;
将所述序列矩阵对应的特征向量输入至所述域名分类模型中,确定所述域名是否为合法域名。
可选的,所述确定所述域名对应的序列矩阵,包括:
从所述域名中,获取有效字符,所述有效字符由所述域名中除已存储的前缀字符和已存储的后缀字符以外的字符构成;
根据已存储的字符与索引值映射规则,确定所述有效字符中每个字符对应的索引值,得到所述有效字符对应的第一索引序列;
当所述第一索引序列未达到标准长度时,将所述第一索引序列填充为第二索引序列,所述第二索引序列具有标准长度;
计算所述第二索引序列中每个索引值对应的字符向量;
利用所述第二索引序列中的每个索引值对应的字符向量,构成所述序列矩阵。
可选的,所述通过所述多个激活函数之间的逻辑运算规则,分别对所述至少一个字符向量中每个字符向量进行逻辑运算处理,得到所述序列矩阵对应的特征向量,包括:
获取当前输入至所述输入输出门的第一字符向量、上一次输入至所述输入输出门的第二字符向量的输出值、以及上一次输入至所述输入输出门的第二字符向量的反馈值;
对所述第一字符向量、所述第二字符向量的输出值、以及所述第二字符向量的反馈值进行第一逻辑运算,得到所述第一字符向量的输出值;
将得到的至少一个字符向量的输出值构成所述序列矩阵对应的特征向量。
可选的,所述对所述第一字符向量、所述第二字符向量的输出值、以及所述第二字符向量的反馈值进行第一逻辑运算,得到所述第一字符向量的输出值,包括:
根据第一权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第一加权计算,得到第一加权结果;
根据第二权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第二加权计算,得到第二加权结果;
将所述第一加权结果和第一偏置参数输入至第一激活函数,得到第一运算结果;
将所述第二加权结果和第二偏置参数输入至第二激活函数,得到第二运算结果;
将所述第一运算结果和所述第二运算结果相乘,将相乘得到的结果与所述第二字符向量的输出值相加,得到所述第一字符向量对应的输出值。
可选的,所述域名特征分析模型还包括反馈门;
所述得到所述第一字符向量的输出值之后,所述方法还包括:
对所述第一字符向量的输出值、所述第一字符向量、以及所述第二字符向量的反馈值进行第二逻辑运算,得到所述第一字符向量的反馈值;
其中,所述反馈值用于计算下一次输入至所述输入输出门的字符向量的输出值。
可选的,所述对所述第一字符向量的输出值、所述第一字符向量、以及所述第二字符向量的反馈值进行第二逻辑运算,得到所述第一字符向量的反馈值,包括:
根据第三权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第三加权计算,得到第三加权结果;
将所述第三加权结果和第三偏置参数输入至第三激活函数,得到第三运算结果;
将所述第一字符向量的输出值输入至第四激活函数,得到第四运算结果;
将所述第三运算结果与所述第四运算结果相乘,得到第一字符向量的反馈值。
可选的,所述方法还包括:
获取已存储的训练样本集合,所述训练样本集合包括多个正样本子集和多个负样本子集,所述正样本子集为合法域名样本对应的序列矩阵;所述负样本子集为非法域名样本对应的序列矩阵;
将所述序列矩阵包括的每个字符向量,依次输入至第一初始训练模型,得到所述每个字符向量对应的输出值;
利用所述每个字符向量的输出值,构成所述序列矩阵对应的特征向量;
将所述序列矩阵对应的特征向量输入至第二初始训练模型,得到样本子集对应的域名识别结果;
通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第一初始训练模型中所述第一权重矩阵、所述第二权重矩阵、所述第三权重矩阵、所述第一偏置参数、所述第二偏置参数和所述第三偏置参数的数值进行调整,得到所述域名特征分析模型;
通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第二初始训练模型进行调整,得到所述域名分类模型。
可选的,所述方法还包括:
如果确定所述域名为合法域名,则向所述终端发送响应消息,所述响应消息包括所述域名对应的网络协议IP地址。
第二方面,提供了一种识别域名的装置,所述装置应用于网络设备,所述网络设备中已配置域名特征分析模型和域名分类模型,所述域名特征分析模型包括输入输出门,所述装置包括:
接收模块,用于接收终端发送的域名解析请求,所述域名解析请求包括待识别的域名,所述域名包括至少一个字符;
第一确定模块,用于确定所述域名对应的序列矩阵,所述序列矩阵包括至少一个字符向量,所述至少一个字符向量中每个字符向量与所述至少一个字符中每个字符一一对应;
第一输入模块,用于将所述至少一个字符向量中每个字符向量,依次输入至所述输入输出门,所述输入输出门包括多个激活函数之间的逻辑运算规则;
处理模块,用于通过所述多个激活函数之间的逻辑运算规则,分别对所述至少一个字符向量中每个字符向量进行逻辑运算处理,得到所述序列矩阵对应的特征向量;
第二确定模块,用于将所述序列矩阵对应的特征向量输入至所述域名分类模型中,确定所述域名是否为合法域名。
可选的,所述第一确定模块,包括:
第一获取子模块,用于从所述域名中,获取有效字符,所述有效字符由所述域名中除已存储的前缀字符和已存储的后缀字符以外的字符构成;
确定子模块,用于根据已存储的字符与索引值映射规则,确定所述有效字符中每个字符对应的索引值,得到所述有效字符对应的第一索引序列;
填充子模块,用于当所述第一索引序列未达到标准长度时,将所述第一索引序列填充为第二索引序列,所述第二索引序列具有标准长度;
第一计算子模块,用于计算所述第二索引序列中每个索引值对应的字符向量;
构成子模块,用于利用所述第二索引序列中的每个索引值对应的字符向量,构成所述序列矩阵。
可选的,所述处理模块,包括:
第二获取子模块,用于获取当前输入至所述输入输出门的第一字符向量、上一次输入至所述输入输出门的第二字符向量的输出值、以及上一次输入至所述输入输出门的第二字符向量的反馈值;
运算子模块,用于对所述第一字符向量、所述第二字符向量的输出值、以及所述第二字符向量的反馈值进行第一逻辑运算,得到所述第一字符向量的输出值;
第三获取子模块,用于将得到的至少一个字符向量的输出值构成所述序列矩阵对应的特征向量。
可选的,所述运算子模块,包括:
第一计算单元,用于根据第一权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第一加权计算,得到第一加权结果;
第二计算单元,用于根据第二权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第二加权计算,得到第二加权结果;
第一输入单元,用于将所述第一加权结果和第一偏置参数输入至第一激活函数,得到第一运算结果;
第二输入单元,用于将所述第二加权结果和第二偏置参数输入至第二激活函数,得到第二运算结果;
第三计算单元,用于将所述第一运算结果和所述第二运算结果相乘,将相乘得到的结果与所述第二字符向量的输出值相加,得到所述第一字符向量对应的输出值。
可选的,所述域名特征分析模型还包括反馈门,所述装置还包括:
运算模块,用于对所述第一字符向量的输出值、所述第一字符向量、以及所述第二字符向量的反馈值进行第二逻辑运算,得到所述第一字符向量的反馈值;
其中,所述反馈值用于计算下一次输入至所述输入输出门的字符向量的输出值。
可选的,所述运算模块,包括:
第二计算子模块,用于根据第三权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第三加权计算,得到第三加权结果;
第一输入子模块,用于将所述第三加权结果和第三偏置参数输入至第三激活函数,得到第三运算结果;
第二输入子模块,用于将所述第一字符向量的输出值输入至第四激活函数,得到第四运算结果;
相乘子模块,用于将所述第三运算结果与所述第四运算结果相乘,得到第一字符向量的反馈值。
可选的,所述装置还包括:
获取模块,用于获取已存储的训练样本集合,所述训练样本集合包括多个正样本子集和多个负样本子集,所述正样本子集为合法域名样本对应的序列矩阵;所述负样本子集为非法域名样本对应的序列矩阵;
第二输入模块,用于将所述序列矩阵包括的每个字符向量,依次输入至第一初始训练模型,得到所述每个字符向量对应的输出值;
构成模块,用于利用所述每个字符向量的输出值,构成所述序列矩阵对应的特征向量;
第三输入模块,用于将所述序列矩阵对应的特征向量输入至第二初始训练模型,得到样本子集对应的域名识别结果;
第一调整模块,用于通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第一初始训练模型中所述第一权重矩阵、所述第二权重矩阵、所述第三权重矩阵、所述第一偏置参数、所述第二偏置参数和所述第三偏置参数的数值进行调整,得到所述域名特征分析模型;
第二调整模块,用于通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第二初始训练模型进行调整,得到所述域名分类模型。
可选的,所述装置还包括:
发送模块,用于如果确定所述域名为合法域名,则向所述终端发送响应消息,所述响应消息包括所述域名对应的网络协议IP地址。
第三方面,提供了一种网络设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现第一方面任一所述的方法步骤。
第四方面,提供了一种机器可读存储介质,其特征在于,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现第一方面任一所述的方法步骤。
本发明实施例提供的识别域名的方法,应用于网络设备,网络设备中已配置域名特征分析模型和域名分类模型,域名特征分析模型包括输入输出门。
首先,网络设备接收终端发送的域名解析请求,该域名解析请求包括待识别的域名,域名包括至少一个字符。网络设备确定域名对应的序列矩阵,其中,序列矩阵包括至少一个字符向量,至少一个字符向量中每个字符向量与至少一个字符中每个字符一一对应。
然后,网络设备将至少一个字符向量中每个字符向量,依次输入至输入输出门。输入输出门包括多个激活函数之间的逻辑运算规则。网络设备通过多个激活函数之间的逻辑运算规则,分别对至少一个字符向量中每个字符向量进行逻辑运算处理,得到序列矩阵对应的特征向量。
最后,网络设备将序列矩阵对应的特征向量输入至域名分类模型中,确定域名是否为合法域名。
基于本发明实施例,不需要技术人员设定字符特征库,提高了识别域名的准确度。当然,实施本发明的任一产品或方法必不一定需要同时达到以上的所有优点。
附图说明
图1为本发明实施例提供的一种识别域名的方法流程图;
图2为本发明实施例提供的一种确定序列矩阵的方法流程图;
图3为本发明实施例提供的一种计算特征向量的方法流程图;
图4为本发明实施例提供的一种输入输出门的逻辑结构图;
图5为本发明实施例提供的一种反馈门的逻辑结构图;
图6为本发明实施例提供的一种域名特征分析模型和域名分类模型的训练方法流程图;
图7为本发明实施例提供的一种识别域名的装置的结构示意图;
图8为本发明实施例提供的一种识别域名的装置的结构示意图;
图9为本发明实施例提供的一种识别域名的装置的结构示意图;
图10为本发明实施例提供的一种识别域名的装置的结构示意图;
图11为本发明实施例提供的一种识别域名的装置的结构示意图;
图12为本发明实施例提供的一种识别域名的装置的结构示意图;
图13为本发明实施例提供的一种识别域名的装置的结构示意图;
图14为本发明实施例提供的一种网络设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种识别域名的方法,该方法可以应用于具有域名解析功能的网络设备。比如,DNS服务器。当某终端(可称为源终端)需要向某服务器(可称为目的设备)发送报文时,源终端先获取目的设备的域名,比如用户需要访问某网站时,需要先输入该网站的域名。源终端向网络设备发送域名解析请求,域名解析请求包括目的设备的域名。网络设备根据预先存储的域名和IP地址的对应关系,确定该域名对应的IP地址。然后,网络设备将该IP地址发送给源终端,以使源终端可以通过该IP地址向目的设备发送报文。
本发明实施例中,网络设备中已配置域名特征分析模型和域名分类模型,其中,域名特征分析模型包括输入输出门。当网络设备接收到终端发送的域名解析请求时,网络设备通过域名特征分析模型和域名分类模型,识别该域名解析请求包含的域名是否为合法域名。通过本发明实施例提供的识别域名的方法,可以提高识别域名的准确度,从而提高用户数据的安全性。如图1所示,该方法的处理过程可以如下:
步骤101,接收终端发送的域名解析请求。
其中,域名解析请求包括待识别的域名,域名包括至少一个字符。
在本发明实施例中,当源终端需要向目的设备发送报文时,先向该网络设备发送域名解析请求,域名解析请求中携带有目的设备的域名(即待解析的域名)。网络设备接收到该域名解析请求后,对该域名解析请求进行解析,获取待解析的域名。
其中,目的设备是具有域名的网络设备,可以是主机、服务器或虚拟机等。
步骤102,确定域名对应的序列矩阵。
在本发明实施例中,网络设备获取到待识别的域名后,计算该域名对应的序列矩阵。序列矩阵包括至少一个字符向量。其中,至少一个字符向量中每个字符向量与至少一个字符中每个字符一一对应。序列矩阵的计算方法后续会进行详细说明。
步骤103,将至少一个字符向量中每个字符向量,依次输入至输入输出门。
在本发明实施例中,域名特征分析模型包括输入输出门,其中,输入输出门包括多个激活函数之间的逻辑运算规则。本发明实施例中,多个激活函数可以采用tanh激活函数。网络设备构成序列矩阵后,将序列矩阵包含的每个字符向量,依此输入至输入输出门。tanh激活函数的公式为:
F(x)=(ex–e-x)/(ex+e-x) (1)
其中,e为自然对数的底数。
网络设备将上述序列矩阵中的每个字符向量,依次输入至输入输出门,以计算该序列矩阵对应的特征向量。
步骤104,通过多个激活函数之间的逻辑运算规则,分别对至少一个字符向量中每个字符向量进行逻辑运算处理,得到序列矩阵对应的特征向量。
在本发明实施例中,针对输入至输入输出门的每个字符向量,网络设备通过上述多个激活函数之间的逻辑运算规则,对当前输入至输入输出门的字符向量进行逻辑运算处理,得到序列矩阵对应的特征向量。其中,逻辑运算处理包括算术和逻辑运算。
需要说明的是,本发明实施例对现有的循环神经网络中的输入输出门进行了改进,本发明实施例中的域名特征分析模型可以通过改进后的循环神经网络来实现。通过输入输出门对字符向量进行逻辑运算处理的具体过程后续会详细说明。
步骤105,将序列矩阵对应的特征向量输入至域名分类模型中,确定域名是否为合法域名。
在本发明实施例中,域名分类模型可以是神经元数量为1的全连接层(英文:FullConnection layer)。网络设备将域名特征分析模型的输出(即序列矩阵对应的特征向量),输入至域名分类模型中,域名分类模型则会输出该特征向量对应的分类结果,该分类结果表示该域名为非法域名的概率。网络设备根据该分类结果,确定该域名是否为合法域名。
例如,合法域名对应的分类结果为0,非法域名对应的分类结果为1,预设阈值为0.6,如果该域名对应的分类结果为0.8>0.6,则确定该域名为非法域名,如果该域名对应的分类结果为0.2<0.6,则确定该域名为合法域名。
可选的,如果网络设备确定域名为合法域名,则向终端发送响应消息,响应消息中携带有域名对应的IP地址。
在本发明实施例中,如果该域名为合法域名,网络设备则会根据预先存储的域名和IP地址的对应关系,确定该域名对应的IP地址,进而将确定出的IP地址发送给该终端,以使该终端通过该IP地址向目的设备发送报文。如果该域名为非法域名,网络设备则不会向该终端发送响应消息,或者发送对应该域名的提示信息,该提示信息用于表示该终端请求解析的域名为非法域名。
本发明实施例提供的识别域名的方法,首先,网络设备接收终端发送的域名解析请求,该域名解析请求包括待识别的域名,域名包括至少一个字符。网络设备确定域名对应的序列矩阵,其中,序列矩阵包括至少一个字符向量,至少一个字符向量中每个字符向量与至少一个字符中每个字符一一对应。
然后,网络设备将至少一个字符向量中每个字符向量,依次输入至输入输出门。输入输出门包括多个激活函数之间的逻辑运算规则。网络设备通过多个激活函数之间的逻辑运算规则,分别对至少一个字符向量中每个字符向量进行逻辑运算处理,得到序列矩阵对应的特征向量。
最后,网络设备将序列矩阵对应的特征向量输入至域名分类模型中,确定域名是否为合法域名。
基于本发明实施例,不需要技术人员设定字符特征库,提高了识别域名的准确度。
可选的,本发明实施例还提供了一种确定域名对应的序列矩阵的方法,如图2所示,该方法的具体处理过程如下:
步骤201,从域名中,获取有效字符,有效字符由域名中除已存储的前缀字符和已存储的后缀字符以外的字符构成。
在本发明实施例中,网络设备会存储域名中常用的前缀字符和后缀字符。其中,后缀字符为网络名,比如www.、“ftp.”和“smtp.”等;后缀字符为顶级域名,比如“.com”、“.net”、“.edu”和“.gov”等。网络设备识别域名包含的前缀字符和后缀字符,然后提取出除前缀字符和后缀字符以外的字符,提取出的字符即为有效字符。例如,域名为www.google.com,提取除www.和.com以外的字符串,得到google。
步骤202,根据已存储的字符与索引值映射规则,确定有效字符中每个字符对应的索引值,得到有效字符对应的第一索引序列。
在本发明实施例中,网络设备中存储域名中可能出现的字符,然后为各字符分配索引值,从而生成字符与索引值映射规则。
在一种可能的实现方式中,网络设备中存储有域名中可能出现的字符,然后从1开始依次为各字符进行编号,每个字符对应的编号,即为每个字符对应的索引值。例如,可能出现的字符为a、b、c、d,网络设备确定a对应的编号为1,b对应的编号为2,c对应的编号为3,d对应的编号为4,则a的索引值为1,b的索引值为2,c的索引值为3,d的索引值为4。参照表一,为本发明实施例提供的一种字符与索引值映射规则示例。
字符 索引值 字符 索引值
g 1 a 4
o 2 l 5
f 3 e 6
网络设备获取有效字符后,根据已存储的字符与索引值映射规则,确定有效字符中每个字符对应的索引值,得到有效字符对应的第一索引序列。例如,域名为www.google.com,有效字符为google,基于表一所示的字符与索引值映射规则,第一索引序列为1、2、2、1、5、6。
步骤203,当第一索引序列未达到标准长度时,将第一索引序列填充为第二索引序列。
其中,第二索引序列具有标准长度。
在本发明实施例中,网络设备得到有效字符对应的第一索引序列之后,判断第一索引序列是否达到标准长度。其中,标准长度可以由技术人员根据经验进行设置,标准长度通常大于第一索引序列的长度上限。比如,标准长度可以设置为60个字符。
如果第一索引序列未达到标准长度时,网络设备将第一索引序列填充为第二索引序列,其中,第二索引序列具有标准长度。这样,用标准长度的索引序列表示每个有效字符,更容易进行编程处理。
在一种可能的实现方式中,网络设备可以通过预设字符对第一索引序列进行填充。例如,预设字符为0。网络设备可以在第一索引序列的首字符之前填充预设字符,也可以在第一索引序列的末尾字符之后填充预设字符。
例如,第一索引序列为1、2、2、1、5、6,标准长度为60个字符,则第二索引序列为1、2、2、1、5、6、0、0……,0,也即,在字符6的后面填充了54个0。
步骤204,计算第二索引序列中每个索引值对应的字符向量。
在本发明实施例中,网络设备中存储有嵌入层(英文:Embedding layer)神经网络,嵌入层神经网络可以用于将任意字符转换为字符向量。网络设备可以将第二索引序列输入至嵌入层神经网络,以计算第二索引序列中每个索引值对应的字符向量。其中,计算出的字符向量可以为128维向量。
通过嵌入层神经网络计算各字符对应的字符向量的过程属于现有技术,本实施例不再赘述。通过嵌入层神经网络计算字符向量,可以有效的学习到字符之间的相似性,以及在上下文之间的关联性。
步骤205,利用第二索引序列中的每个索引值对应的字符向量,构成序列矩阵。
在本发明实施例中,网络设备能够计算第二索引序列中每个索引值对应的字符向量,然后利用第二索引序列中的每个索引值对应的字符向量,构成序列矩阵。
例如,第二索引序列为1、2、2、1、5、6、0、0……,0。其中,第二索引序列的长度为60个字符,也即,在字符6的后面填充了54个0。网络设备将第二索引序列输入至嵌入层神经网络,输出字符向量a1,a2,a3……a60。其中,ai为128维的向量,也即,可以得到60个128为的字符向量。网络设备利用60个128为的字符向量,构成60*128的序列矩阵。
本发明实施例中,网络设备将域名转化为自然语言处理问题,设置了每个字符对应的索引值,然后对索引值进行字符向量化表示,更容易进行编程。
需要说明的是,在本发明实施例中还提供了另一种实现方式中:即:网络设备也可以进行提取有效字符的处理。
具体地,网络设备获取到待识别的域名后,确定域名包含的每个字符对应的索引值,得到该域名对应的索引序列(为了便于区分,可称为第三索引序列)。网络设备判断第三索引序列是否达到标准长度。当第三索引序列未达到标准长度时,网络设备将第三索引序列填充为第四索引序列,第四索引序列具有标准长度。然后,网络设备计算第四索引序列中每个索引值对应的字符向量,进而利用第四索引序列中的每个索引值对应的字符向量,构成序列矩阵。
本发明实施例提供的确定域名对应的序列矩阵的方法,网络设备先从域名中提取具有标识性含义的字符(可称为有效字符),然后根据有效字符,确定域名对应的序列矩阵的方法,无需对域名包含的全部字符进行计算,提高了确定序列矩阵的效率。
可选的,本发明实施例还提供了一种计算特征向量的方法,如图3所示,该方法的具体处理过程如下:
步骤301,获取当前输入至输入输出门的第一字符向量、上一次输入至输入输出门的第二字符向量的输出值、以及上一次输入至输入输出门的第二字符向量的反馈值。
在本发明实施例中,网络设备将序列矩阵包含的各字符向量,依次输入至输入输出门。为了便于描述,当前输入至输入输出门的字符向量可称为第一字符向量,上一次输入至输入输出门的字符向量可称为第二字符向量。
网络设备获取第一字符向量、第二字符向量的输出值、以及第二字符向量的反馈值。需要说明的是,对于第一个输入至输入输出门的字符向量,上一次输入至输入输出门的字符向量的输出值、以及上一次输入至输入输出门的字符向量的反馈值均为0。反馈值的计算方式后续会进行详细说明。
例如,网络设备按照a1,a2,a3的顺序依次将字符向量输入至输入输出门,则网络设备将a2输入至输入输出门时,可以获取a2、a1的输出值、以及a1的反馈值。
步骤302,对第一字符向量、第二字符向量的输出值、以及第二字符向量的反馈值进行第一逻辑运算,得到第一字符向量的输出值。
在本发明实施例中,如图4所示,为本发明实施例提供的输入输出门的逻辑结构图。网络设备基于图4所示的输入输出门,对第一字符向量、第二字符向量的输出值、以及第二字符向量的反馈值进行第一逻辑运算,得到第一字符向量的输出值。具体的计算步骤包括:
步骤一,根据第一权重矩阵,对第一字符向量和第二字符向量的反馈值进行第一加权计算,得到第一加权结果。
步骤二,根据第二权重矩阵,对第一字符向量和第二字符向量的反馈值进行第二加权计算,得到第二加权结果。
其中,第一权重矩阵和第二权重矩阵相同,也可以不相同。
步骤三,将第一加权结果和第一偏置参数输入至第一激活函数,得到第一运算结果。相应的计算公式可以如下:
it=tanh(wi·[ht-1,xt]+bi) (2)
其中,第一激活函数为tanh激活函数,ht-1为上一次输入至输入输出门的字符向量的反馈值,xt为当前输入至输入输出门的字符向量,wi为第一权重矩阵,bi为第一偏置参数,it为第一运算结果。
步骤四,将第二加权结果和第二偏置参数输入至第二激活函数,得到第二运算结果。相应的计算公式可以如下:
其中,第二激活函数为tanh激活函数,wc为第二权重矩阵,bc为第二偏置参数,为第二运算结果,ht-1、xt与公式(2)中的ht-1、xt相同。
上述it都是通过第二字符向量的反馈值和第一字符向量确定出的,it表示通过第二字符向量的反馈值和第一字符向量确定出的本次计算最终输入的数据;表示通过第二字符向量的反馈值和第一字符向量确定出的本次计算的反馈值中,需要保留的数据。
需要说明的是,第一偏置参数和第二偏置参数可以相同,也可以不相同。
步骤五,将第一运算结果和第二运算结果相乘,将相乘得到的结果与第二字符向量的输出值相加,得到第一字符向量对应的输出值。相应的计算公式可以如下:
其中,Ct为第一字符向量对应的输出值,Ct-1为第二字符向量的输出值,it为第一运算结果,为第二运算结果。
需要说明的是,网络设备会对第一字符向量的输出值进行存储,以便进行后续逻辑运算处理。
步骤303,将得到的至少一个字符向量的输出值构成序列矩阵对应的特征向量。
在本发明实施例中,基于上述处理,对于任一字符向量,网络设备将该字符向量输入至输入输出门后,会得到该字符向量的输出值,这样,网络设备能够得到序列矩阵包含的每个字符向量的输出值,网络设备获取每个字符向量的输出值,构成序列矩阵对应的特征向量。
例如,序列矩阵包括a1,a2,a3,其中,a1的输出值为x,a2的输出值为y,a3的输出值为z,则序列矩阵对应的特征向量为(x,y,z)。
本发明实施例中,对循环神经网络进行了改进,简化了循环神经网络中输入输出门的逻辑运算,降低了网络设备的处理量,并且,经过大量的实验证明,基于本发明实施例提供的改进后的循环神经网络进行域名识别,域名识别的准确度较高。
进一步地,本发明实施例中,域名特征分析模型还包括反馈门;网络设备得到当前输入至输入输出门的字符向量的输出值之后,还会计算当前输入至输入输出门的字符向量的反馈值。具体处理过程可以为:对第一字符向量的输出值、第一字符向量、以及第二字符向量的反馈值进行第二逻辑运算,得到第一字符向量的反馈值。
其中,该反馈值用于计算下一次输入至输入输出门的字符向量的输出值。
在本发明实施例中,对于任一字符向量,网络设备将该字符向量输入至域名特征分析模型的输入输出门。同时,网络设备还将该字符向量输入至域名特征分析模型的反馈门。也即,当前输入至输入输出门的字符向量,与当前输入至反馈门的字符向量为同一字符向量。同理,上一次输入至输入输出门的字符向量,与上一次输入至反馈门的字符向量为同一字符向量。
需要说明的是,对于第一个输入至反馈门的字符向量,上一次输入至反馈的字符向量的反馈值均为0。
如图5所示,为本发明实施例提供的反馈门的逻辑结构图。网络设备基于图5所示的反馈门,对第一字符向量的输出值、第一字符向量、以及第二字符向量的反馈值进行第二逻辑运算,得到当前输入至反馈门的字符向量的反馈值。具体的计算步骤包括:
步骤一,根据第三权重矩阵,对第一字符向量和第二字符向量的反馈值进行第三加权计算,得到第三加权结果。
步骤二,将第三加权结果和第三偏置参数输入至第三激活函数,得到第三运算结果。相应的计算公式可以如下:
Ot=tanh(wo·[ht-1,xt]+bo) (5)
其中,第三激活函数为tanh激活函数,ht-1为第一字符向量的反馈值,xt为第一字符向量,wo为第三权重矩阵,bo为第三偏置参数,Ot为第三运算结果。Ot表示从第二字符向量的反馈值和第一字符向量中选择出的需要反馈到下一次计算的数据、以及需要记忆在本次输出(即Ct)中的数据。
步骤三,将第一字符向量的输出值输入至第四激活函数,得到第四运算结果。
步骤四,将第三运算结果与第四运算结果相乘,得到第一字符向量的反馈值。相应的计算公式可以如下:
ht=Ot*tanh(Ct) (6)
其中,第四激活函数为tanh激活函数,Ct为第一字符向量的输出值,Ot为第三运算结果,ht为第一字符向量的反馈值。
需要说明的是,网络设备会对第一字符向量的反馈值进行存储,以便进行后续逻辑运算处理。
需要说明的是,上述公式(2)中,wi·[ht-1,xt]为两个公式的简写,wi·[ht-1,xt]=w1*ht-1+w2*xt。本发明实施例中,网络设备通过嵌入层将每个字符转换为128维度的字符向量,相应的,ht-1和xt均为128维度的向量;bi为128维度的向量;wi为128*(128*2)的矩阵,其中,w1*ht-1为128*1,w2*xt也为128*1,最后加上bi输出一个128维的向量。同理,上述公式(3)中,wc为128*(128*2)的矩阵,bc为128维的向量;上述和公式(5)中,wo为128*(128*2)的矩阵,bo为128维的向量。上述公式(4)中,Ct为一个128*128的矩阵。
本发明实施例中,对循环神经网络进行了改进,简化了循环神经网络中反馈门的逻辑运算,降低了网络设备的处理量,并且,经过大量的实验证明,基于本发明实施例提供的改进后的循环神经网络进行域名识别,域名识别的准确度较高。
本发明实施例还提供了一种域名特征分析模型和域名分类模型的训练方法,该方法可以由网络设备执行,其中,该网络设备可以是具有数据处理功能的网络设备。如图6所示,具体包括以下步骤:
步骤601,获取已存储的训练样本集合。
其中,训练样本集合包括多个正样本子集和多个负样本子集,正样本子集为合法域名样本对应的序列矩阵;负样本子集为非法域名样本对应的序列矩阵。
在本发明实施例中,技术人员在网络设备中预先输入多个合法域名样本,网络设备确定每个合法域名样本对应的序列矩阵,得到正样本子集。网络设备还可以获取非法域名样本,非法域名样本可以是网络设备从网络中爬取到的,或者,也可以是网络设备通过域名生成算法(英文:Domain name generation algorithm,简称:DGA)技术生成的。网络设备确定每个非法域名样本对应的序列矩阵,得到负样本子集。
这样,网络设备可以得到训练样本集合。其中,确定序列矩阵的具体处理过程参照步骤102的相关说明,此处不再赘述。
步骤602,将序列矩阵包括的每个字符向量,依次输入至第一初始训练模型,得到每个字符向量对应的输出值。
其中,第一初始训练模型可以为循环神经网络,循环神经网络包括输入输出门和反馈门。
步骤603,利用每个字符向量的输出值,构成序列矩阵对应的特征向量。
在本发明实施例中,步骤602和步骤603的具体处理过程可以参照步骤301~步骤303的相关说明,此处不再赘述。
步骤604,将序列矩阵对应的特征向量输入至第二初始训练模型,得到样本子集对应的域名识别结果。
其中,第二初始训练模型为全连接层。
本步骤的处理过程可以参照步骤105的相关说明,此处不再赘述。
步骤605,通过反向传播算法,利用样本子集对应的域名识别结果,对第一初始训练模型中第一权重矩阵、第二权重矩阵、第三权重矩阵、第一偏置参数、第二偏置参数和第三偏置参数的数值进行调整,得到域名特征分析模型。
其中,反向传播算法可以为基于时间的反向传播(英文:Back PropagationTrough Time,简称:BPTT)算法。
在本发明实施例中,网络设备根据样本子集对应的域名识别结果、该样本子集对应的域名的实际分类结果(比如是合法域名或非法域名)、以及BPTT算法,调整输入输出门中的第一权重矩阵、第二权重矩阵、第一偏置参数和第二偏置参数,以及反馈门中的第三权重矩阵和第三偏置参数的数值,得到域名特征分析模型。其中,通过BPTT算法调整循环神经网络的处理过程属于现有技术,本发明实施例不再赘述。
步骤606,通过反向传播算法,利用样本子集对应的域名识别结果,对第二初始训练模型进行调整,得到域名分类模型。
在本发明实施例中,全连接层中通常包含权重向量,该权重向量为128维度的向量。网络设备根据样本子集对应的域名识别结果、该样本子集对应的域名的实际分类结果(比如是合法域名或非法域名)、以及反向传播算法,调整全连接层包含的权重向量的数值,得到域名特征分析模型。
其中,通过反向传播算法调整全连接层的处理过程属于现有技术,本发明实施例不再赘述。
基于相同的技术构思,如图7所示,本发明实施例还提供了一种识别域名的装置,其特征在于,该装置应用于网络设备,网络设备中已配置域名特征分析模型和域名分类模型,域名特征分析模型包括输入输出门,该装置包括:
接收模块710,用于接收终端发送的域名解析请求,域名解析请求包括待识别的域名,域名包括至少一个字符;
第一确定模块720,用于确定域名对应的序列矩阵,序列矩阵包括至少一个字符向量,至少一个字符向量中每个字符向量与至少一个字符中每个字符一一对应;
第一输入模块730,用于将所述至少一个字符向量中每个字符向量,依次输入至所述输入输出门,所述输入输出门包括多个激活函数之间的逻辑运算规则;
处理模块740,用于通过所述多个激活函数之间的逻辑运算规则,分别对所述至少一个字符向量中每个字符向量进行逻辑运算处理,得到所述序列矩阵对应的特征向量;
第二确定模块750,用于将序列矩阵对应的特征向量输入至域名分类模型中,确定域名是否为合法域名。
可选的,如图8所示,第一确定模块720,包括:
第一获取子模块721,用于从域名中,获取有效字符,有效字符由域名中除已存储的前缀字符和已存储的后缀字符以外的字符构成;
确定子模块722,用于根据已存储的字符与索引值映射规则,确定有效字符中每个字符对应的索引值,得到有效字符对应的第一索引序列;
填充子模块723,用于当第一索引序列未达到标准长度时,将第一索引序列填充为第二索引序列,第二索引序列具有标准长度;
第一计算子模块724,用于计算第二索引序列中每个索引值对应的字符向量;
构成子模块725,用于利用第二索引序列中的每个索引值对应的字符向量,构成序列矩阵。
可选的,如图9所示,处理模块740,包括:
第二获取子模块741,用于获取当前输入至所述输入输出门的第一字符向量、上一次输入至所述输入输出门的第二字符向量的输出值、以及上一次输入至所述输入输出门的第二字符向量的反馈值;
运算子模块742,用于对所述第一字符向量、所述第二字符向量的输出值、以及所述第二字符向量的反馈值进行第一逻辑运算,得到所述第一字符向量的输出值;
第三获取子模块743,用于将得到的至少一个字符向量的输出值构成所述序列矩阵对应的特征向量。
可选的,如图10所示,运算子模块742,包括:
第一计算单元7421,用于根据第一权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第一加权计算,得到第一加权结果;
第二计算单元7422,用于根据第二权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第二加权计算,得到第二加权结果;
第一输入单元7423,用于将第一加权结果和第一偏置参数输入至第一激活函数,得到第一运算结果;
第二输入单元7424,用于将第二加权结果和第二偏置参数输入至第二激活函数,得到第二运算结果;
第三计算单元7425,用于将所述第一运算结果和所述第二运算结果相乘,将相乘得到的结果与所述第二字符向量的输出值相加,得到所述第一字符向量对应的输出值。
可选的,域名特征分析模型还包括反馈门,如图11所示,该装置还包括:
运算模块760,用于对所述第一字符向量的输出值、所述第一字符向量、以及所述第二字符向量的反馈值进行第二逻辑运算,得到所述第一字符向量的反馈值。
可选的,如图12所示,运算模块760,包括:
第二计算子模块761,用于根据第三权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第三加权计算,得到第三加权结果;
第一输入子模块762,用于将第三加权结果和第三偏置参数输入至第三激活函数,得到第三运算结果;
第二输入子模块763,用于将所述第一字符向量的输出值输入至第四激活函数,得到第四运算结果;
相乘子模块764,用于将所述第三运算结果与所述第四运算结果相乘,得到第一字符向量的反馈值。
可选的,如图13所示,该装置还包括:
获取模块770,用于获取已存储的训练样本集合,训练样本集合包括多个正样本子集和多个负样本子集,正样本子集为合法域名样本对应的序列矩阵;负样本子集为非法域名样本对应的序列矩阵;
第二输入模块780,用于将序列矩阵包括的每个字符向量,依次输入至第一初始训练模型,得到每个字符向量对应的输出值;
构成模块790,用于利用每个字符向量的输出值,构成序列矩阵对应的特征向量;
第三输入模块7100,用于将序列矩阵对应的特征向量输入至第二初始训练模型,得到样本子集对应的域名识别结果;
第一调整模块7110,用于通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第一初始训练模型中所述第一权重矩阵、所述第二权重矩阵、所述第三权重矩阵、所述第一偏置参数、所述第二偏置参数和所述第三偏置参数的数值进行调整,得到所述域名特征分析模型;
第二调整模块7120,用于通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第二初始训练模型进行调整,得到所述域名分类模型。
本发明实施例提供的识别域名的装置,应用于网络设备,首先,网络设备中已配置域名特征分析模型和域名分类模型,域名特征分析模型包括输入输出门。网络设备接收终端发送的域名解析请求,该域名解析请求包括待识别的域名,域名包括至少一个字符。网络设备确定域名对应的序列矩阵,其中,序列矩阵包括至少一个字符向量,至少一个字符向量中每个字符向量与至少一个字符中每个字符一一对应。
然后,网络设备将至少一个字符向量中每个字符向量,依次输入至输入输出门。输入输出门包括多个激活函数之间的逻辑运算规则。网络设备通过多个激活函数之间的逻辑运算规则,分别对至少一个字符向量中每个字符向量进行逻辑运算处理,得到序列矩阵对应的特征向量。
最后,网络设备将序列矩阵对应的特征向量输入至域名分类模型中,确定域名是否为合法域名。
基于本发明实施例,不需要技术人员设定字符特征库,提高了识别域名的准确度。
本发明实施例还提供了一种网络设备,所述网络设备中已配置域名特征分析模型和域名分类模型,所述域名特征分析模型包括输入输出门,如图14所示,包括处理器1401、通信接口1402、存储器1403和通信总线1404,其中,处理器1401,通信接口1402,存储器1403通过通信总线1404完成相互间的通信,
存储器1403,用于存放计算机程序;
处理器1401,用于执行存储器1403上所存放的程序时,以使该网络设备执行如下步骤,该步骤包括:
接收终端发送的域名解析请求,所述域名解析请求包括待识别的域名,所述域名包括至少一个字符;
确定所述域名对应的序列矩阵,所述序列矩阵包括至少一个字符向量,所述至少一个字符向量中每个字符向量与所述至少一个字符中每个字符一一对应;
将所述至少一个字符向量中每个字符向量,依次输入至所述输入输出门,所述输入输出门包括多个激活函数之间的逻辑运算规则;
通过所述多个激活函数之间的逻辑运算规则,分别对所述至少一个字符向量中每个字符向量进行逻辑运算处理,得到所述序列矩阵对应的特征向量;
将所述序列矩阵对应的特征向量输入至所述域名分类模型中,确定所述域名是否为合法域名。
可选的,所述处理器1401执行存储器1403上所存放的确定所述域名对应的序列矩阵指令具体为:
从所述域名中,获取有效字符,所述有效字符由所述域名中除已存储的前缀字符和已存储的后缀字符以外的字符构成;
根据已存储的字符与索引值映射规则,确定所述有效字符中每个字符对应的索引值,得到所述有效字符对应的第一索引序列;
当所述第一索引序列未达到标准长度时,将所述第一索引序列填充为第二索引序列,所述第二索引序列具有标准长度;
计算所述第二索引序列中每个索引值对应的字符向量;
利用所述第二索引序列中的每个索引值对应的字符向量,构成所述序列矩阵。
可选的,所述处理器1401执行存储器1403上所存放的所述通过所述多个激活函数之间的逻辑运算规则,分别对所述至少一个字符向量中每个字符向量进行逻辑运算处理,得到所述序列矩阵对应的特征向量指令具体为:
获取当前输入至所述输入输出门的第一字符向量、上一次输入至所述输入输出门的第二字符向量的输出值、以及上一次输入至所述输入输出门的第二字符向量的反馈值;
对所述第一字符向量、所述第二字符向量的输出值、以及所述第二字符向量的反馈值进行第一逻辑运算,得到所述第一字符向量的输出值;
将得到的至少一个字符向量的输出值构成所述序列矩阵对应的特征向量。
可选的,所述处理器1401执行存储器1403上所存放的对所述第一字符向量、所述第二字符向量的输出值、以及所述第二字符向量的反馈值进行第一逻辑运算,得到所述第一字符向量的输出值指令具体为:
根据第一权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第一加权计算,得到第一加权结果;
根据第二权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第二加权计算,得到第二加权结果;
将所述第一加权结果和第一偏置参数输入至第一激活函数,得到第一运算结果;
将所述第二加权结果和第二偏置参数输入至第二激活函数,得到第二运算结果;
将所述第一运算结果和所述第二运算结果相乘,将相乘得到的结果与所述第二字符向量的输出值相加,得到所述第一字符向量对应的输出值。
可选的,所述域名特征分析模型还包括反馈门;
所述处理器1401执行存储器1403上所存放的所述得到所述第一字符向量的输出值之后,所述处理器1401执行计算机程序还包括执行下述指令:
对所述第一字符向量的输出值、所述第一字符向量、以及所述第二字符向量的反馈值进行第二逻辑运算,得到所述第一字符向量的反馈值;
其中,所述反馈值用于计算下一次输入至所述输入输出门的字符向量的输出值。
可选的,所述处理器1401执行存储器1403上所存放的对所述第一字符向量的输出值、所述第一字符向量、以及所述第二字符向量的反馈值进行第二逻辑运算,得到所述第一字符向量的反馈值指令具体为:
根据第三权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第三加权计算,得到第三加权结果;
将所述第三加权结果和第三偏置参数输入至第三激活函数,得到第三运算结果;
将所述第一字符向量的输出值输入至第四激活函数,得到第四运算结果;
将所述第三运算结果与所述第四运算结果相乘,得到第一字符向量的反馈值。
可选的,所述处理器1401执行计算机程序还包括执行下述指令:
获取已存储的训练样本集合,所述训练样本集合包括多个正样本子集和多个负样本子集,所述正样本子集为合法域名样本对应的序列矩阵;所述负样本子集为非法域名样本对应的序列矩阵;
将所述序列矩阵包括的每个字符向量,依次输入至第一初始训练模型,得到所述每个字符向量对应的输出值;
利用所述每个字符向量的输出值,构成所述序列矩阵对应的特征向量;
将所述序列矩阵对应的特征向量输入至第二初始训练模型,得到样本子集对应的域名识别结果;
通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第一初始训练模型中所述第一权重矩阵、所述第二权重矩阵、所述第三权重矩阵、所述第一偏置参数、所述第二偏置参数和所述第三偏置参数的数值进行调整,得到所述域名特征分析模型;
通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第二初始训练模型进行调整,得到所述域名分类模型。
可选的,所述处理器1401执行计算机程序还包括执行下述指令:
如果确定所述域名为合法域名,则向所述终端发送响应消息,所述响应消息包括所述域名对应的网络协议IP地址。
机器可读存储介质可以包括随机存取存储器(英文:Random Access Memory,简称:RAM),也可以包括非易失性存储器(英文:Non-Volatile Memory,简称:NVM),例如至少一个磁盘存储器。另外,机器可读存储介质还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括中央处理器(英文:Central ProcessingUnit,简称:CPU)、网络处理器(英文:Network Processor,简称:NP)等;还可以是数字信号处理器(英文:Digital Signal Processing,简称:DSP)、专用集成电路(英文:ApplicationSpecific Integrated Circuit,简称:ASIC)、现场可编程门阵列(英文:Field-Programmable Gate Array,简称:FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例提供的网络设备,首先,网络设备接收终端发送的域名解析请求,该域名解析请求包括待识别的域名,域名包括至少一个字符。网络设备确定域名对应的序列矩阵,其中,序列矩阵包括至少一个字符向量,至少一个字符向量中每个字符向量与至少一个字符中每个字符一一对应。
然后,网络设备将至少一个字符向量中每个字符向量,依次输入至输入输出门。输入输出门包括多个激活函数之间的逻辑运算规则。网络设备通过多个激活函数之间的逻辑运算规则,分别对至少一个字符向量中每个字符向量进行逻辑运算处理,得到序列矩阵对应的特征向量。
最后,网络设备将序列矩阵对应的特征向量输入至域名分类模型中,确定域名是否为合法域名。
基于本发明实施例,不需要技术人员设定字符特征库,提高了识别域名的准确度。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (15)

1.一种识别域名的方法,其特征在于,所述方法应用于网络设备,所述网络设备中已配置域名特征分析模型和域名分类模型,所述域名特征分析模型包括输入输出门,所述方法包括:
接收终端发送的域名解析请求,所述域名解析请求包括待识别的域名,所述域名包括至少一个字符;
确定所述域名对应的序列矩阵,所述序列矩阵包括至少一个字符向量,所述至少一个字符向量中每个字符向量与所述至少一个字符中每个字符一一对应;
将所述至少一个字符向量中每个字符向量,依次输入至所述输入输出门,所述输入输出门包括多个激活函数之间的逻辑运算规则;
通过所述多个激活函数之间的逻辑运算规则,分别对所述至少一个字符向量中每个字符向量进行逻辑运算处理,得到所述序列矩阵对应的特征向量;
将所述序列矩阵对应的特征向量输入至所述域名分类模型中,确定所述域名是否为合法域名。
2.根据权利要求1所述的方法,其特征在于,所述确定所述域名对应的序列矩阵,包括:
从所述域名中,获取有效字符,所述有效字符由所述域名中除已存储的前缀字符和已存储的后缀字符以外的字符构成;
根据已存储的字符与索引值映射规则,确定所述有效字符中每个字符对应的索引值,得到所述有效字符对应的第一索引序列;
当所述第一索引序列未达到标准长度时,将所述第一索引序列填充为第二索引序列,所述第二索引序列具有标准长度;
计算所述第二索引序列中每个索引值对应的字符向量;
利用所述第二索引序列中的每个索引值对应的字符向量,构成所述序列矩阵。
3.根据权利要求1所述的方法,其特征在于,所述通过所述多个激活函数之间的逻辑运算规则,分别对所述至少一个字符向量中每个字符向量进行逻辑运算处理,得到所述序列矩阵对应的特征向量,包括:
获取当前输入至所述输入输出门的第一字符向量、上一次输入至所述输入输出门的第二字符向量的输出值、以及上一次输入至所述输入输出门的所述第二字符向量的反馈值;
对所述第一字符向量、所述第二字符向量的输出值、以及所述第二字符向量的反馈值进行第一逻辑运算,得到所述第一字符向量的输出值;
将得到的至少一个字符向量的输出值构成所述序列矩阵对应的特征向量。
4.根据权利要求3所述的方法,其特征在于,所述对所述第一字符向量、所述第二字符向量的输出值、以及所述第二字符向量的反馈值进行第一逻辑运算,得到所述第一字符向量的输出值,包括:
根据第一权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第一加权计算,得到第一加权结果;
根据第二权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第二加权计算,得到第二加权结果;
将所述第一加权结果和第一偏置参数输入至第一激活函数,得到第一运算结果;
将所述第二加权结果和第二偏置参数输入至第二激活函数,得到第二运算结果;
将所述第一运算结果和所述第二运算结果相乘,将相乘得到的结果与所述第二字符向量的输出值相加,得到所述第一字符向量对应的输出值。
5.根据权利要求4所述的方法,其特征在于,所述域名特征分析模型还包括反馈门;
所述得到所述第一字符向量的输出值之后,所述方法还包括:
对所述第一字符向量的输出值、所述第一字符向量、以及所述第二字符向量的反馈值进行第二逻辑运算,得到所述第一字符向量的反馈值;
其中,所述反馈值用于计算下一次输入至所述输入输出门的字符向量的输出值。
6.根据权利要求5所述的方法,其特征在于,所述对所述第一字符向量的输出值、所述第一字符向量、以及所述第二字符向量的反馈值进行第二逻辑运算,得到所述第一字符向量的反馈值,包括:
根据第三权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第三加权计算,得到第三加权结果;
将所述第三加权结果和第三偏置参数输入至第三激活函数,得到第三运算结果;
将所述第一字符向量的输出值输入至第四激活函数,得到第四运算结果;
将所述第三运算结果与所述第四运算结果相乘,得到所述第一字符向量的反馈值。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
获取已存储的训练样本集合,所述训练样本集合包括多个正样本子集和多个负样本子集,所述正样本子集为合法域名样本对应的序列矩阵;所述负样本子集为非法域名样本对应的序列矩阵;
将所述序列矩阵包括的每个字符向量,依次输入至第一初始训练模型,得到所述每个字符向量对应的输出值;
利用所述每个字符向量的输出值,构成所述序列矩阵对应的特征向量;
将所述序列矩阵对应的特征向量输入至第二初始训练模型,得到样本子集对应的域名识别结果;
通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第一初始训练模型中所述第一权重矩阵、所述第二权重矩阵、所述第三权重矩阵、所述第一偏置参数、所述第二偏置参数和所述第三偏置参数的数值进行调整,得到所述域名特征分析模型;
通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第二初始训练模型进行调整,得到所述域名分类模型。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果确定所述域名为合法域名,则向所述终端发送响应消息,所述响应消息包括所述域名对应的网络协议IP地址。
9.一种识别域名的装置,其特征在于,所述装置应用于网络设备,所述网络设备中已配置域名特征分析模型和域名分类模型,所述域名特征分析模型包括输入输出门,所述装置包括:
接收模块,用于接收终端发送的域名解析请求,所述域名解析请求包括待识别的域名,所述域名包括至少一个字符;
第一确定模块,用于确定所述域名对应的序列矩阵,所述序列矩阵包括至少一个字符向量,所述至少一个字符向量中每个字符向量与所述至少一个字符中每个字符一一对应;
第一输入模块,用于将所述至少一个字符向量中每个字符向量,依次输入至所述输入输出门,所述输入输出门包括多个激活函数之间的逻辑运算规则;
处理模块,用于通过所述多个激活函数之间的逻辑运算规则,分别对所述至少一个字符向量中每个字符向量进行逻辑运算处理,得到所述序列矩阵对应的特征向量;
第二确定模块,用于将所述序列矩阵对应的特征向量输入至所述域名分类模型中,确定所述域名是否为合法域名。
10.根据权利要求9所述的装置,其特征在于,所述第一确定模块,包括:
第一获取子模块,用于从所述域名中,获取有效字符,所述有效字符由所述域名中除已存储的前缀字符和已存储的后缀字符以外的字符构成;
确定子模块,用于根据已存储的字符与索引值映射规则,确定所述有效字符中每个字符对应的索引值,得到所述有效字符对应的第一索引序列;
填充子模块,用于当所述第一索引序列未达到标准长度时,将所述第一索引序列填充为第二索引序列,所述第二索引序列具有标准长度;
第一计算子模块,用于计算所述第二索引序列中每个索引值对应的字符向量;
构成子模块,用于利用所述第二索引序列中的每个索引值对应的字符向量,构成所述序列矩阵。
11.根据权利要求9所述的装置,其特征在于,所述处理模块,包括:
第二获取子模块,用于获取当前输入至所述输入输出门的第一字符向量、上一次输入至所述输入输出门的第二字符向量的输出值、以及上一次输入至所述输入输出门的所述第二字符向量的反馈值;
运算子模块,用于对所述第一字符向量、所述第二字符向量的输出值、以及所述第二字符向量的反馈值进行第一逻辑运算,得到所述第一字符向量的输出值;
第三获取子模块,用于将得到的至少一个字符向量的输出值构成所述序列矩阵对应的特征向量。
12.根据权利要求11所述的装置,其特征在于,所述运算子模块,包括:
第一计算单元,用于根据第一权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第一加权计算,得到第一加权结果;
第二计算单元,用于根据第二权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第二加权计算,得到第二加权结果;
第一输入单元,用于将所述第一加权结果和第一偏置参数输入至第一激活函数,得到第一运算结果;
第二输入单元,用于将所述第二加权结果和第二偏置参数输入至第二激活函数,得到第二运算结果;
第三计算单元,用于将所述第一运算结果和所述第二运算结果相乘,将相乘得到的结果与所述第二字符向量的输出值相加,得到所述第一字符向量对应的输出值。
13.根据权利要求12所述的装置,其特征在于,所述域名特征分析模型还包括反馈门,所述装置还包括:
运算模块,用于对所述第一字符向量的输出值、所述第一字符向量、以及所述第二字符向量的反馈值进行第二逻辑运算,得到所述第一字符向量的反馈值;
其中,所述反馈值用于计算下一次输入至所述输入输出门的字符向量的输出值。
14.根据权利要求13所述的装置,其特征在于,所述运算模块,包括:
第二计算子模块,用于根据第三权重矩阵,对所述第一字符向量和所述第二字符向量的反馈值进行第三加权计算,得到第三加权结果;
第一输入子模块,用于将所述第三加权结果和第三偏置参数输入至第三激活函数,得到第三运算结果;
第二输入子模块,用于将所述第一字符向量的输出值输入至第四激活函数,得到第四运算结果;
相乘子模块,用于将所述第三运算结果与所述第四运算结果相乘,得到所述第一字符向量的反馈值。
15.根据权利要求14所述的装置,其特征在于,所述装置还包括:
获取模块,用于获取已存储的训练样本集合,所述训练样本集合包括多个正样本子集和多个负样本子集,所述正样本子集为合法域名样本对应的序列矩阵;所述负样本子集为非法域名样本对应的序列矩阵;
第二输入模块,用于将所述序列矩阵包括的每个字符向量,依次输入至第一初始训练模型,得到所述每个字符向量对应的输出值;
构成模块,用于利用所述每个字符向量的输出值,构成所述序列矩阵对应的特征向量;
第三输入模块,用于将所述序列矩阵对应的特征向量输入至第二初始训练模型,得到样本子集对应的域名识别结果;
第一调整模块,用于通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第一初始训练模型中所述第一权重矩阵、所述第二权重矩阵、所述第三权重矩阵、所述第一偏置参数、所述第二偏置参数和所述第三偏置参数的数值进行调整,得到所述域名特征分析模型;
第二调整模块,用于通过反向传播算法,利用所述样本子集对应的域名识别结果,对所述第二初始训练模型进行调整,得到所述域名分类模型。
CN201810489709.0A 2018-05-21 2018-05-21 一种识别域名的方法及装置 Active CN109889616B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201810489709.0A CN109889616B (zh) 2018-05-21 2018-05-21 一种识别域名的方法及装置
US17/050,026 US20210097399A1 (en) 2018-05-21 2019-05-15 Domain name identification
PCT/CN2019/087076 WO2019223587A1 (zh) 2018-05-21 2019-05-15 域名识别
JP2021510515A JP7069410B2 (ja) 2018-05-21 2019-05-15 ドメイン名の識別
EP19808429.5A EP3799398A4 (en) 2018-05-21 2019-05-15 DOMAIN NAME IDENTIFICATION

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810489709.0A CN109889616B (zh) 2018-05-21 2018-05-21 一种识别域名的方法及装置

Publications (2)

Publication Number Publication Date
CN109889616A true CN109889616A (zh) 2019-06-14
CN109889616B CN109889616B (zh) 2020-06-05

Family

ID=66924764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810489709.0A Active CN109889616B (zh) 2018-05-21 2018-05-21 一种识别域名的方法及装置

Country Status (5)

Country Link
US (1) US20210097399A1 (zh)
EP (1) EP3799398A4 (zh)
JP (1) JP7069410B2 (zh)
CN (1) CN109889616B (zh)
WO (1) WO2019223587A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112769974A (zh) * 2020-12-30 2021-05-07 亚信科技(成都)有限公司 一种域名检测方法、系统及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115391689B (zh) * 2022-08-23 2023-08-22 北京泰镝科技股份有限公司 一种短链接生成方法、装置、设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080216168A1 (en) * 1998-10-30 2008-09-04 Virnetx, Inc. Method for establishing secure communication link between computers of virtual private network
CN101702660A (zh) * 2009-11-12 2010-05-05 中国科学院计算技术研究所 异常域名检测方法及系统
CN103428307A (zh) * 2013-08-09 2013-12-04 中国科学院计算机网络信息中心 仿冒域名检测方法及设备
CN105610830A (zh) * 2015-12-30 2016-05-25 山石网科通信技术有限公司 域名的检测方法及装置
CN106233296A (zh) * 2013-12-10 2016-12-14 日本电信电话株式会社 Url匹配装置、url匹配方法以及url匹配程序
CN106713312A (zh) * 2016-12-21 2017-05-24 深圳市深信服电子科技有限公司 检测非法域名的方法及装置
US20180091479A1 (en) * 2014-01-28 2018-03-29 Infoblox Inc. Platforms for implementing an analytics framework for dns security
US20180097822A1 (en) * 2016-10-01 2018-04-05 Intel Corporation Technologies for analyzing uniform resource locators

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040015584A1 (en) * 2000-10-09 2004-01-22 Brian Cartmell Registering and using multilingual domain names
US20030138147A1 (en) * 2002-01-17 2003-07-24 Yandi Ongkojoyo Object recognition system for screening device
US8041662B2 (en) * 2007-08-10 2011-10-18 Microsoft Corporation Domain name geometrical classification using character-based n-grams
EP2916525A1 (en) * 2014-03-06 2015-09-09 Verisign, Inc. Name collision risk manager
JP6368127B2 (ja) * 2014-04-09 2018-08-01 キヤノン株式会社 通信装置、制御方法、及びプログラム
US9653093B1 (en) * 2014-08-19 2017-05-16 Amazon Technologies, Inc. Generative modeling of speech using neural networks
CN105577660B (zh) * 2015-12-22 2019-03-08 国家电网公司 基于随机森林的dga域名检测方法
CN105827594B (zh) * 2016-03-08 2018-11-27 北京航空航天大学 一种基于域名可读性及域名解析行为的可疑性检测方法
EP3475822B1 (en) * 2016-06-22 2020-07-22 Invincea, Inc. Methods and apparatus for detecting whether a string of characters represents malicious activity using machine learning
US10819724B2 (en) * 2017-04-03 2020-10-27 Royal Bank Of Canada Systems and methods for cyberbot network detection
CN107168952B (zh) * 2017-05-15 2021-06-04 北京百度网讯科技有限公司 基于人工智能的信息生成方法和装置
CN107682348A (zh) * 2017-10-19 2018-02-09 杭州安恒信息技术有限公司 基于机器学习的dga域名快速判别方法及装置
CN107807987B (zh) * 2017-10-31 2021-07-02 广东工业大学 一种字符串分类方法、系统及一种字符串分类设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080216168A1 (en) * 1998-10-30 2008-09-04 Virnetx, Inc. Method for establishing secure communication link between computers of virtual private network
CN101702660A (zh) * 2009-11-12 2010-05-05 中国科学院计算技术研究所 异常域名检测方法及系统
CN103428307A (zh) * 2013-08-09 2013-12-04 中国科学院计算机网络信息中心 仿冒域名检测方法及设备
CN106233296A (zh) * 2013-12-10 2016-12-14 日本电信电话株式会社 Url匹配装置、url匹配方法以及url匹配程序
US20180091479A1 (en) * 2014-01-28 2018-03-29 Infoblox Inc. Platforms for implementing an analytics framework for dns security
CN105610830A (zh) * 2015-12-30 2016-05-25 山石网科通信技术有限公司 域名的检测方法及装置
US20180097822A1 (en) * 2016-10-01 2018-04-05 Intel Corporation Technologies for analyzing uniform resource locators
CN106713312A (zh) * 2016-12-21 2017-05-24 深圳市深信服电子科技有限公司 检测非法域名的方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WU ZU-GUANG,ZHU GUO-HUA, HUANG RUI,XIA BIN: ""Domain name valuation model based on semantic theory and content analysis"", 《2009 ASIA-PACIFIC CONFERENCE ON INFORMATION PROCESSING》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112769974A (zh) * 2020-12-30 2021-05-07 亚信科技(成都)有限公司 一种域名检测方法、系统及存储介质

Also Published As

Publication number Publication date
CN109889616B (zh) 2020-06-05
WO2019223587A9 (zh) 2020-01-30
WO2019223587A1 (zh) 2019-11-28
EP3799398A1 (en) 2021-03-31
EP3799398A4 (en) 2021-06-30
US20210097399A1 (en) 2021-04-01
JP7069410B2 (ja) 2022-05-17
JP2021520019A (ja) 2021-08-12

Similar Documents

Publication Publication Date Title
Lian et al. An intrusion detection method based on decision tree-recursive feature elimination in ensemble learning
CN108200034A (zh) 一种识别域名的方法及装置
Couillet et al. Random matrix methods for machine learning
CN106709345A (zh) 基于深度学习方法推断恶意代码规则的方法、系统及设备
CN109005145A (zh) 一种基于自动特征抽取的恶意url检测系统及其方法
CN111628970B (zh) 一种dga型僵尸网络的检测方法、介质和电子设备
Yang et al. Detecting stealthy domain generation algorithms using heterogeneous deep neural network framework
CN111224941B (zh) 一种威胁类型识别方法及装置
Chawla Phishing website analysis and detection using Machine Learning
Aljabri et al. Detecting malicious URLs using machine learning techniques: review and research directions
CN107579821B (zh) 密码字典生成方法及计算机可读存储介质
CN113992349B (zh) 恶意流量识别方法、装置、设备和存储介质
CN109889616A (zh) 一种识别域名的方法及装置
CN110321560A (zh) 一种从文本信息中确定位置信息的方法、装置及电子设备
Mohammadpourfard et al. Generation of false data injection attacks using conditional generative adversarial networks
Nowroozi et al. An adversarial attack analysis on malicious advertisement url detection framework
EP3633950B1 (en) Method for evaluating domain name and server using the same
CN115314236A (zh) 在域名系统(dns)记录集中检测网络钓鱼域的系统和方法
Devi et al. Stochastic Gradient Boosting Model for Twitter Spam Detection.
CN106557566A (zh) 一种文本训练方法及装置
CN113905016A (zh) 一种dga域名检测方法、检测装置及计算机存储介质
Peng et al. MalShoot: shooting malicious domains through graph embedding on passive DNS data
CN107391980A (zh) 一种基于设备数据的登录验证方法、装置、设备及存储介质
CN115277065B (zh) 一种物联网异常流量检测中的对抗攻击方法及装置
Banday et al. Image Flip CAPTCHA.

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