IP Library Granted Patent US 8,132,250
Granted Patent B2
US 8,132,250 · App. 11/173,941 · Granted Mar 6, 2012

Message profiling systems and methods

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 8,132,250
App. No.
11/173,941
Granted
Mar 6, 2012
Kind
B2
Abstract

Methods and systems for operation upon one or more data processors that classify communications from messaging entities. A method can include receiving a communication that was sent from a messaging entity. A plurality of message classification techniques is used to classify the communication. Each message classification technique is associated with a confidence value which is used in generating a message classification output from the message classification technique. The message classification outputs are combined in order to generate a message profile score. The message profile score is used in deciding what action is to be taken with respect to the communication associated with the messaging entity.

Claims (266)

1. A computer-implemented method for operation upon one or more data processors to classify communications from messaging entities, comprising:

receiving a communication from a messaging entity via a communication network interface;

storing the communication in computer memory;

using a plurality of message classification techniques executed by a data processor to classify the stored communication; and

combining the outputs of the message classification techniques using the data processor to generate a message profile score;

wherein the message profile score is used by a communication filter in deciding what action is to be taken with respect to the communication associated with the messaging entity;

wherein a tuner is used to adjust confidence values associated with the message classification outputs, the tuner operating upon the data processor using a genetic algorithm including a fitness function modeling the fitness of candidate solutions to a problem domain associated with the message classification techniques, the fitness function comprising the equation:

Fitness

=

S

CAT

1

_MISTAKES

i

-

T

N

CAT

1

+

C

×

S

CAT

2

_MIKSTAKES

i

-

T

+

1

N

CAT

2

wherein N CAT1 comprises number of message vectors from the overall data set that belong to a first category, N CAT2 is number of message vectors from the overall data set that belong to a second category, C comprises a constant multiplier for misclassified messages from the second category, S CAT1 — MIKSTAKESi comprises a message profile score of message vector i from the first message category that has been misclassified to belong in the other category, S CAT2 — MIKSTAKESi comprises a message profile score of message vector i from the second message category that has been misclassified to belong in the other category, and T comprises a message profile numeric threshold above which a message is considered to belong to the first category.

2. The computer-implemented method of claim 1 , wherein the communication is a e-mail message or VoIP communication or Instant Messaging communication.

3. The computer-implemented method of claim 1 , wherein the communication is a legitimate e-mail message or spam or a virus or a communication that violates corporate policy.

4. The computer-implemented method of claim 1 , wherein the message classification techniques include at least two techniques selected from the group: a Reverse DNS (RDNS) classification technique, Real-time Black-hole Lists (RBLs) classification technique, reputation server classification technique, signature-based classification technique, fingerprinting-based classification technique, message header analysis classification technique, sender authentication set of classification techniques, Bayesian filtering statistical classification technique, clustering classification technique, and content filtering classification technique.

5. The computer-implemented method of claim 1 , wherein each message classification technique is associated with a confidence value which is used in generating a message classification output from the message classification technique.

6. The computer-implemented method of claim 5 , wherein a filter value from each of the classification techniques is multiplied by its associated confidence value in order to generate the message classification output.

7. The computer-implemented method of claim 6 , further comprising:

iterating through the classification techniques and allowing each technique to attempt to classify the message;

wherein the output of each classification is a numeric value, textual value, or categorical value.

8. The computer-implemented method of claim 7 , wherein the message profile score is determined by:

Score

=

i

=

1

N

SV

i

×

C

i

wherein SV i is a confidence value associated with classification technique i, and C i is a classification technique output produced by classification technique i.

9. The computer implemented method of claim 7 , wherein the message profile score is determined by:

Score

=

i

=

1

N

(

SV

1

i

×

C

i

+

SV

2

i

×

C

i

2

)

wherein SV 1i , and SV 2i are confidence values associated with classification technique i, and Ci is a classification technique output produced by classification technique i.

10. The computer-implemented method of claim 1 , wherein at least one of the message classification techniques includes a reputation scoring technique; wherein the reputation scoring technique assigns a reputation probability to a messaging entity; wherein the reputation indicative probability indicates reputability of a messaging entity based upon extent to which the identified one or more communication's characteristics exhibit or conform to one or more reputation-related criteria.

11. The computer-implemented method of claim 1 , wherein the communication was sent over a network.

12. A system for operation upon one or more data processors to classify communications from messaging entities, comprising:

a plurality of message classification engines stored in one or more computer readable media and causing one or more data processors to classify a communication received from a messaging entity;

a message profiling engine stored in any of the one or more computer readable media and causing one or more of the data processors to combine the message classification outputs from the classification engines, thereby generating a message profile score;

wherein the message profile score is used by message filtering systems in deciding what action is to be taken with respect to the communication associated with the messaging entity;

wherein a tuner is used to adjust confidence values associated with the message classification outputs, the tuner using a genetic algorithm including a fitness function modeling the fitness of candidate vector solutions for the confidence values, the fitness function expressing cost associated with the mistakes that a candidate vector solution made in attempting to correctly classify messages in a set of pre-classified data.

