IP Library Granted Patent US 9,813,446
Granted Patent B2
US 9,813,446 · App. 15/256,612 · Granted Nov 7, 2017

Systems and methods for matching and scoring sameness

Inventors: Christopher Everett Bailey (Langley, CA); Randy Lukashuk (Errington, CA); Gary Wayne Richardson (Port Moody, CA)
Assignee: NuData Security Inc.
H04L63/1466G06F7/08G06F17/3033G06F17/3053G06F17/30598G06F17/30867G06F21/602H04L41/20H04L43/12H04L43/16H04L63/1416H04L63/1425H04L67/02H04L67/303
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 9,813,446
App. No.
15/256,612
Granted
Nov 7, 2017
Kind
B2
Abstract

Systems and methods for matching and scoring sameness. In some embodiments, a computer-implemented method is provided, comprising acts of: identifying a plurality of first-degree anchor values from the first digital interaction, wherein the plurality of first-degree anchor values comprise first-degree anchor values X and Y; accessing a profile of the first-degree anchor value X, wherein: the profile of the first-degree anchor value X comprises a plurality of sets of second-degree anchor values; and each set of the plurality of sets of second-degree anchor values corresponds to a respective anchor type and comprises one or more second-degree anchor values of that anchor type; determining how closely the first-degree anchor values X and Y are associated; and generating an association score indicative of how closely the plurality of first-degree anchors are associated, based at least in part on how closely the first-degree anchor values X and Y are associated.

Claims (84)

1. A computer-implemented method for analyzing a first web site or mobile device app interaction, the method comprising acts of:

identifying a plurality of first-degree anchor values from the first web site or mobile device app interaction, wherein the plurality of first-degree anchor values comprise a first-degree network address X and a first degree anchor value Y, wherein the first-degree anchor value Y is of an anchor type selected from a group consisting of: account identifier, email address, phone number, credit card number, location, device characteristic, and device identifier;

accessing a profile of the first-degree network address X, wherein:

the profile of the first-degree network address X comprises a plurality of sets of second-degree anchor values; and

the plurality of sets of second-degree anchor values comprises a set of one or more second-degree anchor values of the same anchor type as the first-degree anchor value Y;

generating an association score indicative of an association among the plurality of first-degree anchor values identified from the first web site or mobile device app interaction, based at least in part on an association between the first-degree network address X and the first-degree anchor value Y, wherein the association between the first-degree network address X and the first-degree anchor value Y is analyzed at least in part by:

determining whether the first-degree anchor value Y appears as a second-degree anchor value in the set of second-degree anchor values in the profile of the first-degree network address X; and

using information stored in the profile of the first-degree network address X to determine how frequently the first-degree anchor value Y was previously observed from a same digital interaction as the first-degree network address X;

determining, based on the association score, whether to perform additional analysis; and

in response to determining that additional analysis is to be performed:

collecting additional data from the web site or mobile device app interaction; and

displaying, via a backend user interface, a risk assessment report to an operator of a web site or mobile device app via which the web site or mobile device app interaction is conducted, wherein the risk assessment report is based on a result of analyzing the additional data collected from the web site or mobile device app interaction.

2. The computer-implemented method of claim 1 , further comprising an act of:

accessing a profile of the first-degree anchor value Y, wherein:

the profile of the first-degree anchor value Y comprises a plurality of sets of second-degree anchor values;

the plurality of sets of second-degree anchor values comprises a set of one or more second-degree network addresses; and

analyzing the association between the first-degree network address X and the first-degree anchor value Y further comprises:

determining whether the first-degree network address X appears as a second-degree network address in the set of second-degree network addresses in the profile of the first-degree anchor value Y; and

using information stored in the profile of the first-degree anchor value Y to determine how frequently the first-degree network address X was previously observed from a same digital interaction as the first-degree anchor value Y.

3. The computer-implemented method of claim 1 , wherein the association score indicative of the association among the plurality of first-degree anchor values is generated based on an association between every pair of first-degree anchor values of the plurality of first-degree anchor values.

4. The computer-implemented method of claim 1 , wherein, for at least one set of second-degree anchor values in the profile of the first-degree network address X:

the profile of the first-degree network address X stores a counter C[Z] for each second-degree anchor value Z in the at least one set of second-degree anchor values, the counter C[Z] being indicative of a number of times the second-degree anchor Z was observed from a same digital interaction as the first-degree network address X over a selected interval of time.

5. The computer-implemented method of claim 4 , wherein:

the first-degree anchor value Y appears as a second-degree anchor value in the at least one set of second-degree anchor values in the profile of the first-degree network address X; and

determining how frequently the first-degree anchor Y was previously observed from a same digital interaction as the first-degree network address X comprises comparing the counter C[Y] against a maximum of the counters C[Z] over all second-degree anchor values Z in the at least one set of second-degree anchor values.

