IP Library Granted Patent US 11,586,714
Granted Patent B2
US 11,586,714 · App. 17/081,814 · Granted Feb 21, 2023

Verification request authentication machine

Inventors: Peter Alexander Foster (London, GB); Gabriel Dominguez Conde (London, GB); Yogesh Kumar Jitendra Patel (London, GB)
Assignee: Callsign Inc.
G06F21/31G06F21/316G06F21/6245G06N20/00G06F2221/2111
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 11,586,714
App. No.
17/081,814
Granted
Feb 21, 2023
Kind
B2
Abstract

A machine trains an artificial intelligence engine to facilitate authentication of a request to verify a user. The machine accesses a reference set of obfuscated geolocations generated from actual geolocations from which a device submitted requests to verify the user. The machine groups the obfuscated geolocations into geographical clusters based on a predetermined cluster radius value and calculates a corresponding representative geolocation for each geographical cluster and a corresponding variance distance from the representative geolocation for each geographical cluster. The machine then generates a reference location score based on the representative geolocations of the geographical clusters and on the variance distances of the geographical clusters. The machine trains an artificial intelligence engine to output that reference location score in response to the reference set being input thereto. The trained artificial intelligence engine may then be provided to one or more devices.

Claims (82)

1. A method comprising:

accessing, by one or more processors, reference locations from which a device sent requests to verify a user;

clustering, by the one or more processors, the reference locations into clusters of locations;

determining, by the one or more processors, a corresponding representative location for each cluster among the clusters of locations and a corresponding variance away from the representative location for each cluster among the clusters of locations;

generating, by the one or more processors, a reference score based on the representative locations of the clusters and on the variances of the clusters;

training, by the one or more processors, an artificial intelligence engine to output the reference score in response to input of the reference locations; and

providing, by the one or more processors, the trained artificial intelligence engine to a machine configured to obtain a location score by inputting a candidate location of the device into the trained artificial intelligence engine and to provide an authentication score based on the obtained location score.

2. The method of claim 1 , further comprising:

generating a corresponding weight for each cluster of locations among the clusters of locations based on a corresponding count of locations in that cluster; and wherein:

the generating of the reference score is based on the generated weights of the clusters of locations.

3. The method of claim 1 , wherein:

the determining of the corresponding representative location for each cluster among the clusters of locations includes calculating a corresponding mean location for each cluster of locations; and

the generating of the reference score is based on the mean locations of the clusters of locations and on the variances away from the mean locations of the clusters of locations.

4. The method of claim 1 , further comprising:

calculating a corresponding mean inter-cluster distance between successive locations in different clusters of locations among the clusters of locations; and wherein:

the generating of the reference score is based on the mean inter-cluster distances.

5. The method of claim 1 , further comprising:

calculating a corresponding variance of inter-cluster distances between successive locations in different clusters of locations among the clusters of locations; and wherein:

the generating of the reference score is based on the variances of inter-cluster distances.

6. The method of claim 1 , further comprising:

generating an executable instance of the artificial intelligent engine trained to output the reference score in response to input of the reference locations; and wherein:

the providing of the trained artificial intelligence engine includes providing the executable instance of the trained artificial intelligence engine.

7. A system comprising:

one or more processors; and

a memory storing instructions that, when executed by at least one processor among the one or more processors, cause the system to perform operations comprising:

accessing reference locations from which a device sent requests to verify a user;

clustering the reference locations into clusters of locations;

determining a corresponding representative location for each cluster among the clusters of locations and a corresponding variance away from the representative location for each cluster among the clusters of locations;

generating a reference score based on the representative locations of the clusters and on the variances of the clusters;

training an artificial intelligence engine to output the reference score in response to input of the reference locations; and

providing the trained artificial intelligence engine to a machine configured to obtain a location score by inputting a candidate location of the device into the trained artificial intelligence engine and to provide an authentication score based on the obtained location score.

8. The system of claim 7 , wherein the operations further comprise:

generating a corresponding weight for each cluster of locations among the clusters of locations based on a corresponding count of locations in that cluster; and wherein:

the generating of the reference score is based on the generated weights of the clusters of locations.

9. A non-transitory machine-readable storage medium comprising instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:

accessing reference locations from which a device sent requests to verify a user;

clustering the reference locations into clusters of locations;

determining a corresponding representative location for each cluster among the clusters of locations and a corresponding variance away from the representative location for each cluster among the clusters of locations;

generating a reference score based on the representative locations of the clusters and on the variances of the clusters;

training an artificial intelligence engine to output the reference score in response to input of the reference locations; and

providing the trained artificial intelligence engine to a machine configured to obtain a location score by inputting a candidate location of the device into the trained artificial intelligence engine and to provide an authentication score based on the obtained location score.

10. A method comprising:

accessing, by one or more processors, an artificial intelligence engine trained to output a reference score in response to input of reference locations from which a device sent requests to verify a user, the reference score being generated based on corresponding representative locations of clusters of the reference locations and on corresponding variances away from the representative locations of the clusters;

inputting, by the one or more processors, a candidate location of the device into the artificial intelligence engine trained to output the reference score in response to input of the reference locations, a location score being output by the trained artificial intelligence engine in response to the inputted candidate location of the device;

