IP Library Granted Patent US 8,627,462
Granted Patent B2
US 8,627,462 · App. 12/776,450 · Granted Jan 7, 2014

Token processing

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,627,462
App. No.
12/776,450
Granted
Jan 7, 2014
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for mapping security processing rules into a data structure that facilitates a more efficient processing of the security processing rules. In one aspect, a method includes receiving security processing rules, each of the security processing rules defining one or more security checks and security operations corresponding to the security checks and that are to be performed when the security checks occur; and generating from the security processing rules a mapping of security checks to security operations, the mapping including a security check entry for each security check that is defined in one or more of the security processing rules, and each security check entry being mapped to one or more security operations that the security processing rules define as corresponding to the security check.

Claims (30)

1. A computer-implemented method performed by data processing apparatus, the method comprising:

determining that a particular one of a plurality of tokens is included in one or more packets of network traffic;

identifying a particular set of security checks corresponding to the particular token, the set of security checks including one or more security checks of a plurality of security checks, wherein each security check includes one or more security processes of a plurality of security processes, and each security process includes one or more security operations of a plurality of security operations, and wherein each security process corresponds to an alert condition satisfied based on results of the respective set of security operations;

using a data structure mapping of security checks to security operations to identify for each security check in the particular set of security checks a respective set of processes, and for each security process in the set of security processes a respective set of security operations to be applied to data of the one or more packets, wherein a particular security operation is reused between at least two, but less than all, of the plurality of security checks, and the data structure includes a check data structure including entries for each of the security checks in the plurality of security checks, each security check entry referencing entries of a security process data structure corresponding to the set of security processes included in the respective security check, the security process data structure including, for each security process, a reference to entries of a security operation data structure corresponding to the set of security operations of the respective security process.

2. The computer-implemented method of claim 1 , wherein each of the entries of the operation data structure includes an opcode and an operand identifying a security operation.

3. The computer-implemented method of claim 1 ,

further comprising applying at least one of the security operations mapped to one or more of the set of security checks to data of the one or more packets.

4. The computer-implemented method of claim 3 wherein applying the first security check to the data includes terminating the first security check in response to determining that a security operation of the one or more security operations did not return a true value.

5. The computer-implemented method of claim 4 wherein applying the first security check to the data includes determining not to process a second security check associated with the security operation.

6. The method of claim 1 , wherein each reference to records of the security process data structure within records of the check data structure includes an offset value and a count value.

7. The method of claim 1 , wherein each reference to records of the security operation data structure within records of the security process data structure includes an offset value and a count value.

8. A non-transitory computer storage medium encoded with a computer program, the program comprising instructions that when executed by data processing apparatus cause the data processing apparatus to perform operations comprising:

determining that a particular one of a plurality of tokens is included in one or more packets of network traffic;

identifying a particular set of security checks corresponding to the particular token, the set of security checks including one or more security checks of a plurality of security checks, wherein each security check includes one or more security processes of a plurality of security processes, and each security process includes one or more security operations of a plurality of security operations, and wherein each security process corresponds to an alert condition satisfied based on results of the respective set of security operations;

using a data structure mapping of security checks to security operations to identify for each security check in the particular set of security checks a respective set of processes, and for each security process in the set of security processes a respective set of security operations to be applied to data of the one or more packets, wherein a particular security operation is reused between at least two, but less than all, of the plurality of security checks,

the data structure includes a check data structure including entries for each of the security checks in the plurality of security checks, each security check entry referencing entries of a security process data structure corresponding to the set of security processes

included in the respective security check, the security process data structure including, for each security process, a reference to entries of a security operation data structure corresponding to the set of security operations of the respective security process.

9. The non-transitory computer storage medium of claim 8 , wherein each of the entries of the operation data structure includes an opcode and an operand identifying a security operation.

10. The non-transitory computer storage medium of claim 8 , further comprising applying at least one of the security operations mapped to one or more of the set of security checks to data of the one or more packets.

11. The non-transitory computer storage medium of claim 10 wherein applying the first security check to the data includes terminating the first security check in response to determining that a security operation of the one or more security operations did not return a true value.

12. The non-transitory computer storage medium of claim 11 wherein applying the first security check to the data includes determining not to process a second security check associated with the security operation.

13. The non-transitory computer storage medium of claim 8 , wherein each reference to records of the security process data structure within records of the check data structure includes an offset value and a count value.

14. The non-transitory computer storage medium of claim 8 , wherein each reference to records of the security operation data structure within records of the security process data structure includes an offset value and a count value.

15. A system comprising:

one or more computers, and;

a computer-readable medium coupled to the one or more computers having instructions stored thereon which, when executed by the one or more computers, cause the one or more computers to perform operations comprising:

determining that a particular one of a plurality of tokens is included in one or more packets of network traffic;

identifying a particular set of security checks corresponding to the particular token, the set of security checks including one or more security checks of a plurality of security checks, wherein each security check includes one or more security processes of a plurality of security processes, and each security process includes one or more security operations of a plurality of security operations, and wherein each security process corresponds to an alert condition satisfied based on results of the respective set of security operations;

using a data structure mapping of security checks to security operations to identify for each security check in the particular set of security checks a respective set of processes, and for each security process in the set of security processes a respective set of security operations to be applied to data of the one or more packets, wherein a particular security operation is reused between at least two, but less than all, of the plurality of security checks, and

the data structure includes a check data structure including entries for each of the security checks in the plurality of security checks, each security check entry referencing entries of a security process data structure corresponding to the set of security processes included in the respective security check, the security process data structure including, for each security process, a reference to entries of a security operation data structure corresponding to the set of security operations of the respective security process.

Assignments (10)
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 →
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: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
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 May 18, 2010
From: NEDBAL, MANUEL; VISWAMBHARAN, GIRISH; KRISHNAMURTHY, VISHWAS
To: MCAFEE, INC.
Reel/Frame 024400/0272 →