6. The computer-implemented method of claim 4 , wherein the counter C[Z] comprises a first counter C 1 [Z] and the selected interval of time comprises a first interval of time, and wherein:

the profile of the first-degree network address X further stores a second counter C 2 [Z] for each second-degree anchor value Z in the at least one set of second-degree anchor values, the second counter C 2 [Z] being indicative of a number of times the second-degree anchor Z was observed from a same digital interaction as the first-degree network address X over a second interval of time, the second interval of time being different from the first interval of time.

7. The computer-implemented method of claim 6 , wherein the first and second intervals of time are non-overlapping intervals of a same length.

8. A system comprising at least one processor and at least one computer-readable storage medium having stored thereon instructions which, when executed, program the at least one processor to perform a method for analyzing a first web site or mobile device app interaction, the method comprising acts of:

identifying a plurality of first-degree anchor values from the first web site or mobile device app interaction, wherein the plurality of first-degree anchor values comprise a first-degree network address X and a first-degree anchor value Y, wherein the first-degree anchor value Y is of an anchor type selected from a group consisting of: account identifier, email address, phone number, credit card number, location, device characteristic, and device identifier;

accessing a profile of the first-degree network address X, wherein:

the profile of the first-degree network address X comprises a plurality of sets of second-degree anchor values; and

the plurality of sets of second-degree anchor values comprises a set of one or more second-degree anchor values of the same anchor type as the first-degree anchor value Y;

generating an association score indicative of an association among the plurality of first-degree anchor values identified from the first web site or mobile device app interaction, based at least in part on an association between the first-degree network address X and the first-degree anchor value Y, wherein the association between the first-degree network address X and the first-degree anchor value Y is analyzed at least in part by:

determining whether the first-degree anchor value Y appears as a second-degree anchor value in the set of second-degree anchor values in the profile of the first-degree network address X; and

using information stored in the profile of the first-degree network address X to determine how frequently the first-degree anchor Y was previously observed from a same digital interaction as the first-degree network address X;

determining, based on the association score, whether to perform additional analysis; and

in response to determining that additional analysis is to be performed:

collecting additional data from the web site or mobile device app interaction; and

displaying, via a backend user interface, a risk assessment report to an operator of a web site or mobile device app via which the web site or mobile device app interaction is conducted, wherein the risk assessment report is based on a result of analyzing the additional data collected from the web site or mobile device app interaction.

9. The system of claim 8 , wherein the method further comprises an act of:

accessing a profile of the first-degree anchor value Y, wherein:

the profile of the first-degree anchor value Y comprises a plurality of sets of second-degree anchor values;

the plurality of sets of second-degree anchor values comprises a set of one or more second-degree network addresses; and

analyzing the association between the first-degree network address X and the first-degree anchor value Y further comprises:

determining whether the first-degree network address X appears as a second-degree network address in the set of second-degree network addresses in the profile of the first-degree anchor value Y; and

using information stored in the profile of the first-degree anchor value Y to determine how frequently the first-degree network address X was previously observed from a same digital interaction as the first-degree anchor value Y.

10. The system of claim 8 , wherein the association score indicative of the association among the plurality of first-degree anchor values is generated based on an association between every pair of first-degree anchor values of the plurality of first-degree anchor values.

11. The system of claim 8 , wherein, for at least one set of second-degree anchor values in the profile of the first-degree network address X:

the profile of the first-degree network address X stores a counter C[Z] for each second-degree anchor value Z in the at least one set of second-degree anchor values, the counter C[Z] being indicative of a number of times the second-degree anchor Z was observed from a same digital interaction as the first-degree network address X over a selected interval of time.

12. The system of claim 11 , wherein:

the first-degree anchor value Y appears as a second-degree anchor value in the at least one set of second-degree anchor values in the profile of the first-degree network address X; and

determining how frequently the first-degree anchor Y was previously observed from a same digital interaction as the first-degree network address X comprises comparing the counter C[Y] against a maximum of the counters C[Z] over all second-degree anchor values Z in the at least one set of second-degree anchor values.

13. The system of claim 11 , wherein the counter C[Z] comprises a first counter C 1 [Z] and the selected interval of time comprises a first interval of time, and wherein:

the profile of the first-degree network address X further stores a second counter C 2 [Z] for each second-degree anchor value Z in the at least one set of second-degree anchor values, the second counter C 2 [Z] being indicative of a number of times the second-degree anchor Z was observed from a same digital interaction as the first-degree network address X over a second interval of time, the second interval of time being different from the first interval of time.

14. The system of claim 13 , wherein the first and second intervals of time are non-overlapping intervals of a same length.