13. The system of claim 12 , wherein the communication is a e-mail message or VoIP communication or Instant Messaging communication.

14. The system of claim 12 , wherein the communication is a legitimate message or unwanted communication or a communication violative of a pre-selected policy.

15. The system of claim 14 , wherein an unwanted communication includes a spam or virus communication;

wherein the pre-selected policy includes a corporate communication policy, a messaging policy, a legislation or regulatory policy, or an international communication policy.

16. The system of claim 12 , wherein the message classification engines include at least two techniques selected from the group: Reverse DNS (RDNS) classification technique, Real-time Black-hole Lists (RBLs) classification technique, reputation server classification technique, signature-based classification technique, fingerprinting-based classification technique, message header analysis classification technique, sender authentication set of classification techniques, Bayesian filtering statistical classification technique, clustering classification technique, and content filtering classification technique.

17. The system of claim 12 , wherein each message classification engine is associated with a confidence value which is used in generating a message classification output from the message classification engine.

18. The system of claim 17 , wherein a filter value from each of the classification engines is multiplied by its associated confidence value in order to generate the message classification output.

19. The system of claim 18 , wherein the output of each classification engine is a numeric value, textual value, or categorical value.

20. The system of claim 12 , wherein the fitness function comprises:

Fitness

=

S

CAT

1

_MISTAKES

i

-

T

N

CAT

1

+

C

×

S

CAT

2

_MIKSTAKES

i

-

T

+

1

N

CAT

2

wherein N CAT1 is number of message vectors from the overall data set that belong to a first category;

wherein N CAT2 is number of message vectors from the overall data set that belong to a second category;

wherein C is a constant multiplier for misclassified messages from the second category;

wherein S CAT1 — MIKSTAKESi , is a message profiler score of message vector i from the first message category that has been misclassified to belong in the other category;

wherein S CAT2 — MIKSTAKESi , is a message profiler score of message vector i from the second message category that has been misclassified to belong in the other category; and

wherein T is a message profiler numeric threshold above which a message is considered to belong to the first category.

21. The system of claim 12 , wherein the system is configured to operate with adaptive message blocking and whitelisting.

22. The system of claim 12 , wherein at least one of the message classification engines includes a reputation scoring technique; wherein the reputation scoring technique assigns a reputation probability to a messaging entity; wherein the reputation indicative probability indicates reputability of a messaging entity based upon extent to which the identified one or more communication's characteristics exhibit or conform to one or more reputation-related criteria.

23. The system of claim 12 , wherein the communication was sent over a network.

24. A system for operation upon one or more data processors to classify communications from messaging entities, comprising:

means for receiving a communication that was sent over a network from a messaging entity;

means for using a plurality of message classification techniques to classify the communication;

wherein each message classification technique is associated with a confidence value which is used in generating a message classification output for the message classification technique;

means for combining the message classification outputs in order to generate a message profile score;

wherein the message profile score is used in deciding what action is to be taken with respect to the communication associated with the messaging entity; and

wherein a tuner is used to adjust confidence values associated with the message classification outputs, the tuner using a genetic algorithm including a fitness function modeling the fitness of candidate vector solutions for the confidence values, the fitness function expressing cost associated with the mistakes that a candidate vector solution made in attempting to correctly classify messages in a set of pre-classified data.

25. An article of manufacture comprising instructions stored in one or more computer readable storage media and executable by a processing system, and upon such execution causing the processing system to perform operations comprising:

receiving a communication that was sent over a network from a messaging entity;

using a plurality of message classification techniques to classify the communication;

combining the message classification outputs from the classification techniques in order to generate a message profile score;

wherein the message profile score is used in deciding what action is to be taken with respect to the communication associated with the messaging entity;

wherein a tuner is used to adjust confidence values associated with the message classification outputs, the tuner using a genetic algorithm including a fitness function modeling the fitness of candidate vector solutions for the confidence values, the fitness function expressing cost associated with the mistakes that a candidate vector solution made in attempting to correctly classify messages in a set of pre-classified data.

26. The article of claim 25 , wherein the digital signal includes packetized data that is transmitted through the network.

27. A computer-implemented method for operation upon one or more data processors for tuning message classification parameters for use by a plurality of message classification techniques, comprising:

receiving a plurality of input data via a communication network interface that is representative of a plurality of communications;

storing the data in computer memory;

using a tuner program operating on the one or more data processors to tune the message classification parameters associated with the message classification techniques;

wherein a communication is received via the communications interface from a messaging entity;

wherein the tuned message classification parameters are used by the plurality of message classification techniques executed by the one or more data processors to classify the received communication;

wherein message classification outputs from the plurality of message classification techniques executed by the one or more data processors are combined by the one or more data processors in order to generate a message profile score;

wherein the message profile score is used by a messaging filter in deciding what action is to be taken with respect to the communication associated with the messaging entity;

wherein the tuner program operating on the one or more data processors is used to adjust confidence values associated with the message classification outputs, the tuner program using a genetic algorithm including a fitness function modeling the fitness of candidate vector solutions for the confidence values, the fitness function expressing cost associated with the mistakes that a candidate vector solution made in attempting to correctly classify messages in a set of pre-classified data.

