Multi-tiered authentication methods for facilitating communications amongst smart home devices and cloud-based servers
First Claim
1. A method of authenticating a client device, comprising:
- receiving, at a registration server, first device credentials from the client device, the first device credentials including a secret generated by a third party that is unique to the client device;
determining, by the registration server, whether the first device credentials are valid;
determining, by the registration server, whether receiving the first device credentials from the client device is an initial registration contact involving the first device credentials or a subsequent registration contact involving the first device credentials;
when it is determined that the first device credentials are valid and that receiving the first device credentials from the client device is an initial registration contact;
generating, by the registration server, second device credentials, wherein the second device credentials are accessible to a synchronization server; and
communicating the second device credentials to the client device;
when it is determined that receiving the first device credentials is a subsequent registration contact involving the first device credentials;
determining whether a user account is already paired with a client device that previously provided the first device credentials to the registration server; and
when it is determined that the user account is already paired with the client device that previously provided the first device credentials, unpairing the user account from the client device that previously provided the first credentials.
2 Assignments
0 Petitions
Accused Products
Abstract
Apparatus, systems, methods, and related computer program products for synchronizing distributed states amongst a plurality of entities and authenticating devices to access information and/or services provided by a remote server. Synchronization techniques include client devices and remote servers storing buckets of information. The client device sends a subscription request to the remote serve identifying a bucket of information and, when that bucket changes, the remote server sends the change to the client device. Authentication techniques include client devices including unique default credentials that, when presented to a remote server, provide limited access to the server. The client device may obtain assigned credentials that, when presented to the remote server, provide less limited access to the server.
132 Citations
18 Claims
-
1. A method of authenticating a client device, comprising:
-
receiving, at a registration server, first device credentials from the client device, the first device credentials including a secret generated by a third party that is unique to the client device; determining, by the registration server, whether the first device credentials are valid; determining, by the registration server, whether receiving the first device credentials from the client device is an initial registration contact involving the first device credentials or a subsequent registration contact involving the first device credentials; when it is determined that the first device credentials are valid and that receiving the first device credentials from the client device is an initial registration contact; generating, by the registration server, second device credentials, wherein the second device credentials are accessible to a synchronization server; and communicating the second device credentials to the client device; when it is determined that receiving the first device credentials is a subsequent registration contact involving the first device credentials; determining whether a user account is already paired with a client device that previously provided the first device credentials to the registration server; and when it is determined that the user account is already paired with the client device that previously provided the first device credentials, unpairing the user account from the client device that previously provided the first credentials. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A registration server comprising:
-
one or more processors; and one or more memory devices comprising instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising; receiving, at the registration server, first device credentials from the client device, the first device credentials including a secret generated by a third party that is unique to the client device; determining, by the registration server, whether the first device credentials are valid; determining, by the registration server, whether receiving the first device credentials from the client device is an initial registration contact involving the first device credentials or a subsequent registration contact involving the first device credentials; when it is determined that the first device credentials are valid and that receiving the first device credentials from the client device is an initial registration contact; generating, by the registration server, second device credentials, wherein the second device credentials are accessible to a synchronization server; and communicating the second device credentials to the client device; when it is determined that receiving the first device credentials is a subsequent registration contact involving the first device credentials; determining whether a user account is already paired with a client device that previously provided the first device credentials to the registration server; and when it is determined that the user account is already paired with the client device that previously provided the first device credentials, unpairing the user account from the client device that previously provided the first credentials. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
Specification