15. At least one non-transitory computer-readable medium having stored thereon instructions which, when executed, program at least one processor to perform a method for analyzing a first web site or mobile device app interaction, the method comprising acts of:

identifying a plurality of first-degree anchor values from the first web site or mobile device app interaction, wherein the plurality of first-degree anchor values comprise a first-degree network address X and a first-degree anchor value Y, wherein the first-degree anchor value Y is of an anchor type selected from a group consisting of: account identifier, email address, phone number, credit card number, location, device characteristic, and device identifier;

accessing a profile of the first-degree network address X, wherein:

the profile of the first-degree network address X comprises a plurality of sets of second-degree anchor values; and

the plurality of sets of second-degree anchor values comprises a set of one or more second-degree anchor values of the same anchor type as the first-degree anchor value Y;

generating an association score indicative of an association among the plurality of first-degree anchor values identified from the first web site or mobile device app interaction, based at least in part on an association between the first-degree network address X and the first-degree anchor value Y, wherein the association between the first-degree network address X and the first-degree anchor value Y is analyzed at least in part by:

determining whether the first-degree anchor value Y appears as a second-degree anchor value in the set of second-degree anchor values in the profile of the first-degree network address X; and

using information stored in the profile of the first-degree network address X to determine how frequently the first-degree anchor Y was previously observed from a same digital interaction as the first-degree network address X;

determining, based on the association score, whether to perform additional analysis; and

in response to determining that additional analysis is to be performed:

collecting additional data from the web site or mobile device app interaction; and

displaying, via a backend user interface, a risk assessment report to an operator of a web site or mobile device app via which the web site or mobile device app interaction is conducted, wherein the risk assessment report is based on a result of analyzing the additional data collected from the web site or mobile device app interaction.

16. The at least one non-transitory computer-readable medium of claim 15 , wherein the method further comprises an act of:

accessing a profile of the first-degree anchor value Y, wherein:

the profile of the first-degree anchor value Y comprises a plurality of sets of second-degree anchor values;

the plurality of sets of second-degree anchor values comprises a set of one or more second-degree network addresses; and

analyzing the association between the first-degree network address X and the first-degree anchor value Y further comprises:

determining whether the first-degree network address X appears as a second-degree network address in the set of second-degree network addresses in the profile of the first-degree anchor value Y; and

using information stored in the profile of the first-degree anchor value Y to determine how frequently the first-degree network address X was previously observed from a same digital interaction as the first-degree anchor value Y.

17. The at least one non-transitory computer-readable medium of claim 15 , wherein the association score indicative of the association among the plurality of first-degree anchor values is generated based on an association between every pair of first-degree anchor values of the plurality of first-degree anchor values.

18. The at least one non-transitory computer-readable medium of claim 15 , wherein, for at least one set of second-degree anchor values in the profile of the first-degree network address X:

the profile of the first-degree network address X stores a counter C[Z] for each second-degree anchor value Z in the at least one set of second-degree anchor values, the counter C[Z] being indicative of a number of times the second-degree anchor Z was observed from a same digital interaction as the first-degree network address X over a selected interval of time.

19. The at least one non-transitory computer-readable medium of claim 18 , wherein:

the first-degree anchor value Y appears as a second-degree anchor value in the at least one set of second-degree anchor values in the profile of the first-degree network address X; and

determining how frequently the first-degree anchor Y was previously observed from a same digital interaction as the first-degree network address X comprises comparing the counter C[Y] against a maximum of the counters C[Z] over all second-degree anchor values Z in the at least one set of second-degree anchor values.

20. The at least one non-transitory computer-readable medium of claim 18 , wherein the counter C[Z] comprises a first counter C 1 [Z] and the selected interval of time comprises a first interval of time, and wherein:

the profile of the first-degree network address X further stores a second counter C 2 [Z] for each second-degree anchor value Z in the at least one set of second-degree anchor values, the second counter C 2 [Z] being indicative of a number of times the second-degree anchor Z was observed from a same digital interaction as the first-degree network address X over a second interval of time, the second interval of time being different from the first interval of time.

21. The at least one non-transitory computer-readable medium of claim 20 , wherein the first and second intervals of time are non-overlapping intervals of a same length.

Assignments (2)
CERTIFICATE OF AMALGAMATION Recorded Apr 23, 2018
From: NUDATA SECURITY INC.
To: MASTERCARD TECHNOLOGIES CANADA ULC
Reel/Frame 045997/0492 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 7, 2016
From: BAILEY, CHRISTOPHER EVERETT; LUKASHUK, RANDY; RICHARDSON, GARY WAYNE
To: NUDATA SECURITY INC.
Reel/Frame 040594/0526 →
Continuity (2)
Provisional Application 62214969 · Sep 5, 2015
Related Publication 20170070524A1 · Mar 9, 2017