28. The computer-implemented method of claim 27 , wherein the message classification parameters include confidence values.

29. The computer-implemented method of claim 28 , wherein the tuner program uses a heuristic approach in order to tune the confidence values.

30. The computer-implemented method of claim 27 , wherein the fitness function is:

Fitness

=

S

CAT

1

_MISTAKES

i

-

T

N

CAT

1

+

C

×

S

CAT

2

_MIKSTAKES

i

-

T

+

1

N

CAT

2

wherein N CAT1 is number of message vectors from the overall data set that belong to a first category;

wherein N CAT2 is number of message vectors from the overall data set that belong to a second category;

wherein C is a constant multiplier for misclassified messages from the second category;

wherein S CAT1 — MIKSTAKESi , is a message profiler score of message vector i from the first message category that has been misclassified to belong in the other category;

wherein S CAT2 — MIKSTAKESi , is a message profiler score of message vector i from the second message category that has been misclassified to belong in the other category;

wherein T is a message profiler numeric threshold above which a message is considered to belong to the first category.

31. The computer-implemented method of claim 27 , wherein the method is configured to operate with adaptive message blocking and whitelisting.

32. The computer-implemented method of claim 27 , wherein the received communication is a e-mail message or VoIP communication or Instant Messaging communication.

33. The computer-implemented method of claim 27 , wherein the received communication is a legitimate e-mail message or spam or a virus or a communication that violates corporate policy.

34. The computer-implemented method of claim 27 , wherein the message classification techniques include at least two techniques selected from the group: a Reverse DNS (RDNS) classification technique, Real-time Black-hole Lists (RBLs) classification technique, reputation server classification technique, signature-based classification technique, fingerprinting-based classification technique, message header analysis classification technique, sender authentication set of classification techniques, Bayesian filtering statistical classification technique, clustering classification technique, and content filtering classification technique.

35. The computer-implemented method of claim 27 , wherein the message classification parameters include confidence values;

wherein a message classification technique is associated with a confidence value which is used in generating a message classification output from the message classification technique.

36. The computer-implemented method of claim 35 , wherein a filter value from each of the classification techniques is multiplied by its associated confidence value in order to generate a message classification output.

37. The computer-implemented method of claim 36 , further comprising:

iterating through the classification techniques and allowing each technique to attempt to classify the message;

wherein the output of each classification is a numeric value, textual value, or categorical value.

38. The computer-implemented method of claim 27 , wherein at least one of the message classification techniques includes a reputation scoring technique; wherein the reputation scoring technique assigns a reputation probability to a messaging entity; wherein the reputation indicative probability indicates reputability of a messaging entity based upon extent to which the identified one or more communication's characteristics exhibit or conform to one or more reputation-related criteria.

39. The computer-implemented method of claim 27 , wherein the communication was sent over a network.

40. A system for operation upon one or more data processors for tuning message classification parameters for use by one or more message classification techniques, comprising:

a communication network interface to receive a plurality of input data that is or is representative of a plurality of communications;

storing the data in computer memory;

a tuner program operating on the one or more data processors to tune the message classification parameters associated with the message classification techniques;

wherein a communication is received from a messaging entity via a communications interface;

wherein the tuned message classification parameters are used by the plurality of message classification techniques executed by the one or more data processors to classify the communication;

wherein message classification outputs from the plurality of message classification techniques executed by the one or more data processors are combined in order to generate a message profile score;

wherein the message profile score is used by a communications filter in deciding what action is to be taken with respect to the communication associated with the messaging entity;

wherein the tuner program operating on the one or more data processors is used to adjust confidence values associated with the message classification outputs, the tuner program using a genetic algorithm including a fitness function modeling the fitness of candidate vector solutions for the confidence values, the fitness function expressing cost associated with the mistakes that a candidate vector solution made in attempting to correctly classify messages in a set of pre-classified data.

Assignments (15)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 23, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 060792/0307 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY NUMBERS PREVIOUSLY RECORDED AT REEL: 021523 FRAME: 0713. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF PATENT SECURITY AGREEMENT. Recorded Apr 11, 2022
From: CITICORP USA, INC.
To: SECURE COMPUTING CORPORATION
Reel/Frame 059690/0187 →
SECURITY INTEREST Recorded Mar 3, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 059354/0335 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2011
From: KRASSER, SVEN
To: MCAFEE, INC.
Reel/Frame 027347/0214 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2010
From: SECURE COMPUTING, LLC
To: MCAFEE, INC.
Reel/Frame 023915/0990 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2007
From: CIPHERTRUST, INC.
To: SECURE COMPUTING CORPORATION
Reel/Frame 018771/0221 →
SECURITY AGREEMENT Recorded Sep 14, 2006
From: SECURE COMPUTING CORPORATION; CIPHERTRUST, INC.
To: CITICORP USA, INC. AS ADMINISTRATIVE AGENT
Reel/Frame 018247/0359 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2005
From: JUDGE, PAUL; RAJAN, GURU; ALPEROVITCH, DMITRI; MOYER, MATT
To: CIPHERTRUST, INC.
Reel/Frame 016495/0772 →