IP Library Granted Patent US 10,673,814
Granted Patent B1
US 10,673,814 · App. 15/687,660 · Granted Jun 2, 2020

Domain name classification systems and methods

Inventors: Sharon Huffner (München, DE); Ali Mesdaq (San Jose, CA)
Assignee: Proofpoint, Inc.
H04L61/3005H04L61/1511H04L63/1483
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,673,814
App. No.
15/687,660
Granted
Jun 2, 2020
Kind
B1
Abstract

Disclosed is a domain engineering analysis solution that determines relevance of a domain name to a brand name in which a domain name, brand name, and identification of a substring of the domain name may be provided to or obtained by a computer embodying a domain engineering analyzer. A list of features may be determined. The list of features may include a lexicon, or a set of key-value pairs that encode information about terms included as substrings in the domain name. Determining the features may include obtaining a language model for each term, analyzing a cluster of language models closest to the obtained language model, and determining and scoring a relevance of each term to the brand name. The determined relevance and score of each term may be provided to a client. This relevance analysis can be dynamically applied in an online process or proactively applied in an offline process.

Claims (63)

1. A method, comprising:

determining, by a computer in pre-processing, terms that are relevant to a brand, the determining including:

analyzing words used in domain names registered to the brand;

for each term of interest, obtaining a language model and language models that are most similar to the term of interest, the obtaining including:

computing a distance between the language model for the term of interest and each of a plurality of language models associated with a set of words; and

determining a cluster of least-distant language models from the plurality of language models based on the distance between the language model for the term of interest and a respective language model of the plurality of language models associated with the set of words, the cluster of least-distant language models associated with neighbors of the term of interest;

computing a score indicating a relevance of the term of interest to the brand, the computing including determining a number of the neighbors appearing in the domain names registered to the brand;

determining, by a computer in processing an input domain name, character counts and locations of the characters in the input domain name;

for each term indicated by the character counts and the locations of the characters in the input domain name, retrieving a relevance score computed in the pre-processing;

determining a final score for the input domain name based at least on the relevance score of each term in the input domain name; and

providing the final score to a classifier for classifying the input domain name in relevance to the brand.

2. The method of claim 1 , wherein the processing the input domain name includes obtaining a substring of the input domain name that is at least an approximate match to the brand name.

3. The method of claim 2 , wherein the substring of the input domain name includes:

an exact match to the brand name, or

an approximate match that matches the brand name within a predetermined threshold measure of distance from the brand name.

4. The method of claim 2 , wherein the obtaining the substring of the input domain name that is at least an approximate match to the brand name includes:

obtaining a pre-processed set of key-value pairs, wherein the pre-processed set of key-value pairs includes one or more index values indicating a location of the substring of the first domain name that is at least an approximate match to the brand name as a value of a first pre-processed key-value pair of the pre-processed set of key-value pairs, as the substring of the input domain name.

5. The method of claim 1 , further comprising: obtaining the brand name.

6. The method of claim 1 , further comprising: obtaining a pre-processed set of key-value pairs that includes the input domain name as a value of a first pre-processed key-value pair, and the brand name as a value of a second pre-processed key-value pair.

7. The method of claim 1 , wherein the obtaining includes analyzing a plurality of word vectors closest to a word vector for the term of interest.

8. The method of claim 1 , wherein the determining the duster of least-distant language models includes analyzing a plurality of language models within a predetermined threshold distance from the language model for the term of interest.

9. A system, comprising:

a processor;

a non-transitory computer-readable medium; and

stored instructions translatable by the processor for:

determining, in pre-processing, terms that are relevant to a brand, the determining including:

analyzing words used in domain names registered to the brand;

for each term of interest, obtaining a language model and language models that are most similar to the term of interest, the obtaining including:

computing a distance between the language model for the term of interest and each of a plurality of language models associated with a set of words; and

determining a cluster of least-distant language models from the plurality of language models based on the distance between the language model for the term of interest and a respective language model of the plurality of language models associated with the set of words, the cluster of least-distant language models associated with neighbors of the term of interest;