obtaining, by the one or more processors, an authentication score from a machine by providing the location score to the machine in a request to verify the user, the machine generating the authentication score based on the location score in response to the providing of the location score; and

causing, by one or more processors, presentation of an indication that the request to verify the user is authentic based on the obtained authentication score.

11. The method of claim 10 , wherein:

the artificial intelligence engine is trained to output the reference score based on weights that correspond to the clusters of locations, each weight among the weights being generated based on a corresponding count of locations in the corresponding cluster of locations; and

the artificial intelligence engine outputs the location score based on the generated weights that correspond to the clusters of locations.

12. The method of claim 10 , wherein:

the artificial intelligence engine is trained to output the reference score based on mean inter-cluster distances between the clusters of locations, each mean inter-cluster distance among the mean inter-cluster distances being calculated between successive locations in different clusters of locations among the clusters of locations; and

the artificial intelligence engine outputs the location score based on the mean inter-cluster distances.

13. The method of claim 10 , wherein:

the artificial intelligence engine is trained to output the reference score based on variances of inter-cluster distances between clusters of locations, each variance among the variances being calculated based on inter-cluster distances between successive locations in different clusters of locations among the clusters of locations; and

the artificial intelligence engine outputs the location score based on the variances of inter-cluster distances.

14. The method of claim 10 , wherein:

the artificial intelligence engine is trained to output the reference score based on comparisons of a maximum speed to speeds between pairs of successive locations, each speed among the speeds being calculated based on travel distances and travel times between a corresponding pair of locations; and

the artificial intelligence engine outputs the location score based on the comparisons of the maximum speed to the speeds between the pairs of successive locations.

15. A non-transitory machine-readable storage medium comprising instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:

accessing an artificial intelligence engine trained to output a reference score in response to input of reference locations from which a device sent requests to verify a user, the reference score being generated based on corresponding representative locations of clusters of the reference locations and on corresponding variances away from the representative locations of the clusters;

inputting a candidate location of the device into the artificial intelligence engine trained to output the reference score in response to input of the reference locations, a location score being output by the trained artificial intelligence engine in response to the inputted candidate location of the device;

obtaining an authentication score from a machine by providing the location score to the machine in a request to verify the user, the machine generating the authentication score based on the location score in response to the providing of the location score; and

causing presentation of an indication that the request to verify the user is authentic based on the obtained authentication score.

16. The non-transitory machine-readable storage medium of claim 15 , wherein:

the artificial intelligence engine is trained to output the reference score based on weights that correspond to the clusters of locations, each weight among the weights being generated based on a corresponding count of locations in the corresponding cluster of locations; and

the artificial intelligence engine outputs the location score based on the generated weights that correspond to the clusters of locations.

17. The non-transitory machine-readable storage medium of claim 15 , wherein:

the artificial intelligence engine is trained to output the reference score based on mean inter-cluster distances between the clusters of locations, each mean inter-cluster distance among the mean inter-cluster distances being calculated between successive locations in different clusters of locations among the clusters of locations; and

the artificial intelligence engine outputs the location score based on the mean inter-cluster distances.

18. A system comprising:

one or more processors; and

a memory storing instructions that, when executed by at least one processor among the one or more processors, cause the system to perform operations comprising:

accessing an artificial intelligence engine trained to output a reference score in response to input of reference locations from which a device sent requests to verify a user, the reference score being generated based on corresponding representative locations of clusters of the reference locations and on corresponding variances away from the representative locations of the clusters;

inputting a candidate location of the device into the artificial intelligence engine trained to output the reference score in response to input of the reference locations, a location score being output by the trained artificial intelligence engine in response to the inputted candidate location of the device;

obtaining an authentication score from a machine by providing the location score to the machine in a request to verify the user, the machine generating the authentication score based on the location score in response to the providing of the location score; and

causing presentation of an indication that the request to verify the user is authentic based on the obtained authentication score.

19. The system of claim 18 , wherein:

the artificial intelligence engine is trained to output the reference score based on weights that correspond to the clusters of locations, each weight among the weights being generated based on a corresponding count of locations in the corresponding cluster of locations; and

the artificial intelligence engine outputs the location score based on the generated weights that correspond to the clusters of locations.

20. The system of claim 18 , wherein:

the artificial intelligence engine is trained to output the reference score based on mean inter-cluster distances between the clusters of locations, each mean inter-cluster distance among the mean inter-cluster distances being calculated between successive locations in different clusters of locations among the clusters of locations; and

the artificial intelligence engine outputs the location score based on the mean inter-cluster distances.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Jan 27, 2025
From: TRIPLEPOINT CAPITAL LLC
To: CALLSIGN, INC.
Reel/Frame 070023/0827 →
PLAIN ENGLISH INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jun 30, 2022
From: CALLSIGN, INC.
To: TRIPLEPOINT CAPITAL LLC, AS COLLATERAL AGENT
Reel/Frame 060544/0420 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2020
From: FOSTER, PETER ALEXANDER; CONDE, GABRIEL DOMINGUEZ; PATEL, YOGESH KUMAR JITENDRA
To: CALLSIGN INC.
Reel/Frame 054195/0431 →
Continuity (2)
Continuation 16019358 · Jun 26, 2018
Related Publication 20210042399A1 · Feb 11, 2021