JP2021520019A - ドメイン名の識別 - Google Patents

ドメイン名の識別 Download PDF

Info

Publication number
JP2021520019A
JP2021520019A JP2021510515A JP2021510515A JP2021520019A JP 2021520019 A JP2021520019 A JP 2021520019A JP 2021510515 A JP2021510515 A JP 2021510515A JP 2021510515 A JP2021510515 A JP 2021510515A JP 2021520019 A JP2021520019 A JP 2021520019A
Authority
JP
Japan
Prior art keywords
domain name
character 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
JP2021510515A
Other languages
English (en)
Other versions
JP7069410B2 (ja
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
Publication of JP2021520019A publication Critical patent/JP2021520019A/ja
Application granted granted Critical
Publication of JP7069410B2 publication Critical patent/JP7069410B2/ja
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/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

ドメイン名の識別方法及びネットワーク装置を提供する。前記方法は、端末から送信されたドメイン名解析リクェストを受信し、ドメイン名解析リクェストに識別対象のドメイン名を含み、ドメイン名に少なくとも1つの文字を含むことと、ドメイン名に対応するシーケンス行列を特定し、シーケンス行列が少なくとも1つの文字ベクトルを含み、少なくとも1つの文字ベクトルの夫々と少なくとも1つの文字の夫々とが一対一対応することと、少なくとも1つの文字ベクトルの夫々を入出力ゲートに順次入力し、入力送信ゲートが複数の活性化関数間の論理演算規則を含むことと、複数の活性化関数間の論理演算規則により、少なくとも1つの文字ベクトルの夫々への論理演算処理を行って、シーケンス行列に対応する特徴ベクトルを得ることと、得られたシーケンス行列に対応する特徴ベクトルをドメイン名分類モデルに入力し、ドメイン名が正当なドメイン名であるか否かを特定することと、を含む。【選択図】図1

Description

関連出願の相互参照
本開示は、2018年5月21日に中国特許庁に提出した、出願番号が201810489709.0であり、発明の名称が「ドメイン名を識別する方法及び装置」である中国特許出願に基づき優先権を主張する。ここで、その内容の全ては、援用により本開示に組み込まれる。
現在、端末は、ネットワークにアクセスする際に、ドメイン名システム(DomainNameSystem、DNSと略称する)サーバにより、宛先端末のインターネットプロトコル(InternetProtocol、IPと略称する)アドレスを取得することができる。そして、端末は、宛先端末のIPアドレスにより、宛先端末との通信リンクを確立し、さらに、宛先端末と相互にデータ交換を行う。実際のネットワーク構築では、端末がウィルスプログラムに感染される場合があるため、感染された端末が、違法者によって設置された悪意のある端末とデータ転送を行うことにより、ネットワークに大きなセキュリティリスクをもたらすおそれがある。
感染された端末と悪意のある端末との間のデータ転送を防止するために、DNSサーバは、端末から送信されたドメイン名解析リクェストを受信すると、ドメイン名解析リクェストに含まれたドメイン名を文字抽出する。文字と記憶された文字特徴ライブラリとを照合することにより、ドメイン名の正当性の判定を実現する。
図1は、本開示の実施例に係るドメイン名を識別する方法のフローチャートである。 図2は、本開示の実施例に係るシーケンス行列を特定する方法のフローチャートである。 図3は、本開示の実施例に係る特徴ベクトルを計算する方法のフローチャートである。 図4は、本開示の実施例に係る入出力ゲートの論理構造図である。 図5は、本開示の実施例に係るフィードバックゲートの論理構造図である。 図6は、本開示の実施例に係るドメイン名特徴分析モデルおよびドメイン名分類モデルのトレーニング方法のフローチャートである。 図7は、本開示の実施例に係るドメイン名を識別する装置の構造模式図である。 図8は、本開示の実施例に係るネットワーク装置の構造模式図である。
以下、本開示の上記目的、特徴及び利点がより分かりやすいように、本開示の図面及び具体的な実施形態と組み合わせて、本開示をより詳しく説明する。本開示の実施例は、ドメイン名を識別する方法を提供し、当該方法は、ドメイン名解析機能を有するネットワーク装置に適用されることができる。例えば、DNSサーバに適用される。
ある端末(送信元装置とも呼ぶ)があるサーバ(宛先装置とも呼ぶ)にパケットを送信する必要がある場合、送信元装置は、まず、宛先装置のドメイン名を取得する。例えば、ユーザは、あるウェブサイトにアクセスしたい場合、まずそのウェブサイトのドメイン名を入力する。送信元装置は、ネットワーク装置に、宛先装置のドメイン名を含むドメイン名解析リクェストを送信する。ネットワーク装置は、予め記憶されたドメイン名とIPアドレスとの対応関係によって、当該ドメイン名に対応するIPアドレスを特定する。そして、ネットワーク装置は、当該IPアドレスを送信元装置に送信する結果、送信元装置が当該IPアドレスにより宛先装置にパケットを送信できる。
本開示の実施例において、ネットワーク装置は、ドメイン名特徴分析モデル及びドメイン名分類モデルを既に構築している。そのうち、ドメイン名特徴分析モデルに、入出力ゲートを含む。ネットワーク装置は、端末から送信されたドメイン名解析リクェストを受信すると、ドメイン名特徴分析モデルとドメイン名分類モデルとにより、当該ドメイン名解析リクェストに含まれるドメイン名が正当なドメイン名であるか否かを識別する。
ドメイン名が不正なドメイン名である場合、ネットワーク装置は、送信元装置が悪意のある端末にデータパケットを送信することを回避するように、当該端末に応答メッセージを送信しない。ドメイン名が正当なドメイン名である場合、ネットワーク装置は、当該ドメイン名に対応するIPアドレスを含む応答メッセージを、当該端末に送信する結果、当該端末が当該IPアドレスに対応する端末にアクセスする。
本公開の実施例に係るドメイン名の識別方法により、ドメイン名の識別精度を向上させることができ、ユーザデータの安全性を向上させることができる。図1に示すように、この方法における処理手順は以下のステップを備える。
ステップ101では、ネットワーク装置は、端末から送信されたドメイン名解析リクェストを受信する。
ここで、ドメイン名解析リクェストに、識別対象のドメイン名を含み、このドメイン名に少なくとも1つの文字を含む。
本開示の実施例では、送信元装置(すなわち、端末)は、宛先装置にパケットを送信する必要がある場合、まず当該ネットワーク装置に、ドメイン名解析リクェストを送信する。ドメイン名解析リクェストに、宛先装置のドメイン名(すなわち、識別対象のドメイン名)を含んでいる。ネットワーク装置は、当該ドメイン名解析リクェストを受信すると、当該ドメイン名解析リクェストを解析し、識別対象のドメイン名を取得する。
ここで、宛先装置は、ドメイン名を有するネットワーク装置であり、ホスト、サーバ、または仮想マシンなどであってもいい。
ステップ102では、ネットワーク装置は、ドメイン名に対応するシーケンス行列を特定する。
本開示の実施例において、ネットワーク装置は、識別対象のドメイン名を取得すると、当該ドメイン名に対応するシーケンス行列を計算する。シーケンス行列は、少なくとも1つの文字ベクトルを含む。ここで、少なくとも1つの文字ベクトルの夫々と、少なくとも1つの文字の夫々とは、一対一対応する。シーケンス行列の計算方法については、後で詳しく説明する。
ステップ103では、ネットワーク装置は、少なくとも1つの文字ベクトルの夫々を入出力ゲートに順次入力する。
本開示の実施例において、ドメイン名特徴分析モデルに、入出力ゲートを含む。ここで、入出力ゲートは、複数の活性化関数間の論理演算規則を含む。活性化関数はtanh活性化関数を採用することができる。ネットワーク装置は、シーケンス行列を特定した後、シーケンス行列に含まれる各文字ベクトルを、入出力ゲートに順次入力する。tanh活性化関数の数式は、以下の通りである。
Figure 2021520019
ここで、eは自然対数の底である。
ネットワーク装置は、前記シーケンス行列における各文字ベクトルを入出力ゲートに順次入力し、当該シーケンス行列に対応する特徴ベクトルを計算する。
ステップ104では、ネットワーク装置は、複数の活性化関数間の論理演算規則により、少なくとも1つの文字ベクトルの夫々への論理演算処理を行って、シーケンス行列に対応する特徴ベクトルを得る。
本開示の実施例において、入出力ゲートに入力された文字ベクトルの夫々について、ネットワーク装置は、上記複数の活性化関数間の論理演算規則により、入出力ゲートに現在入力された文字ベクトルに対し、それぞれ論理演算処理を行って、シーケンス行列に対応する特徴ベクトルを得る。ここで、論理演算処理には、算術演算と論理演算を含む。入出力ゲートによる文字ベクトルへの論理演算処理の具体的な処理手順については、後で詳しく説明する。
ステップ105では、ネットワーク装置は、シーケンス行列に対応する特徴ベクトルをドメイン名分類モデルに入力し、ドメイン名が正当なドメイン名であるか否かを特定する。
本開示の実施例において、ドメイン名分類モデルは、ニューロンの数が1である全結合層(Full Connection layer)であってよい。ネットワーク装置は、シーケンス行列に対応する特徴ベクトルを、ドメイン名分類モデルに入力し、ドメイン名分類モデルは、当該特徴ベクトルに対応する分類結果を出力し、当該分類結果は、当該ドメイン名が不正なドメイン名である確率を示すためのものである。ネットワーク装置は、この分類結果に基づいて、当該ドメイン名が正当なドメイン名であるか否かを特定する。
例えば、正当なドメイン名に対応する分類結果は0であり、不正なドメイン名に対応する分類結果は1であり、予め設定されたしきい値は0.6である。当該ドメイン名に対応する分類結果が0.8>0.6である場合、ネットワーク装置は、当該ドメイン名が不正なドメイン名であると特定したが、当該ドメイン名に対応する分類結果が0.2<0.6の場合、ネットワーク装置は、当該ドメイン名が正当なドメイン名であると特定した。
本開示の実施例において、ネットワーク装置は、端末から送信されたドメイン名解析リクェストを受信する。当該ドメイン名解析リクェストに、識別対象のドメイン名を含み、ドメイン名に少なくとも1つの文字を含む。ネットワーク装置は、ドメイン名に対応するシーケンス行列を特定する。ここで、シーケンス行列は、少なくとも1つの文字ベクトルを含み、少なくとも1つの文字ベクトルの夫々と少なくとも1つの文字の夫々とは、一対一対応する。
ネットワーク装置は、少なくとも1つの文字ベクトルの夫々を、入出力ゲートに順次入力する。入出力ゲートは、複数の活性化関数間の論理演算規則を含む。ネットワーク装置は、複数の活性化関数間の論理演算規則により、少なくとも1つの文字ベクトルの夫々への論理演算処理を行って、シーケンス行列に対応する特徴ベクトルを得る。ネットワーク装置は、シーケンス行列に対応する特徴ベクトルをドメイン名分類モデルに入力し、ドメイン名が正当なドメイン名であるか否かを特定する。
本発明によれば、当業者が文字特徴ライブラリを設定する必要がなく、ドメイン名の識別精度を向上させることができる。
一例において、ネットワーク装置は、ドメイン名が正当なドメイン名であると特定した場合、ドメイン名に対応するIPアドレスを含む応答メッセージを、端末に送信する。
本公開の実施例において、ネットワーク装置は、ドメイン名が正当なドメイン名である場合、予め記憶されたドメイン名とIPアドレスとの対応関係によって、当該ドメイン名に対応するIPアドレスを特定する。さらに、ネットワーク装置は、特定されたIPアドレスを当該端末に送信する結果、当該端末が当該IPアドレスによりパケットを宛先装置に送信する。ネットワーク装置は、ドメイン名が不正なドメイン名である場合、端末に応答メッセージを送信しない。あるいは、ネットワーク装置は、当該端末によってリクェストされたドメイン名が不正なドメイン名であることを示すためのプロンプト情報を当該端末に送信する。
本開示の実施例に係るドメイン名を識別する方法では、ネットワーク装置は、端末から送信されたドメイン名解析リクェストを受信し、当該ドメイン名解析リクェストには識別対象のドメイン名を含み、ドメイン名には少なくとも1つの文字を含む。ネットワーク装置は、ドメイン名に対応するシーケンス行列を特定する。ここで、シーケンス行列は、少なくとも1つの文字ベクトルを含み、少なくとも1つの文字ベクトルの夫々と少なくとも1つの文字の夫々とは、一対一対応する。
そして、ネットワーク装置は、少なくとも1つの文字ベクトルの夫々を、入出力ゲートに順次入力する。入出力ゲートは、複数の活性化関数間の論理演算規則を含む。ネットワーク装置は、複数の活性化関数間の論理演算規則により、少なくとも1つの文字ベクトルのそれぞれへの論理演算処理を行って、シーケンス行列に対応する特徴ベクトルを得る。
ネットワーク装置は、シーケンス行列に対応する特徴ベクトルを、ドメイン名分類モデルに入力し、ドメイン名が正当なドメイン名であるか否かを特定する。
本開示の実施例によれば、当業者が文字特徴ライブラリを設定する必要がなく、ドメイン名の識別精度を向上させることができる。
本開示の実施例は、ドメイン名に対応するシーケンス行列を特定する方法をさらに提供する。図2に示すように、当該方法における具体的な処理手順は、以下のステップを含む。
ステップ201では、ネットワーク装置は、ドメイン名から有効な文字を取得し、当該有効な文字は、ドメイン名うち記憶されたプレフィックス文字及び記憶されたサフィックス文字以外の文字で構成される。
本開示の実施例において、ネットワーク装置は、ドメイン名において一般使用されるプレフィックス文字及びサフィックス文字を記憶する。ここで、プレフィックス文字は、例えばwww.や、「ftp.」や、「smtp.」などのネットワーク名である。サフィックス文字は、例えば、「.com」や、「.net」や、「.edu」や、「.gov」などのトップレベルドメイン名である。ネットワーク装置は、ドメイン名に含まれるプレフィックス文字及びサフィックス文字を識別し、その後にプレフィックス文字及びサフィックス文字以外の文字を抽出する。抽出されたた文字は有効な文字である。例えば、ドメイン名がwww.google.comである場合、www.及び.com以外の文字列を抽出して、googleを取得する。
ステップ202では、ネットワーク装置は、記憶された文字とインデックス値とのマッピング規則によって、有効な文字の夫々に対応するインデックス値を特定し、有効な文字に対応する第1のインデックスシーケンスを得る。
本開示の実施例では、ネットワーク装置に、ドメイン名に現れる可能性のある文字を記憶し、各文字にインデックス値を割り当てることによって、文字とインデックス値との間のマッピング規則を生成する。
一可能な実施形態では、ネットワーク装置に、ドメイン名に現れる可能性のある文字を記憶しており、そして、1から順番に各文字に番号を付ける。各文字に対応する番号は、各文字に対応するインデックス値である。例えば、現れる文字がa、b、c、dである。ネットワーク装置は、aに対応する番号が1であり、bに対応する番号が2であり、cに対応する番号が3であり、dに対応する番号が4であることを特定する。このとき、aのインデックス値は1であり、bのインデックス値は2であり、cのインデックス値は3であり、dのインデックス値は4である。表1を参照すると、本開示の実施例に提供される文字とインデックス値とのマッピング規則の例が示されている。
Figure 2021520019
ネットワーク装置は、有効な文字を取得した後、記憶された文字とインデックス値とのマッピング規則により、有効な文字の夫々に対応するインデックス値を特定し、有効な文字に対応する第1のインデックスシーケンスを得る。例えば、ドメイン名はwww.google.comであり、有効な文字はgoogleである場合、表1に示された文字とインデックス値とのマッピング規則に基づいて、第1のインデックスシーケンスは1、2、2、1、5、6である。
ステップ203では、第1のインデックスシーケンスが標準長さに達していない場合、ネットワーク装置は、第1のインデックスシーケンスを第2のインデックスシーケンスとして補充する。
ここで、第2のインデックスシーケンスは、標準長さを有する。
本公開の実施例では、ネットワーク装置は、有効な文字に対応する第1のインデックスシーケンスを得た後、第1のインデックスシーケンスが標準長さに達したか否かを判定する。ここで、標準長さは、当業者で経験に応じて設定でき、第1のインデックスシーケンスの長さの上限よりも大きい。例えば、標準長さは60文字とすることができる。
第1のインデックスシーケンスが標準の長さに達していない場合、ネットワーク装置は、第1のインデックスシーケンスを第2のインデックスシーケンスとして補充し、ここで、第2のインデックスシーケンスは標準長さを有する。各有効な文字を標準長さのインデックスシーケンスで表すと、プログラミング処理がより容易になることが理解できる。
一可能な実施例において、ネットワーク装置は、予め設定された文字により第1のインデックスシーケンスを補充する。例えば、予め設定された文字は0である。ネットワーク装置は、第1のインデックスシーケンスの最初の文字の前に、予め設定されたの文字を補充してもよく、第1のインデックスシーケンスの最後の文字の後に、予め設定されたの文字を補充してもいい。
例えば、第1のインデックスシーケンスが1、2、2、1、5、6であり、標準長さが60文字であるとすると、第2のインデックスシーケンスは1、2、2、1、5、6、0、0…、0であり、すなわち、文字6の後に54個の0を補充した。
ステップ204では、ネットワーク装置は、第2のインデックスシーケンスの各インデックス値に対応する文字ベクトルを計算する。
本公開の実施例では、ネットワーク装置に埋め込み層(Embedding layer)ニューラルネットワークを記憶している。埋め込み層ニューラルネットワークは、任意の文字を文字ベクトルに変換するために用いられる。ネットワーク装置は、第2のインデックスシーケンスを埋め込み層ニューラルネットワークに入力することで、第2のインデックスシーケンス中の各インデックス値に対応する文字ベクトルを計算することができる。ここで、算出された文字ベクトルは、128次元のベクトルであってよい。
埋め込み層ニューラルネットワークによる各文字に対応する文字ベクトルを計算する処理手順は、従来の技術であるため、本実施例ではその説明を省略する。埋め込み層ニューラルネットワークにより文字ベクトルを計算することで、文字間の類似性及び文脈間の関連性を効果的に学習することができる。
ステップ205では、ネットワーク装置は、第2のインデックスシーケンスの各インデックス値に対応する文字ベクトルにより、シーケンス行列を特定する。
本開示の実施例において、ネットワーク装置は、第2のインデックスシーケンスの各インデックス値に対応する文字ベクトルを計算し、その後、第2のインデックスシーケンスの各インデックス値に対応する文字ベクトルにより、シーケンス行列を特定する。
例えば、第2のインデックスシーケンスは、1、2、2、1、5、6、0、0…、0であるとする。ここで、第2のインデックスシーケンスの長さは60文字であり、すなわち、文字6の後に54個の0を補充している。ネットワーク装置は、第2のインデックスシーケンスを埋め込み層ニューラルネットワークに入力し、文字ベクトルa、a、a…、a60を出力する。ここで、aは128次元のベクトルであり、すなわち、60個の128次元の文字ベクトルが得られた。ネットワーク装置は、60個の128次元の文字ベクトルを用いて、60×128のシーケンス行列を特定する。
本公開の実施例において、ネットワーク装置は、ドメイン名識別問題を自然言語処理問題に変換し、各文字に対応するインデックス値を設定し、その後、インデックス値を文字ベクトル化により表すことで、プログラミングがより容易になる。
本開示の実施例において、シーケンス行列を特定する別の実現方式をさらに提供する。この実現方式では、ネットワーク装置は、有効な文字を抽出する処理を行わない。
具体的には、ネットワーク装置は、識別対象のドメイン名を取得した後、ドメイン名に含まれる各文字に対応するインデックス値を特定し、当該ドメイン名に対応するインデックスシーケンス(区別の便宜上、第3のインデックスシーケンスと呼ぶ)を得る。ネットワーク装置は、第3のインデックスシーケンスが標準長さに達したか否かを判断する。第3のインデックスシーケンスが標準長さに達していない場合、ネットワーク装置は、第3のインデックスシーケンスを、標準長さを有する第4のインデックスシーケンスとして補充する。そして、ネットワーク装置は、第4のインデックスシーケンスの各インデックス値に対応する文字ベクトルを算出する。さらに、ネットワーク装置は、第4のインデックスシーケンスの各インデックス値に対応する文字ベクトルを利用して、シーケンス行列を特定する。
本開示の実施例に提供された、ドメイン名に対応するシーケンス行列を特定する方法は、ネットワーク装置がまず識別機能を有する文字(有効な文字とも呼ばれる)をドメイン名から抽出し、次に、有効な文字によって、ドメイン名に対応するシーケンス行列を特定する方法であり、ドメイン名に含まれる全ての文字に対し計算する必要がなく、シーケンス行列を特定する効率を向上させる。
本開示の実施例は、特徴ベクトルを計算する方法をさらに提供し、図3に示すように、方法の具体的な処理手順は、以下のステップを含む。
ステップ301では、ネットワーク装置は、入出力ゲートに現在入力された第1の文字ベクトルと、入出力ゲートに前回入力された第2の文字ベクトルの出力値と、入出力ゲートに前回入力された第2の文字ベクトルのフィードバック値と、を取得する。
本公開の実施例では、ネットワーク装置は、シーケンス行列に含まれる各文字ベクトルを、入出力ゲートに順次入力する。説明の便宜上、入出力ゲートに現在入力された文字ベクトルを、第1の文字ベクトルと呼び、入出力ゲートに前回入力された文字ベクトルを、第2の文字ベクトルと呼ぶ。
ネットワーク装置は、第1の文字ベクトルと、第2の文字ベクトルの出力値と、第2の文字ベクトルのフィードバック値と、を取得する。ここで、最初に入出力ゲートに入力された文字ベクトルについて、入出力ゲートに前回入力された文字ベクトルの出力値と、入出力ゲートに前回入力された文字ベクトルのフィードバック値とは、いずれも0である。フィードバック値の計算方法については、後で詳しく説明する。
例えば、ネットワーク装置は、まず、文字ベクトルaを入出力ゲートに入力し、aの出力値を出力し、かつ、文字ベクトルaをフィードバックゲートに入力し、aのフィードバック値を出力する。そして、ネットワーク装置は、文字ベクトルaを入出力ゲートに入力し、aの出力値を出力する。ネットワーク装置は、aと、aの出力値と、aのフィードバック値とを取得することで、以降の演算を行う。
ステップ302では、ネットワーク装置は、第1の文字ベクトルと、第2の文字ベクトルの出力値と、第2の文字ベクトルのフィードバック値とに対して第1の論理演算を行って、第1の文字ベクトルの出力値を得る。
本開示の実施例において、図4に示すように、本開示の実施例に係る入出力ゲートの論理構造図である。ネットワーク装置は、図4に示された入出力ゲートに基づいて、第1の文字ベクトルと、第2の文字ベクトルの出力値と、第2の文字ベクトルのフィードバック値とに対し、第1の論理演算を行って、第1の文字ベクトルの出力値を得る。具体的な計算処理手順は、以下のステップを含む。
第一ステップでは、ネットワーク装置は、第1の重み行列に基づいて、第1の文字ベクトルと第2の文字ベクトルのフィードバック値に対して第1の重み付け計算を行って、第1の重み付け結果を得る。
第二ステップでは、ネットワーク装置は、第2の重み行列に基づいて、第1の文字ベクトルと第2の文字ベクトルのフィードバック値に対して第2の重み付け計算を行って、第2の重み付け結果を得る。
ここで、第1の重み行列と第2の重み行列とは、同じであってもよく、異なっていてもよい。
第三ステップでは、ネットワーク装置は、第1の重み付け結果と第1のオフセットパラメータとを第1の活性化関数に入力し、第1の演算結果を得る。対応する計算式は、以下の通りである。
Figure 2021520019
ここで、第1の活性化関数はtanh活性化関数であり、ht−1は入出力ゲートに前回入力された文字ベクトルのフィードバック値であり、xは入出力ゲートに現在入力された文字ベクトルであり、wは第1の重み行列であり、bは第1のオフセットパラメータであり、iは第1の演算結果である。
第四ステップでは、ネットワーク装置は、第2の重み付け結果と第2のオフセットパラメータとを第2の活性化関数に入力し、第2の演算結果を得る。対応する計算式は、以下の通りである。
Figure 2021520019
ここで、第2の活性化関数はtanh活性化関数であり、wは第2の重み行列であり、bは第2のオフセットパラメータであり、
Figure 2021520019
は第2の演算結果であり、ht−1及びxは数式2におけるht−1及びxと同一である。
前記i及び
Figure 2021520019
は、いずれも、第2の文字ベクトルのフィードバック値と第1の文字ベクトルとによって特定されたものであり、iは、第2の文字ベクトルのフィードバック値と第1の文字ベクトルとによって特定される今回の計算による最終入力データを示し、
Figure 2021520019
は第2の文字ベクトルのフィードバック値と第1の文字ベクトルとによって特定される今回の計算によるフィードバック値のうち保留すべきデータを示す。
一例では、第1のオフセットパラメータと第2のオフセットパラメータは、同じであってもよく、異なっていてもよい。
第五ステップでは、ネットワーク装置は、第1の演算結果と第2の演算結果とを乗算し、乗算結果と第2の文字ベクトルの出力値とを加算し、第1の文字ベクトルに対応する出力値を得る。対応する計算式は、以下の通りである。
Figure 2021520019
ここで、Cは第1の文字ベクトルに対応する出力値であり、Ct−1は第2の文字ベクトルの出力値であり、iは第1の演算結果であり、
Figure 2021520019
は第2の演算結果である。
一例において、ネットワーク装置は、後続の論理演算処理を行うために、第1の文字ベクトルの出力値を記憶する。
ステップ303では、ネットワーク装置は、少なくとも1つの文字ベクトルの出力値によって、シーケンス行列に対応する特徴ベクトルを特定する。
本開示の実施例において、上記した処理に基づいて、ネットワーク装置は、いずれの文字ベクトルについても、その文字ベクトルを入出力ゲートに入力した後に、その文字ベクトルの出力値を得る。このようにして、ネットワーク装置は、シーケンス行列に含まれる各文字ベクトルの出力値を得ることができる。ネットワーク装置は、各文字ベクトルの出力値によって、シーケンス行列に対応する特徴ベクトルを特定する。
例えば、シーケンス行列は、a、a、aを含み、ここで、aの出力値がxであり、aの出力値がyであり、aの出力値がzである場合、シーケンス行列に対応する特徴ベクトルは、(x,y,z)である。
本公開の実施例において、既存のリカレントニューラルネットワークにおける入出力ゲートの論理演算を簡素化し、ネットワーク装置の処理量を低減し、ドメイン名の識別精度を向上させる。
さらに、本開示の実施例において、ドメイン名特徴分析モデルは、フィードバックゲートをさらに含む。ネットワーク装置は、入出力ゲートに現在入力された文字ベクトルの出力値を得た後、入出力ゲートに現在入力された文字ベクトルのフィードバック値をさらに計算する。
具体的な処理手順は以下のようである。ネットワーク装置は、第1の文字ベクトルの出力値と、第1の文字ベクトルと、第2の文字ベクトルのフィードバック値に対して、第2の論理演算を行って、第1の文字ベクトルのフィードバック値を得る。
ここで、当該フィードバック値は、ネットワーク装置が入出力ゲートに次回に入力された文字ベクトルの出力値を計算するためのものである。
本開示の実施例において、ネットワーク装置は、いずれの文字ベクトルに対し、その文字ベクトルをドメイン名特徴分析モデルの入出力ゲートに入力する。同時に、ネットワーク装置は、当該文字ベクトルをドメイン名特徴分析モデルのフィードバックゲートにも入力する。すなわち、入出力ゲートに現在入力された文字ベクトルと、フィードバックゲートに現在入力された文字ベクトルとは同一の文字ベクトルである。同様に、入出力ゲートに前回入力された文字ベクトルと、フィードバックゲートに前回入力された文字ベクトルとは、同一の文字ベクトルである。
フィードバックゲートに最初に入力された文字ベクトルについて、フィードバックゲートに前回入力された文字ベクトルのフィードバック値は0であることが理解できる。
図5に示すように、本開示の実施例に係るフィードバックゲートの論理構造図を示す。ネットワーク装置は、図5に示されるフィードバックゲートに基づいて、第1の文字ベクトルの出力値と、第1の文字ベクトルと、第2の文字ベクトルのフィードバック値に対して第2の論理演算を行って、フィードバックゲートに現在入力された文字ベクトルのフィードバック値を得る。具体的な計算処理手順は以下のステップを含む。
第一ステップでは、ネットワーク装置は、第3の重み行列に基づいて、第1の文字ベクトルと第2の文字ベクトルのフィードバック値に対して第3の重み付け計算を行い、第3の重み付け結果を得る。
第二ステップでは、ネットワーク装置は、第3の重み結果と第3のオフセットパラメータとを第3の活性化関数に入力し、第3の演算結果を得る。対応する計算式は、以下の通りである。
Figure 2021520019
ここで、第3の活性化関数はtanh活性化関数であり、ht−1は第1の文字ベクトルのフィードバック値であり、xは第1の文字ベクトルであり、wは第3の重み行列であり、bは第3のオフセットパラメータであり、Oは第3の演算結果である。Oは、第2の文字ベクトルと第1の文字ベクトルのフィードバック値から選択された、次の計算にフィードバックする必要があるデータと、今回の出力(即ちC)に記憶する必要があるデータと、を表す。
第三ステップでは、ネットワーク装置は、第1の文字ベクトルの出力値を第4の活性化関数に入力し、第4の演算結果を得る。
第四ステップでは、ネットワーク装置は、第3の演算結果と第4の演算結果とを乗算して、第1の文字ベクトルのフィードバック値を得る。対応する計算式は、以下の通りである。
Figure 2021520019
ここで、第4の活性化関数はtanh活性化関数であり、Cは第1の文字ベクトルの出力値であり、Oは第3の演算結果であり、hは第1の文字ベクトルのフィードバック値である。
一例において、ネットワーク装置は、後続の論理演算処理を行うために第1の文字ベクトルのフィードバック値を記憶する。
上記数式2において、w・[ht−1,x]は、2つの数式の略式であり、w・[ht−1,x]=w×ht−1+w×xである。本開示の実施例において、ネットワーク装置は、埋め込み層により各文字を128次元の文字ベクトルに変換し、これに対応して、ht−1およびxは128次元のベクトルであり、bは128次元のベクトルであり、wは128×128の行列であり、w×ht−1は128×1のベクトルであり、w×xも128×1のベクトルであり、最後にbを加算して128次元のベクトルを出力する。
同様に、前記数式3において、wは128×128の行列であり、bは128次元のベクトルであり、前記数式5において、wは128×128の行列であり、bは128次元のベクトルである。前記数式4において、Cは、128×128の行列である。
本開示の実施例では、既存のリカレントニューラルネットワークにおけるフィードバックゲートの論理演算を簡素化し、ネットワーク装置の処理量を低減し、ドメイン名の識別精度を向上させる。
一例において、本開示の実施例は、ドメイン名特徴分析モデルおよびドメイン名分類モデルのトレーニング方法を提供する。ここで、当該方法はネットワーク装置によって実行されてもよい。ここで、当該ネットワーク装置は、データ処理機能を有するネットワーク装置であってもよい。図6に示すように、具体的には以下のステップを含む。
ステップ601では、ネットワーク装置は、記憶されたトレーニングサンプルセットを取得する。
ここで、トレーニングサンプルセットに、複数のポジティブサンプルと複数のネガティブサンプルを含む。各ポジティブサンプルは、正当なドメイン名に対応するシーケンス行列であり、各ネガティブサンプルは、不正なドメイン名に対応するシーケンス行列である。
本開示の実施例において、当業者は、ネットワーク装置に複数の正当なドメイン名を事前に入力する。ネットワーク装置は、正当なドメイン名のぞれぞれに対応するシーケンス行列を特定して、ポジティブサンプルを得る。ネットワーク装置は、不正なドメイン名を取得してもよい。不正なドメイン名は、ネットワークからクロールすることでネットワーク装置により取得されるものであってもよく、あるいは、ドメイン名生成アルゴリズム(Domainname generation algorithm、DGAと略称する)技術を利用して、ネットワーク装置によって生成されるものてあってもよい。ネットワーク装置は、不正なドメイン名に対応するシーケンス行列を特定し、ネガティブサンプルを得る。
このようにして、ネットワーク装置は、トレーニングサンプルセットを得ることができる。ここで、シーケンス行列を特定する具体的な処理手順は、ステップ102に関する説明を参照することができるため、ここではその説明を省略する。
ステップ602では、ネットワーク装置は、各シーケンス行列に含まれる各文字ベクトルを第1の初期トレーニングモデルに順次入力し、各文字ベクトルに対応する出力値を得る。
ここで、第1の初期トレーニングモデルは、入出力ゲート及びフィードバックゲートを含むリカレントニューラルネットワークである。
ステップ603では、ネットワーク装置は、各シーケンス行列の各文字ベクトルの出力値によって、各シーケンス行列に対応する特徴ベクトルを特定する。
本開示の実施例において、ステップ602及びステップ603の具体的な処理手順は、ステップ301〜ステップ303に関する説明を参照することができるため、ここでその説明を省略する。
ステップ604では、ネットワーク装置は、各シーケンス行列に対応する特徴ベクトルを第2の初期トレーニングモデルに入力し、各シーケンス行列に対応するドメイン名識別結果を取得する。
ここで、第2の初期トレーニングモデルは、全結合層である。
本ステップの処理手順は、ステップ105に関する説明を参照することができるため、ここではその説明は省略する。
ステップ605では、ネットワーク装置は、逆伝播アルゴリズムにより、各シーケンス行列に対応するドメイン名識別結果を利用して、第1の初期トレーニングモデルに含まれる第1の重み行列と、第2の重み行列と、第3の重み行列と、第1のオフセットパラメータと、第2のオフセットパラメータと、第3のオフセットパラメータとを調整して、ドメイン名特徴分析モデルを得る。
ここで、逆伝播アルゴリズムは、通時的逆伝播(Back Propagation TroughTime、BPTTと略称する)アルゴリズムであってよい。
本開示の実施例において、ネットワーク装置は、各シーケンス行列(すなわち、サンプル)に対応するドメイン名識別結果と、当該シーケンス行列(すなわち、サンプル)に対応するドメイン名の実際の分類結果(例えば、正当なドメイン名または不正なドメイン名)と、BPTTアルゴリズムとに基づいて、入出力ゲートに含まれる第1の重み行列、第2の重み行列、第1のオフセットパラメータ及び第2のオフセットパラメータと、フィードバックゲートにおける第3の重み行列及び第3のオフセットパラメータとを調整し、ドメイン名特徴分析モデルを得る。
ここで、BPTTアルゴリズムによるリカレントニューラルネットワークへの調整処理手順は、従来技術に属するため、本開示の実施例ではその説明を省略する。
ステップ606では、ネットワーク装置は、逆伝播アルゴリズムにより、各シーケンス行列に対応するドメイン名識別結果を利用して、第2の初期トレーニングモデルを調整し、ドメイン名分類モデルを得る。
本開示の実施例では、全結合層は、128次元のベクトルである重みベクトルを含む。ネットワーク装置は、各シーケンス行列(即ち、サンプル)に対応するドメイン名識別結果と、当該シーケンス行列(即ち、サンプル)に対応するドメイン名の実際の分類結果(例えば、正当なドメイン名または不正なドメイン名)と、逆伝播アルゴリズムとによって、全結合層に含まれる重みベクトルの値を調整して、ドメイン名特徴分析モデルを得る。
ここで、逆伝播アルゴリズムによって全結合層を調整する処理手順は、従来の技術に属するため、本開示の実施例ではその説明を省略する。
本開示の実施例において、方法の実施例について、簡単に説明するために、一連の動作の組み合わせとして説明されているが、当業者は、本開示の実施例が説明された動作の順番によって制限されないと理解するはずである。なぜなら、本開示の実施例によれば、いくつかのステップは他の順番で、または同時に実行され得るからである。次に、当業者は、本明細書に記載された実施例が全て、好ましい実施例であり、係る動作が本開示の実施例に必ずしも必要ではないと理解するはずである。図7を参照すると、本開示の実施例に係るドメイン名を識別する装置を示した。当該装置はネットワーク装置に適用され、ネットワーク装置はドメイン名特徴分析モデル及びドメイン名分類モデルを既に構築しており、ドメイン名特徴分析モデルは入出力ゲートを含み、当該装置は、受信モジュール710と、第1の特定モジュール720と、第1の入力モジュール730と、処理モジュール740と、第2の特定モジュール750とを備える。各モジュールの説明は以下の通りである。
受信モジュール710は、端末から送信されたドメイン名解析リクェストを受信するためのものであり、ドメイン名解析リクェストに識別対象のドメイン名を含み、ドメイン名に少なくとも1つの文字を含む。
第1の特定モジュール720は、ドメイン名に対応するシーケンス行列を特定するためのものであり、シーケンス行列は少なくとも1つの文字ベクトルを含み、少なくとも1つの文字ベクトルの夫々と少なくとも1つの文字の夫々とは一対一対応する。
第1の入力モジュール730は、前記少なくとも1つの文字ベクトルの夫々を前記入出力ゲートに順次入力するためのものであり、前記入出力ゲートは前記の複数の活性化関数間の論理演算規則を含む。
処理モジュール740は、前記複数の活性化関数間の論理演算規則により、前記少なくとも1つの文字ベクトルのそれぞれへの論理演算処理を行って、前記シーケンス行列に対応する特徴ベクトルを得るためのものである。
第2の特定モジュール750は、シーケンス行列に対応する特徴ベクトルをドメイン名分類モデルに入力し、ドメイン名が正当なドメイン名であるか否かを特定するためのものである。
本公開の一実施例において、第1の特定モジュール720は、第1の取得サブモジュールと、第1の特定サブモジュールと、補充サブモジュールと、第1の算出サブモジュールと、第2の特定サブモジュールとを含む。
第1の取得サブモジュールは、ドメイン名から有効な文字を取得するためのものであり、有効な文字はドメイン名のうち記憶されたプレフィックス文字およびサフィックス文字以外の文字で構成される。
第1の特定サブモジュールは、記憶された文字とインデックス値とのマッピング規則により、有効な文字の夫々に対応するインデックス値を特定し、有効な文字に対応する第1のインデックスシーケンスを得るためのものである。
補充サブモジュールは、第1のインデックスシーケンスが標準長さに達していないとき、第1のインデックスシーケンスを、標準長さを有する第2のインデックスシーケンスとして補充するためのものである。
第1の計算サブモジュールは、第2のインデックスシーケンスの各インデックス値に対応する文字ベクトルを計算するためのものである。
第2の特定サブモジュールは、第2のインデクスシーケンスの各インデクス値に対応する文字ベクトルにより、シーケンス行列を特定するためのものである。
本公開の一実施例において、処理モジュール740は、第2の取得サブモジュールと、演算サブモジュールと、第3の特定サブモジュールとを含む。
第2の取得サブモジュールは、前記入出力ゲートに現在入力された第1の文字ベクトルと、前記入出力ゲートに前回入力された第2の文字ベクトルの出力値と、前記入出力ゲートに前回入力された第2の文字ベクトルのフィードバック値とを取得するためのものである。
演算サブモジュールは、前記第1の文字ベクトルと、前記第2の文字ベクトルの出力値と、前記第2の文字ベクトルのフィードバック値とに対して第1の論理演算を行って、前記第1の文字ベクトルの出力値を得るためのものである。
第3の特定サブモジュールは、得られた少なくとも1つの文字ベクトルの出力値により、前記シーケンス行列に対応する特徴ベクトルを特定するためのものである。
本公開の一実施例において、演算サブモジュール742は、第1の計算ユニットと、第2の計算ユニットと、第1の入力ユニットと、第2の入力ユニットと、第3の計算ユニットとを含む。
第1の計算ユニットは、第1の重み行列に基づいて、前記第1の文字ベクトルと前記第2の文字ベクトルのフィードバック値に対して第1の重み付け計算を行って、第1の重み付け結果を得るためのものである。
第2の計算ユニットは、第2の重み行列に基づいて、前記第1の文字ベクトルと前記第2の文字ベクトルのフィードバック値に対して第2の重み付け計算を行って、第2の重み付け結果を得るためのものである。
第1の入力ユニットは、第1の重み付け結果と第1のオフセットパラメータを第1の活性化関数に入力し、第1の演算結果を得るためのものである。
第2の入力ユニットは、第2の重み付け結果と第2のオフセットパラメータを第2の活性化関数に入力し、第2の演算結果を得るためものである。
第3の計算ユニットは、前記第1の演算結果と前記第2の演算結果とを乗算し、乗算結果と前記第2の文字ベクトルの出力値とを加算し、前記第1の文字ベクトルに対応する出力値を得るためものである。
本開示の一実施例において、ドメイン名特徴分析モデルは、フィードバックゲートをさらに含み、当該装置は、演算モジュールをさらに含む。
演算モジュールは、前記第1の文字ベクトルの出力値と、前記第1の文字ベクトルと、前記第2の文字ベクトルのフィードバック値に対して第2の論理演算を行って、前記第1の文字ベクトルのフィードバック値を得るためのものである。
本開示の一実施例において、演算モジュールは、第2の計算サブモジュールと、第1の入力サブモジュールと、第2の入力サブモジュールと、乗算サブモジュールとをさらに含む。
第2の計算サブモジュールは、第3の重み行列に基づいて、前記第1の文字ベクトルと前記第2の文字ベクトルのフィードバック値に対して第3の重み付け計算を行って、第3の重み付け結果を得るためのものである。
第1の入力サブモジュールは、第3の重み付け結果と第3のオフセットパラメータを第3の活性化関数に入力し、第3の演算結果を得るためのものである。
第2の入力サブモジュールは、前記第1の文字ベクトルの出力値を第4の活性化関数に入力し、第4の演算結果を得るためのものである。
乗算サブモジュールは、前記第3の演算結果と前記第4の演算結果とを乗算して、第1の文字ベクトルのフィードバック値を得るためのものである。
本開示の一実施例において、当該装置は、取得モジュールと、第2の入力モジュールと、第3の特定モジュールと、第3の入力モジュールと、第1の調整モジュールと、第2の調整モジュールとをさらに含む。
取得モジュールは、記憶されたトレーニングサンプルセットを取得するためのものであり、トレーニングサンプルセットは、複数のポジティブサンプルと複数のネガティブサンプルを含み、各ポジティブサンプルは正当なドメイン名に対応するシーケンス行列であり、各ネガティブサンプルは不正なドメイン名に対応するシーケンス行列である。
第2の入力モジュールは、各シーケンス行列に含まれる各文字ベクトルを第1の初期トレーニングモデルに順次入力し、各文字ベクトルに対応する出力値を得るためのものである。
第3の特定モジュールは、各シーケンス行列の各文字ベクトルの出力値によって、各シーケンス行列に対応する特徴ベクトルを特定するためのものである。
第3の入力モジュールは、各シーケンス行列に対応する特徴ベクトルを第2の初期トレーニングモデルに入力し、各シーケンス行列に対応するドメイン名識別結果を得るためのものである。
第1の調整モジュールは、逆伝播アルゴリズムにより、各シーケンス行列に対応するドメイン名識別結果を利用し、前記第1の初期トレーニングモデルに含まれる前記第1の重み行列と、前記第2の重み行列と、前記第3の重み行列と、前記第1のオフセットパラメータと、前記第2のオフセットパラメータと、前記第3のオフセットパラメータとを調整して、前記ドメイン名特徴分析モデルを得るためのものである。
第2の調整モジュールは、逆伝播アルゴリズムにより、各シーケンスに対応するドメイン名識別結果を利用し、前記第2の初期トレーニングモデルを調整して、前記ドメイン名分類モデルを得るためのものである。
本開示の実施例に係るドメイン名を識別する装置は、ネットワーク装置に適用され、ネットワーク装置は、ドメイン名特徴分析モデルとドメイン名分類モデルとを既に構築しており、ドメイン名特徴分析モデルに入出力ゲートを含む。ネットワーク装置は、端末から送信されたドメイン名解析リクェストを受信し、当該ドメイン名解析リクェストは、識別対象のドメイン名を含み、ドメイン名は、少なくとも1つの文字を含む。ネットワーク装置は、ドメイン名に対応するシーケンス行列を特定し、ここで、シーケンス行列は、少なくとも1つの文字ベクトルを含み、少なくとも1つの文字ベクトルの夫々と、少なくとも1つの文字の夫々とは一対一対応する。
そして、ネットワーク装置は、少なくとも1つの文字ベクトルの夫々を、入出力ゲートに順次入力する。入出力ゲートは、複数の活性化関数間の論理演算規則を含む。ネットワーク装置は、複数の活性化関数間の論理演算規則により、少なくとも1つの文字ベクトルのそれぞれへの論理演算処理を行って、シーケンス行列に対応する特徴ベクトルを得る。
ネットワーク装置は、シーケンス行列に対応する特徴ベクトルをドメイン名分類モデルに入力し、ドメイン名が正当なドメイン名であるか否かを特定する。
本開示の実施例によれば、当業者が文字特徴ライブラリを設定する必要がなく、ドメイン名の識別精度を向上させることができる。
上記ドメイン名の識別方法の実施例に対応して、本開示の実施例は、ネットワーク装置をさらに提供する。図8を参照すると、本開示の実施例に係るネットワーク装置の構造ブロック図を示した。
当該ネットワーク装置は、プロセッサ801と、送受信機802と、機械実行可能なコマンドを記憶した機械可読記憶媒体803とを含む。
当該ネットワーク装置は、ドメイン名特徴分析モデルと、ドメイン名分類モデルとを既に構築しており、当該ドメイン名特徴分析モデルは入出力ゲートを含む。ドメイン名特徴分析モデルおよびドメイン名分類モデルは、ソフトウェア機能モジュールにより実現される。これで分かるように、上記ソフトウェア機能モジュールは、メモリ(flash)にロードされてもよく、プロセッサ801によって呼び出されるように実現される。あるいは、前記ソフトウェア機能モジュールはプロセッサの内部に設けられてもよく、プロセッサ801によってアクセスされるように実現される。
ここで、送受信機802は、端末から送信されたドメイン名解析リクェストを受信し、前記ドメイン名解析リクェストを前記プロセッサ801に伝送するためのものであり、前記ドメイン名解析リクェストに識別対象のドメイン名を含み、前記ドメイン名に少なくとも1つの文字を含む。
機械実行可能なコマンドを読み取って実行することで、前記プロセッサ801に、
前記ドメイン名に対応するシーケンス行列を特定し、前記シーケンス行列が少なくとも1つの文字ベクトルを含み、前記少なくとも1つの文字ベクトルの夫々と前記少なくとも1つの文字の夫々とは一対一対応することと、
前記少なくとも1つの文字ベクトルの夫々を、前記入出力ゲートに順次入力し、前記入出力ゲートが複数の活性化関数間の論理演算規則を含むことと、
前記複数の活性化関数間の論理演算規則により、前記少なくとも1つの文字ベクトルの夫々への論理演算処理を行って、前記シーケンス行列に対応する特徴ベクトルを得ることと、
前記シーケンス行列に対応する特徴ベクトルを前記ドメイン名分類モデルに入力し、前記ドメイン名が正当なドメイン名であるか否かを特定することと、
を実行させる。
本開示の一実施例において、前記機械実行可能なコマンドは、具体的に、前記プロセッサ801に、
前記ドメイン名から有効な文字を取得し、前記有効な文字が前記ドメイン名のうち記憶されたプレフィックス文字及びサフィックス文字以外の文字で構成されることと、
記憶された文字とインデックス値とのマッピング規則により、前記有効な文字の夫々に対応するインデックス値を特定し、前記有効な文字に対応する第1のインデックスシーケンスを得ることと、
前記第1のインデックスシーケンスが標準長さに達していないとき、前記第1のインデックスシーケンスを標準長さを有する第2のインデックスシーケンスとして補充することと、
前記第2のインデックスシーケンスの各インデックス値に対応する文字ベクトルを計算することと、
前記第2のインデックスシーケンスの各インデックス値に対応する文字ベクトルにより、前記シーケンス行列を特定することと、
を実行させる。
本開示の一実施例において、前記機械実行可能なコマンドは、具体的に、前記プロセッサ801に、
前記入出力ゲートに現在入力された第1の文字ベクトルと、前記入出力ゲートに前回入力された第2の文字ベクトルの出力値と、前記入出力ゲートに前回入力された前記第2の文字ベクトルのフィードバック値とを取得することと、
前記第1の文字ベクトルと、前記第2の文字ベクトルの出力値と、前記第2の文字ベクトルのフィードバック値とに対して第1の論理演算を行って、前記第1の文ベクトルの出力値を得ることと、
得られた少なくとも1つの文字ベクトルの出力値により、前記スシーケンス行列に対応する特徴ベクトルを特定することと、
を実行させる。
本開示の一実施例において、前記機械実行可能なコマンドは、具体的に、前記プロセッサ801に、
第1の重み行列に基づいて、前記第1の文字ベクトルと前記第2の文字ベクトルのフィードバック値に対して第1の重み付け計算を行って、第1の重み付け結果を得ることと
第2の重み行列に基づいて、前記第1の文字ベクトルと前記第2の文字ベクトルのフィードバック値に対して第2の重み付け計算を行って、第2の重み付け結果を得ることと、
前記第1の重み付け結果と第1のオフセットパラメータを第1の活性化関数に入力し、第1の演算結果を得ることと、
前記第2の重み付け結果と第2のオフセットパラメータを第2の活性化関数に入力し、第2の演算結果を得ることと、
前記第1の演算結果と前記第2の演算結果とを乗算し、乗算結果と前記第2の文字ベクトルの出力値とを加算し、前記第1の文字ベクトルに対応する出力値を得ることと、
を実行させる。
本開示の一実施例において、前記ドメイン名特徴分析モデルは、フィードバックゲートをさらに含み、前記機械実行可能なコマンドは、さらに、前記プロセッサ801に、前記第1の文字ベクトルの出力値と、前記第1の文字ベクトルと、前記第2の文字ベクトルのフィードバック値に対して第2の論理演算を行って、前記第1の文字ベクトルのフィードバック値を得ることを実行させ、
ここで、前記フィードバック値は、前記入出力ゲートに次回に入力される文字ベクトルの出力値を計算するためのものである。
本開示の一実施例において、前記機械実行可能なコマンドは、具体的に、前記プロセッサ801に、
第3の重み行列に基づいて、前記第1の文字ベクトルと前記第2の文字ベクトルのフィードバック値に対して第3の重み付け計算を行って、第3の重み付け結果を得ることと、
前記第3の重み付け結果と第3のオフセットパラメータを第3の活性化関数に入力し、第3の演算結果を得ることと、
前記第1の文字ベクトルの出力値を第4の活性化関数に入力し、第4の演算結果を得ることと、
前記第3の演算結果と前記第4の演算結果とを乗算して、前記第1の文字ベクトルのフィードバック値を得ることと、
を実行させる。
本開示の一実施例において、前記機械実行可能なコマンドは、さらに、前記プロセッサ801に、
記憶されたトレーニングサンプルセットを取得し、前記トレーニングサンプルのセットに複数のポジティブサンプルと複数のネガティブサンプルとを含み、各ポジティブサンプルが、正当なドメイン名に対応するシーケンス行列であり、各ネガティブサンプルが、不正なドメイン名に対応するシーケンス行列であることと、
各シーケンス行列に含まれる各文字ベクトルを、第1の初期トレーニングモデルに順次入力し、前記各文字ベクトルに対応する出力値を得ることと、
各シーケンス行列の各文字ベクトルの出力値によって、各シーケンス行列に対応する特徴ベクトルを特定することと、
各シーケンス行列に対応する特徴ベクトルを第2の初期トレーニングモデルに入力し、各シーケンス行列に対応するドメイン名識別結果を得ることと、
逆伝播アルゴリズムにより、各シーケンス行列に対応するドメイン名識別結果を利用し、前記第1の初期トレーニングモデルに含まれる前記第1の重み行列と、前記第2の重み行列と、前記第3の重み行列と、前記第1のオフセットパラメータと、前記第2のオフセットパラメータと、前記第3のオフセットパラメータとを調整して、前記ドメイン名特徴分析モデルを得ることと、
逆伝播アルゴリズムにより、各シーケンス行列に対応するドメイン名識別結果を利用し、前記第2の初期トレーニングモデルを調整して、前記ドメイン名分類モデルを得ることと、
を実行させる。
本開示の一実施例において、前記マシン実行可能コマンドは、さらに、前記プロセッサ801に、
前記ドメイン名が正当なドメイン名であると特定した場合、前記ドメイン名に対応するネットワークプロトコルIPアドレスを含む応答メッセージを前記端末に送信すること、を実行させる。
図8に示すように、ネットワーク装置は、さらに、通信バス804を有する。通信バス804を介して、プロセッサ801と、機械可読記憶媒体803との間で通信のやり取りを行う。通信バス804は、周辺機器相互接続標準(Peripheral Component Interconnect、PCIと略称する)バス又は拡張業界標準アーキテクチャ(Extended Industry Standard Architecture、EISAと略称する)バス等である。当該通信バス804は、アドレスバス、データバス、制御バス等に分類される。
機械可読記憶媒体803は、ランダムアクセスメモリ(Random Access Memory、RAMと略称する)を含んでもよく、不揮発性メモリ(Non−Volatile Memory、NVMと略称する)を含んでもよく、例えば、少なくとも1つの磁気ディスクメモリを含む。また、機械可読記憶媒体803は、上記プロセッサから離れて配置された少なくとも1つの記憶装置であってもいい。
プロセッサ801は、中央処理装置(Central Processing Unit、CPUと略称する)、ネットワークプロセッサ(Network Processor、NPと略称する)などを含む汎用プロセッサであってもよく、デジタル信号プロセッサ(Digital Signal Processing、DSPと略称する)や、特定用途向け集積回路(Application Specific Integrated Circuit、ASICと略称する)、フィールドプログラマブルゲートアレイ(Field−Programmable Gate Array、FPGAと略称する)、または他のプログラム可能な論理装置、ディスクリートゲート、トランジスタロジック装置、ディスクリートゲートハードウェア構成部品であってもいい。
本開示の実施例に係るネットワーク装置において、ドメイン名特徴分析モデルと、ドメイン名分類モデルとを既に構築しており、ドメイン名特徴分析モデルは入出力ゲートを含む。ネットワーク装置は、端末から送信されたドメイン名解析リクェストを受信し、当該ドメイン名解析リクェストに、識別対象のドメイン名を含み、ドメイン名に少なくとも1つの文字を含む。ネットワーク装置は、ドメイン名に対応するシーケンス行列を特定し、ここで、シーケンス行列は、少なくとも1つの文字ベクトルを含み、少なくとも1つの文字ベクトルの夫々と少なくとも1つの文字の夫々とは一対一対応する。
そして、ネットワーク装置は、少なくとも1つの文字ベクトルの夫々を、入出力ゲートに順次入力する。入出力ゲートは、複数の活性化関数間の論理演算規則を含む。ネットワーク装置は、複数の活性化関数間の論理演算規則により、少なくとも1つの文字ベクトルの夫々への論理演算処理を行って、シーケンス行列に対応する特徴ベクトルを得る。
最後に、ネットワーク装置は、シーケンス行列に対応する特徴ベクトルをドメイン名分類モデルに入力し、ドメイン名が正当なドメイン名であるか否かを特定する。
本開示の実施例によれば、当業者が文字特徴ライブラリを設定する必要がなく、ドメイン名の識別精度を向上させることができる。
本開示の実施例において、「第1」や「第2」等のような関係用語は一つの実体又は操作を他の実体又は操作と区別するために使用されるものであり、必ずしもこれらの実体又は操作の間にいかなるこのような実際的な関係又は順序が存在することを、要求又は暗示するわけではない。そして、用語「備える」、「含む」又はいかなる他の変形は、非排他的包含を含むことを目的とし、これにより一連の要素を含む処理、方法、物又は装置がそれらの要素を備えるだけでなく、明確に記載されていない他の要素、あるいは、このような処理、方法、物又は装置に固有される要素も備えることを意図している。これ以上の限定がない場合、「……を備える」の文で限定される要素は、前記要素を備える処理、方法、物又は装置が、更に他の同じ要素を備えることを排除するものではない。
本明細書における各実施例はいずれも関連するように説明されるが、各実施例の同じ又は似た部分は互いに参照すればよく、各実施例における重点的に説明された部分はいずれも他の実施例との相違点である。特に、システムの実施例については、方法の実施例とほぼ同じであるため、比較的簡単に説明したが、関連する箇所は方法の実施例の説明の一部を参照すればよい。
以上の説明は単に本開示の好適な実施例であって、本開示の保護範囲を限定するためのものではない。本開示の主旨及び原則を逸脱しない範囲でなされるいかなる補正、等価置換、改良等は、いずれも本開示の保護範囲内に含まれる。

Claims (14)

  1. 入出力ゲートを含むドメイン名特徴分析モデルと、ドメイン名分類モデルとを既に構築しているネットワーク装置に適用されるドメイン名の識別方法であって、
    端末から送信されたドメイン名解析リクェストを受信し、前記ドメイン名解析リクェストに、識別対象のドメイン名を含み、前記ドメイン名に少なくとも1つの文字を含むステップと、
    前記ドメイン名に対応するシーケンス行列を特定し、前記シーケンス行列が少なくとも1つの文字ベクトルを含み、前記少なくとも1つの文字ベクトルの夫々と前記少なくとも1つの文字の夫々とが一対一対応するステップと、
    前記少なくとも1つの文字ベクトルの夫々を入出力ゲートに順次入力し、前記入出力ゲートが複数の活性化関数間の論理演算規則を含むステップと、
    前記複数の活性化関数間の論理演算規則により、前記少なくとも1つの文字ベクトルの夫々への論理演算処理を行って、前記シーケンス行列に対応する特徴ベクトルを得るステップと、
    前記シーケンス行列に対応する特徴ベクトルを前記ドメイン名分類モデルに入力し、前記ドメイン名が正当なドメイン名であるか否かを特定するステップと、
    を含む、ドメイン名の識別方法。
  2. 前記ドメイン名に対応するシーケンス行列を特定することは、
    前記ドメイン名から有効な文字を取得し、前記有効な文字が前記ドメイン名のうち記憶されたプレフィックス文字及び記憶されたサフィックス文字以外の文字で構成されるステップと、
    記憶された文字とインデックス値とのマッピング規則により、前記有効な文字の夫々に対応するインデックス値を特定し、前記有効な文字に対応する第1のインデックスシーケンスを得るステップと、
    前記第1のインデックスシーケンスが標準長さに達していない場合、前記第1のインデックスシーケンスを、標準長さを有する第2のインデックスシーケンスとして補充するステップと、
    前記第2のインデックスシーケンスの各インデックス値に対応する文字ベクトルを計算するステップと、
    前記第2のインデックスシーケンスの各インデックス値に対応する文字ベクトルにより、前記シーケンス行列を特定するステップと、
    を含む、請求項1に記載のドメイン名の識別方法。
  3. 前記複数の活性化関数間の論理演算規則により、前記少なくとも1つの文字ベクトルのそれぞれへの論理演算処理を行って、前記シーケンス行列に対応する特徴ベクトルを得ることは、
    前記入出力ゲートに現在入力された第1の文字ベクトルと、前記入出力ゲートに前回入力された第2の文字ベクトルの出力値と、前記入出力ゲートに前回入力された第2の文字ベクトルのフィードバック値とを取得するステップと、
    前記第1の文字ベクトルと、前記第2の文字ベクトルの出力値と、前記第2の文字ベクトルのフィードバック値とに対して第1の論理演算を行って、前記第1の文字ベクトルの出力値を得るステップと、
    得られた少なくとも1つの文字ベクトルの出力値により、前記シーケンス行列に対応する特徴ベクトルを特定するステップと、
    を含む、請求項1に記載のドメイン名の識別方法。
  4. 前記第1の文字ベクトルと、前記第2の文字ベクトルの出力値と、前記第2の文字ベクトルのフィードバック値とに対して第1の論理演算を行って、前記第1の文字ベクトルの出力値を得ることは、
    第1の重み行列に基づいて、前記第1の文字ベクトルと前記第2の文字ベクトルのフィードバック値に対して第1の重み付け計算を行って、第1の重み付け結果を得るステップと、
    第2の重み行列に基づいて、前記第1の文字ベクトルと前記第2の文字ベクトルのフィードバック値に対して第2の重み付け計算を行って、第2の重み付け結果を得るステップと、
    前記第1の重み付け結果と第1のオフセットパラメータとを第1の活性化関数に入力し、第1の演算結果を得るステップと
    前記第2の重み付け結果と第2のオフセットパラメータとを第2の活性化関数に入力し、第2の演算結果を得るステップと、
    前記第1の演算結果と前記第2の演算結果とを乗算し、乗算結果と前記第2の文字ベクトルの出力値とを加算し、前記第1の文字ベクトルに対応する出力値を得るステップと、
    を含む、請求項3に記載のドメイン名の識別方法。
  5. 前記ドメイン名特徴分析モデルは、フィードバックゲートをさらに含み、
    前記第1の文字ベクトルの出力値を得た後に、
    前記第1の文字ベクトルの出力値と、前記第1の文字ベクトルと、前記第2の文字ベクトルのフィードバック値に対して第2の論理演算を行って、前記第1の文字ベクトルのフィードバック値を得るステップをさらに含み、
    前記フィードバック値は、前記入出力ゲートに次回に入力される文字ベクトルの出力値を計算するためのものである、
    請求項4に記載のドメイン名の識別方法。
  6. 前記第1の文字ベクトルの出力値と、前記第1の文字ベクトルと、前記第2の文字ベクトルのフィードバック値に対して第2の論理演算を行って、前記第1の文字ベクトルのフィードバック値を得ることは、
    第3の重み行列に基づいて、前記第1の文字ベクトルと前記第2の文字ベクトルのフィードバック値に対して第3の重み付け計算を行って、第3の重み付け結果を得るステップと、
    前記第3の重み付け結果と第3のオフセットパラメータとを第3の活性化関数に入力し、第3の演算結果を得るステップと、
    前記第1の文字ベクトルの出力値を第4の活性化関数に入力し、第4の演算結果を得るステップと、
    前記第3の演算結果と前記第4の演算結果とを乗算して、前記第1の文字ベクトルのフィードバック値を得るステップと、
    を含む、請求項5に記載のドメイン名の識別方法。
  7. 記憶されたトレーニングサンプルセットを取得し、前記トレーニングサンプルセットに複数のポジティブサンプルと複数のネガティブサンプルを含み、各ポジティブサンプルが正当なドメイン名に対応するシーケンス行列であり、各ネガティブサンプルが不正なドメイン名に対応するシーケンス行列であるステップと、
    各シーケンス行列に含まれる各文字ベクトルを第1の初期トレーニングモデルに順次入力し、前記各文字ベクトルに対応する出力値を得るステップと、
    各シーケンス行列の各文字ベクトルの出力値によって、各シーケンス行列に対応する特徴ベクトルを特定するステップと、
    各シーケンス行列に対応する特徴ベクトルを第2の初期トレーニングモデルに入力し、各シーケンス行列に対応するドメイン名識別結果を得るステップと、
    逆伝播アルゴリズムにより、各シーケンス行列に対応するドメイン名識別結果を利用し、前記第1の初期トレーニングモデルに含まれる前記第1の重み行列と、前記第2の重み行列と、前記第3の重み行列と、前記第1のオフセットパラメータと、前記第2のオフセットパラメータと、前記第3のオフセットパラメータとを調整して、前記ドメイン名特徴分析モデルを得るステップと、
    逆伝播アルゴリズムにより、各シーケンス行列に対応するドメイン名識別結果を利用し、前記第2の初期トレーニングモデルを調整して、前記ドメイン名分類モデルを得るステップと、
    をさらに含む、請求項6に記載のドメイン名の識別方法。
  8. 入出力ゲートを含むドメイン名特徴分析モデルと、ドメイン名分類モデルとを既に構築しているネットワーク装置であって、
    プロセッサと、送受信機と、機械実行可能なコマンドを記憶した機械可読記憶媒体と、を含み、
    前記送受信機は、端末から送信されたドメイン名解析リクェストを受信し、前記ドメイン名解析リクェストを前記プロセッサに伝送するためのものであり、前記ドメイン名解析リクェストに識別対象のドメイン名を含み、前記ドメイン名に少なくとも1つの文字を含み、
    機械実行可能なコマンドを読み取って実行することで、前記プロセッサに、
    前記ドメイン名に対応するシーケンス行列を特定し、前記シーケンス行列が少なくとも1つの文字ベクトルを含み、前記少なくとも1つの文字ベクトルの夫々と前記少なくとも1つの文字の夫々とは一対一対応することと、
    前記少なくとも1つの文字ベクトルの夫々を入出力ゲートに順次入力し、前記入出力ゲートが複数の活性化関数間の論理演算規則を含むことと、
    前記複数の活性化関数間の論理演算規則により、前記少なくとも1つの文字ベクトルのそれぞれへの論理演算処理を行って、前記シーケンス行列に対応する特徴ベクトルを得ることと、
    前記シーケンス行列に対応する特徴ベクトルを前記ドメイン名分類モデルに入力し、前記ドメイン名が正当なドメイン名であるか否かを特定することと、
    を実行させる、ネットワーク装置。
  9. 前記機械実行可能なコマンドは、具体的に、前記プロセッサに、
    前記ドメイン名から有効な文字を取得し、前記有効な文字が前記ドメイン名のうち記憶されたプレフィックス文字及び記憶されたサフィックス文字以外の文字で構成されることと、
    記憶された文字とインデックス値とのマッピング規則により、前記有効な文字の夫々に対応するインデックス値を特定し、前記有効な文字に対応する第1のインデックスシーケンスを取得することと、
    前記第1のインデックスシーケンスが標準長さに達していない場合、前記第1のインデックスシーケンスを、標準長さを有する第2のインデックスシーケンスとして補充することと、
    前記第2のインデックスシーケンスの各インデックス値に対応する文字ベクトルを計算することと、
    前記第2のインデックスシーケンスの各インデックス値に対応する文字ベクトルにより、前記シーケンス行列を特定することと、
    を実行させる、請求項8に記載のネットワーク装置。
  10. 前記機械実行可能なコマンドは、具体的に、前記プロセッサに、
    前記入出力ゲートに現在入力された第1の文字ベクトルと、前記入出力ゲートに前回入力された第2の文字ベクトルの出力値と、前記入出力ゲートに前回入力された前記第2の文字ベクトルのフィードバック値とを取得することと、
    前記第1の文字ベクトルと、前記第2の文字ベクトルの出力値と、前記第2の文字ベクトルのフィードバック値とに対して第1の論理演算を行って、前記第1の文字ベクトルの出力値を得ることと、
    得られた少なくとも1つの文字ベクトルの出力値により、前記スシーケンス行列に対応する特徴ベクトルを特定することと、
    を実行させる、請求項8に記載のネットワーク装置。
  11. 前記機械実行可能なコマンドは、具体的に、前記プロセッサに、
    第1の重み行列に基づいて、前記第1の文字ベクトルと前記第2の文字ベクトルのフィードバック値に対して第1の重み付け計算を行って、第1の重み付け結果を得ることと、
    第2の重み行列に基づいて、前記第1の文字ベクトルと前記第2の文字ベクトルのフィードバック値に対して第2の重み付け計算を行って、第2の重み付け結果を得ることと、
    前記第1の重み付け結果と第1のオフセットパラメータとを第1の活性化関数に入力し、第1の演算結果を得ることと、
    前記第2の重み付け結果と第2のオフセットパラメータとを第2の活性化関数に入力し、第2の演算結果を得ることと、
    前記第1の演算結果と前記第2の演算結果とを乗算し、乗算結果と前記第2の文字ベクトルの出力値とを加算し、前記第1の文字ベクトルに対応する出力値を得ることと、
    を実行させる、請求項10に記載のネットワーク装置。
  12. 前記ドメイン名特徴分析モデルはフィードバックゲートをさらに含み、
    前記機械実行可能なコマンドは、さらに、前記プロセッサに、
    前記第1の文字ベクトルの出力値と、前記第1の文字ベクトルと、前記第2の文字ベクトルのフィードバック値に対して第2の論理演算を行って、前記第1の文字ベクトルのフィードバック値を得ることを実行させ、
    前記フィードバック値は、前記入出力ゲートに次回に入力される文字ベクトルの出力値を計算するためのものである、
    請求項11に記載のネットワーク装置。
  13. 前記機械実行可能なコマンドは、具体的に、前記プロセッサに、
    第3の重み行列に基づいて、前記第1の文字ベクトルと、前記第2の文字ベクトルのフィードバック値に対して第3の重み付け計算を行って、第3の重み付け結果を得ることと、
    前記第3の重み付け結果と第3のオフセットパラメータを第3の活性化関数に入力し、第3の演算結果を得ることと、
    前記第1の文字ベクトルの出力値を第4の活性化関数に入力し、第4の演算結果を得ることと、
    前記第3の演算結果と前記第4の演算結果とを乗算して、前記第1の文字ベクトルのフィードバック値を得ることと、
    を実行させる、請求項12に記載のネットワーク装置。
  14. 前記機械実行可能なコマンドは、さらに、前記プロセッサに、
    記憶されたトレーニングサンプルセットを取得し、前記トレーニングサンプルセットに複数のポジティブサンプルと複数のネガティブサンプルを含み、各ポジティブサンプルが正当なドメイン名に対応するシーケンス行列であり、各ネガティブサンプルが不正なドメイン名に対応するシーケンス行列であることと、
    各シーケンス行列に含まれる各文字ベクトルを第1の初期トレーニングモデルに順次入力し、前記各文字ベクトルに対応する出力値を得ることと、
    各シーケンス行列の各文字ベクトルの出力値によって、各シーケンス行列に対応する特徴ベクトルを特定することと、
    各シーケンス行列に対応する特徴ベクトルを第2の初期トレーニングモデルに入力し、各シーケンス行列に対応するドメイン名識別結果を得ることと、
    逆伝播アルゴリズムにより、各シーケンス行列に対応するドメイン名識別結果を利用し、前記第1の初期トレーニングモデルに含まれる前記第1の重み行列と、前記第2の重み行列と、前記第3の重み行列と、前記第1のオフセットパラメータと、前記第2のオフセットパラメータと、前記第3のオフセットパラメータとを調整して、前記ドメイン名特徴分析モデルを得ることと、
    逆伝播アルゴリズムにより、各シーケンス行列に対応するドメイン名識別結果を利用し、前記第2の初期トレーニングモデルを調整して、前記ドメイン名分類モデルを得ることと、
    を実行させる、請求項13に記載のネットワーク装置。
JP2021510515A 2018-05-21 2019-05-15 ドメイン名の識別 Active JP7069410B2 (ja)

Applications Claiming Priority (3)

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

Publications (2)

Publication Number Publication Date
JP2021520019A true JP2021520019A (ja) 2021-08-12
JP7069410B2 JP7069410B2 (ja) 2022-05-17

Family

ID=66924764

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021510515A Active JP7069410B2 (ja) 2018-05-21 2019-05-15 ドメイン名の識別

Country Status (5)

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

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112769974A (zh) * 2020-12-30 2021-05-07 亚信科技(成都)有限公司 一种域名检测方法、系统及存储介质
CN115391689B (zh) * 2022-08-23 2023-08-22 北京泰镝科技股份有限公司 一种短链接生成方法、装置、设备及存储介质

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7188180B2 (en) * 1998-10-30 2007-03-06 Vimetx, Inc. Method for establishing secure communication link between computers of virtual private network
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
CN101702660B (zh) * 2009-11-12 2011-12-14 中国科学院计算技术研究所 异常域名检测方法及系统
CN103428307B (zh) * 2013-08-09 2016-07-20 中国科学院计算机网络信息中心 仿冒域名检测方法及设备
WO2015087835A1 (ja) * 2013-12-10 2015-06-18 日本電信電話株式会社 Urlマッチング装置、urlマッチング方法、および、urlマッチングプログラム
US9363282B1 (en) * 2014-01-28 2016-06-07 Infoblox Inc. Platforms for implementing an analytics framework for DNS security
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域名检测方法
CN105610830A (zh) * 2015-12-30 2016-05-25 山石网科通信技术有限公司 域名的检测方法及装置
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
US10218716B2 (en) * 2016-10-01 2019-02-26 Intel Corporation Technologies for analyzing uniform resource locators
CN106713312A (zh) * 2016-12-21 2017-05-24 深圳市深信服电子科技有限公司 检测非法域名的方法及装置
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 广东工业大学 一种字符串分类方法、系统及一种字符串分类设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KOJIOHKI: "「LSTMネットワークの概要」", [オンライン], JPN6021039662, 11 December 2017 (2017-12-11), ISSN: 0004615336 *
R. VINAYAKUMAR ET AL.: ""Evaluating deep Learning approaches to characterize and classify the DGAs at scale"", JOURNAL OF INTELLIGENT & FUZZY SYSTEMS, vol. 34, no. 3, JPN6021039669, 22 March 2018 (2018-03-22), pages 1265 - 1276, ISSN: 0004615335 *

Also Published As

Publication number Publication date
CN109889616B (zh) 2020-06-05
CN109889616A (zh) 2019-06-14
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

Similar Documents

Publication Publication Date Title
US10601865B1 (en) Detection of credential spearphishing attacks using email analysis
CN102571846B (zh) 一种转发http请求的方法及装置
US11212297B2 (en) Access classification device, access classification method, and recording medium
US10122722B2 (en) Resource classification using resource requests
JP7069410B2 (ja) ドメイン名の識別
US11750649B2 (en) System and method for blocking phishing attempts in computer networks
CN109525577B (zh) 基于http行为图的恶意软件检测方法
JP2021526687A (ja) 効率的なラベル伝搬のためのアンサンブルベースのデータキュレーションパイプライン
CN111835763A (zh) 一种dns隧道流量检测方法、装置及电子设备
CN114050912A (zh) 一种基于深度强化学习的恶意域名检测方法和装置
US11095672B2 (en) Method for evaluating domain name and server using the same
CN110958244A (zh) 一种基于深度学习的仿冒域名检测方法及装置
US10805318B2 (en) Identification of a DNS packet as malicious based on a value
US20210158217A1 (en) Method and Apparatus for Generating Application Identification Model
CN113905016A (zh) 一种dga域名检测方法、检测装置及计算机存储介质
CN111382432A (zh) 一种恶意软件检测、分类模型生成方法及装置
CN114581966A (zh) 用于信息处理的方法、电子设备和计算机程序产品
CN113691489A (zh) 一种恶意域名检测特征处理方法、装置和电子设备
CN114500368B (zh) 数据传输方法和装置及采用该装置的路由器
CN113055890B (zh) 一种面向移动恶意网页的多设备组合优化的实时检测系统
CN112948578B (zh) 一种dga域名开集分类方法、装置、电子设备及介质
Gu et al. An online website fingerprinting defense based on the non-targeted adversarial patch
CN117061242B (zh) 自动登录方法、装置、系统、计算机设备、及存储介质
EP4270264A1 (en) Dynamically adjusting biases on quantum bits based on detected events
JP6676790B2 (ja) リクエスト制御装置、リクエスト制御方法、および、リクエスト制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211012

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211214

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220419

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220502

R150 Certificate of patent or registration of utility model

Ref document number: 7069410

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150