computing a score indicating a relevance of the term of interest to the brand, the computing including determining a number of the neighbors appearing in the domain names registered to the brand;

determining, in processing an input domain name, character counts and locations of the characters in the input domain name;

for each term indicated by the character counts and the locations of the characters in the input domain name, retrieving a relevance score computed in the pre-processing;

determining a final score for the input domain name based at least on the relevance score of each term in the input domain name; and

providing the final score to a classifier for classifying the input domain name in relevance to the brand.

10. The system of claim 9 , wherein the processing the input domain name includes obtaining a substring of the input domain name that includes:

an exact match to the brand name, or

an approximate match that matches the brand name within a predetermined threshold measure of distance from the brand name.

11. The system of claim 10 , wherein the obtaining includes:

obtaining a pre-processed set of key-value pairs that includes the input domain name as a value of a first pre-processed key-value pair, and the brand name as a value of a second pre-processed key-value pair of the pre-processed set of key-value pairs.

12. The system of claim 10 , wherein the obtaining includes:

obtaining a pre-processed set of key-value pairs that includes a substring of the input domain name that is at least an approximate match to the brand name as a value of a first pre-processed key-value pair of the pre-processed set of key-value pairs.

13. The system of claim 12 , wherein the pre-processed set of key-value pairs includes one or more index values indicating a location of the substring of the input domain name that is at least an approximate match to the brand name.

14. The system of claim 12 , wherein the pre-processed set of key-value pairs includes one or more index values indicating a starting location and an ending location of the substring of the input domain name that is at least an approximate match to the brand name.

15. The system of claim 9 , further comprising:

obtaining the brand name.

16. The system of claim 9 , wherein the obtaining includes analyzing a plurality of word vectors closest to a word vector for the term of interest.

17. The system of claim 9 , wherein the determining the cluster of least-distant language models includes analyzing a plurality of language models within a predetermined threshold distance from the language model for the term of interest.

18. A computer program product having a non-transitory computer-readable medium storing instructions translatable by the processor for:

determining, in pre-processing, terms that are relevant to a brand, the determining including:

analyzing words used in domain names registered to the brand;

for each term of interest, obtaining a language model and language models that are most similar to the term of interest, the obtaining including:

computing a distance between the language model for the term of interest and each of a plurality of language models associated with a set of words; and

determining a cluster of least-distant language models from the plurality of language models based on the distance between the language model for the term of interest and a respective language model of the plurality of language models associated with the set of words, the cluster of least-distant language models associated with neighbors of the term of interest;

computing a score indicating a relevance of the term of interest to the brand, the computing including determining a number of the neighbors appearing in the domain names registered to the brand;

determining, in processing an input domain name, character counts and locations of the characters in the input domain name;

for each term indicated by the character counts and the locations of the characters in the input domain name, retrieving a relevance score computed in the pre-processing;

determining a final score for the input domain name based at least on the relevance score of each term in the input domain name; and

providing the final score to a classifier for classifying the input domain name in relevance to the brand.

19. The computer program product of claim 18 , wherein the processing the input domain name includes obtaining a substring of the input domain name that is at least an approximate match to the brand name.

20. The computer program product of claim 19 , wherein the substring of the input domain name includes:

an exact match to the brand name, or

an approximate match that matches the brand name within a predetermined threshold measure of distance from the brand name.

Assignments (5)
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 8, 2025
From: PROOFPOINT, INC.
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 073889/0677 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Mar 21, 2024
From: GOLDMAN SACHS BANK USA, AS AGENT
To: PROOFPOINT, INC.
Reel/Frame 066865/0648 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 31, 2021
From: PROOFPOINT, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 057389/0615 →
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 31, 2021
From: PROOFPOINT, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 057389/0642 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2017
From: HUFFNER, SHARON; MESDAQ, ALI
To: PROOFPOINT, INC.
Reel/Frame 043424/0700 →