IP Library › Granted Patent US 9,119,067
Granted Patent B2
US 9,119,067 · App. 13/611,323 · Granted Aug 25, 2015

Embodiments of a system and method for securely managing multiple user handles across multiple data processing devices

Inventors: Justin E. Santamaria (San Francisco, CA); Gokul P. Thirumalai (Santa Clara, CA); Justin Wood (Sunnyvale, CA); Andrew H. Vyrros (San Francisco, CA)
Assignee: Apple Inc.
H04W12/06H04L51/04H04L51/38H04L63/0876
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,119,067
App. No.
13/611,323
Granted
Aug 25, 2015
Kind
B2
Abstract

A system and method for are described for securely linking a phone number and user identification code in a directory database. A computer-implemented method comprising: receiving a first request from a first user device to register with a first service, the request identifying a phone number of the user device and including a fingerprint code uniquely identifying the first user device; registering the phone number in a directory service; receiving a second request from the first user device to register with a second service, the request including a user identification code which is not a phone number and the fingerprint code; registering the user identification code in the directory service; detecting that the first request and second request are from the same mobile device using the fingerprint code; and responsively linking the phone number and the user identification code in the directory database.

Claims (84)

1. A computer-implemented method comprising:

receiving a first request from a first user device to register with a first service in a plurality of services, the first request identifying a phone number of the first user device and including a fingerprint code that uniquely identifies the first user device;

registering the phone number and the fingerprint code in a directory service;

generating a first identity certificate for the first user device, using at least the phone number and the fingerprint code;

receiving a second request from the first user device to register with a second service in the plurality of services, the second request including the fingerprint code and a user identification code, wherein the user identification code is not a phone number;

registering the user identification code and the fingerprint code in the directory service;

generating a second identity certificate for the first user device, using at least the user identification code and the fingerprint code;

detecting that the first request and the second request are from the same user device, using the fingerprint code; and

responsively linking the phone number and the user identification code in the directory service, wherein either one of the first or second identity certificate can be used by the first user device to access either one of the first or second service in the plurality of services.

2. The method as in claim 1 wherein the first service and the second service are the same service.

3. The method as in claim 1 further comprising:

receiving a third request from a second user device to register with either the first or the second service or with a third service, the third request including authentication data authenticating a user of the second user device; and

authenticating the third request; and

responsively linking the second user device with the phone number and the user identification code.

4. The method as in claim 3 further comprising;

responsively transmitting the phone number, the user identification code, and any other phone numbers or user identification codes linked on the directory service to the second user device.

5. The method as in claim 1 wherein the fingerprint code comprises a value generated based on specific hardware features of the first user device.

6. The method as in claim 5 wherein the fingerprint is generated using digital rights management (DRM) software.

7. The method as in claim 3 further comprising:

receiving a request to log in to a specified service in the plurality of services from either the first or second user devices, the request including either a phone number or user identification code;

querying a database in the directory service to authenticate the first or second user devices; and

responsively logging the user in to the specified service if the first or second user devices are authenticated.

8. The method as in claim 1 further comprising:

responsively decoupling the phone number and the user identification code in the database in the directory service in response to one of a plurality of decoupling events.

9. The method as in claim 8 wherein the decoupling event comprises the first user device logging out of one or more services associated with either the phone number or the user identification code.

10. The method as in claim 9 wherein the decoupling event comprises the first user device logging out of all services associated with the phone number or all services associated with the user identification code.

11. The method as in claim 9 wherein the decoupling event comprises the first user device failing to establish a heartbeat connection with the first service.

12. The method as in claim 9 wherein the decoupling event comprises the user changing a password or attempting to remotely wipe the first user device.

13. A system comprising a memory for storing program code and at least one processor for processing the program code to perform the operations of:

receiving a first request from a first user device to register with a first service in a plurality of services, the first request identifying a phone number of the first user device and including a fingerprint code that uniquely identifies the first user device;

registering the phone number and fingerprint code in a directory service;

generating a first identity certificate for the first user device, using at least the phone number and the fingerprint code;

receiving a second request from the first user device to register with a second service in the plurality of services, the second request including the fingerprint code and a user identification code, wherein the user identification code is not a phone number;

registering the user identification code and fingerprint in the directory service;

generating a second identity certificate for the first user device, using at least the user identification code and the fingerprint code;

detecting that the first request and the second request are from the same user device, using the fingerprint code; and

responsively linking the phone number and the user identification code in the directory service, wherein either one of the first or second identity certificate can be used by the first user device to access either one of the first or second service in the plurality of services.

14. The system as in claim 13 wherein the first service and the second service are the same service.

15. The system as in claim 13 further comprising:

receiving a third request from a second user device to register with either the first or the second service or with a third service, the third request including authentication data authenticating a user of the second user device; and

authenticating the third request; and

responsively linking the second user device with the phone number and the user identification code.

16. The system as in claim 15 further comprising:

responsively transmitting the phone number, the user identification code, and any other phone numbers or user identification codes linked on the directory service to the second user device.

17. The system as in claim 13 wherein the fingerprint code comprises a value generated based on specific hardware features of the first user device.

18. The system as in claim 17 wherein the fingerprint is generated using digital rights management (DRM) software.

19. The system as in claim 15 further comprising:

receiving a request to log in to a specified service in the plurality of services from either the first or second user devices, the request including either a phone number or user identification code;

querying a database in the directory service to authenticate the first or second user devices; and

responsively logging the user in to the specified service if the first or second user devices are authenticated.

20. The system as in claim 13 further comprising:

responsively decoupling the phone number and the user identification code in the database in the directory service in response to one of a plurality of decoupling events.

21. The system as in claim 20 wherein the decoupling event comprises the first user device logging out of one or more services associated with either the phone number or the user identification code.

22. The system as in claim 21 wherein the decoupling event comprises the first user device logging out of all services associated with the phone number or all services associated with the user identification code.

23. The system as in claim 21 wherein the decoupling event comprises the first user device failing to establish a heartbeat connection with the first service.

24. The system as in claim 21 wherein the decoupling event comprises the user changing a password or attempting to remotely wipe the first user device.

25. A non-transitory machine-readable medium having program code stored thereon which, when executed by a machine, causes the machine to perform the operations of:

receiving a first request from a first user device to register with a first service in Et plurality of services, the first request identifying a phone number of the first user device and including a fingerprint code that uniquely identifies the first user device;

registering the phone number and the fingerprint code in a directory service;

generating a first identity certificate for the first user device, using at least the phone number and the fingerprint code;

receiving a second request from the first user device to register with a second service in the plurality of services, the second request including a user identification code, which is not a phone number, and the fingerprint code;

registering the user identification code and the fingerprint code in the directory service;

generating a second identity certificate for the first user device, using at least the user identification code and the fingerprint code;

detecting that the first request and the second request are from the same user device, using the fingerprint code; and

responsively linking the phone number and the user identification code in the directory service, wherein either one of the first or second identity certificate can be used by the first user device to access either one of the first or second service in the plurality of services.

26. The machine-readable medium as in claim 25 wherein the first service and the second service are the same service.

27. The machine-readable medium as in claim 25 further comprising:

receiving a third request from a second user device to register with either the first or the second service or with a third service, the third request including authentication data authenticating a user of the second user device; and

authenticating the third request; and

responsively linking the second user device with the phone number and the user identification code.

28. The machine-readable medium as in claim 27 further comprising:

responsively transmitting the phone number, the user identification code, and any other phone numbers or user identification codes linked on the directory service to the second user device.

29. The machine-readable medium as in claim 25 wherein the fingerprint code comprises a value generated based on specific hardware features of the first user device.

30. The machine-readable medium as in claim 29 wherein the fingerprint is generated using digital rights management (DRM) software.

31. The machine-readable medium as in claim 27 further comprising:

receiving a request to log in to a specified service in the plurality of services from either the first or second user devices, the request including either a phone number or user identification;

querying a database in the directory service to authenticate the first or second user devices; and

responsively logging the user in to the specified service if the first or second user devices are authenticated.

32. The machine-readable medium as in claim 25 further comprising:

responsively decoupling the phone number and the user identification code in the database in the directory service in response to one of a plurality of decoupling events.

33. The machine-readable medium as in claim 32 wherein the decoupling event comprises the first user device logging out of one or more services associated with either the phone number or the user identification code.

34. The machine-readable medium as in claim 33 wherein the decoupling event comprises the first user device logging out of all services associated with the phone number or all services associated with the user identification code.

35. The machine-readable medium as in claim 33 wherein the decoupling event comprises the first user device failing to establish a heartbeat connection with the first service.

36. The machine-readable medium as in claim 33 wherein the decoupling event comprises the user changing a password or attempting to remotely wipe the first user device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 26, 2013
From: SANTAMARIA, JUSTIN E.; THIRUMALAI, GOKUL P.; WOOD, JUSTIN; VYRROS, ANDREW H.
To: APPLE INC.
Reel/Frame 030300/0180 →
Continuity (5)
Continuation In Part 13224599 · Sep 2, 2011
Continuation In Part 13224626 · Sep 2, 2011
Provisional Application 61492903 · Jun 3, 2011
Provisional Application 61492917 · Jun 3, 2011
Related Publication 20130244614A1 · Sep 19, 2013