IP Library Granted Patent US 10,225,089
Granted Patent B2
US 10,225,089 · App. 15/923,784 · Granted Mar 5, 2019

Per-device authentication

Inventors: Keun young Park (Santa Clara, CA); Rakesh Narayan Iyer (Sunnyvale, CA); Nicholas Julian Pelly (Manly, AU)
Assignee: Google LLC
H04L9/3268G06F21/44H04L9/0866H04L9/3247H04L63/0823H04W12/06G06F2221/2129
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 10,225,089
App. No.
15/923,784
Granted
Mar 5, 2019
Kind
B2
Abstract

Systems and techniques are provided for per-device authentication. A hardware serial number associated with a hardware component of a computing device may be received. The hardware serial number may be converted to a hardware key check. A hardware key associated with a certificate from the computing device may be received. The hardware key may be compared to the hardware check key to obtain a verification of the certificate. The certificate may be verified when the hardware key check matches the hardware key and the certificate may not be verified when the hardware key check does not match the hardware key. A signature associated with the certificate may be verified. Access to the data processing apparatus by the computing device may be permitted when the certificate is verified and the signature is determined to be authentic.

Claims (64)

1. A method comprising:

receiving, by a first computing device and from a second computing device, a first digital certificate comprising a first hardware key and a digital signature, wherein the first hardware key was generated based on a hardware serial number associated with a hardware component of a fourth computing device, the hardware component of the fourth computing device being a particular type of hardware component;

generating, by the first computing device and based on a hardware serial number associated with a hardware component of the second computing device, a first hardware key check, the hardware component of the second computing device being of the particular type of hardware component;

determining, the first computing device, whether the first digital certificate is valid based on a comparison of the first hardware key and the first hardware key check;

responsive to determining that the first digital certificate is valid, permitting, by the first computing device, the second computing device to access the first computing device;

receiving, by the first computing device and from a third computing device, a second digital certificate comprising a second hardware key and the digital signature, wherein the second hardware key was generated based on a hardware serial number associated with a hardware component of a fifth computing device, the hardware component of the fifth computing device being of the particular type of hardware component;

generating, by the first computing device and based on the hardware serial number associated with a hardware component of the third computing device, a second hardware key check, the hardware component of the third computing device being of the particular type of hardware component;

determining, the first computing device, whether the second digital certificate is valid based on a comparison of the second hardware key and the second hardware key check; and

responsive to determining that the second digital certificate is valid, permitting, by the first computing device, the third computing device to access the first computing device.

2. The method of claim 1 , further comprising:

responsive to determining that the digital certification is not valid, preventing, by the first computing device, the second computing device from accessing the first computing device.

3. The method of claim 1 , wherein generating the first hardware key check comprises:

applying, by the first computing device, a hash function to the hardware serial number associated with the hardware component of the second computing device to generate a hashed value of the hardware serial number associated with the hardware component of the second computing device.

4. The method of claim 3 , wherein generating the first hardware key check further comprising:

discarding, by the first computing device, a portion of the hashed value to generate a remaining portion of the hashed value,

wherein the remaining portion of the hashed value is the first hardware key check.

5. The method of claim 4 ,

wherein first hardware key is a portion of a hashed value generated by applying the hash function to the hardware serial number associated with the hardware component of the fourth computing device, and

wherein determining whether the first digital certificate is valid based on a comparison of the first hardware key and the first hardware key check comprises determining that the first digital certificate is valid when the first hardware key matches the first hardware key check.

6. The method of claim 1 , wherein determining, the first computing device, whether the first digital certificate is valid further comprises:

authenticating, by the first computing device, the digital signature.

7. The method of claim 1 , wherein the first computing device is a vehicle head unit, and wherein the second computing device is a mobile phone.

8. The method of claim 1 , wherein the particular type of hardware component is one of a universal serial bus chip or a network interface.

9. A first computing device comprising:

one or more processors;

a network interface that receives, from a second computing device, a first digital certificate, and receives, from a third computing device, a second digital certificate, wherein the first digital certificate includes a first hardware key and a digital signature, wherein the first hardware key was generated based on a hardware serial number associated with a hardware component of a fourth computing device, the hardware component of the fourth computing device being a particular type of hardware component, wherein the second digital signature includes a second hardware key and the digital signature, and wherein the second hardware key was generated based on a hardware serial number associated with a hardware component of a fifth computing device, the hardware component of the fifth computing device being of the particular type of hardware component; and

a computer-readable storage media that stores code executable by the one or more processors to:

generate, based on a hardware serial number associated with a hardware component of the second computing device, a first hardware key check, the hardware component of the second computing device being of the particular type of hardware component;

determine whether the first digital certificate is valid based on a comparison of the first hardware key and the first hardware key check;

responsive to determining that the first digital certificate is valid, permit the second computing device to access the first computing device;

generate, based on the hardware serial number associated with a hardware component of the third computing device, a second hardware key check, the hardware component of the third computing device being of the particular type of hardware component;

determine whether the second digital certificate is valid based on a comparison of the second hardware key and the second hardware key check; and

responsive to determining that the second digital certificate is valid, permit the third computing device to access the first computing device.

10. The first computing device of claim 9 , wherein the code is further executable by the one or more processors to:

responsive to determining that the digital certification is not valid, prevent the second computing device from accessing the first computing device.

11. The first computing device of claim 9 , wherein the code is further executable by the one or more processors to generate the first hardware key check by at least being executable by the one or more processors to:

apply a hash function to the hardware serial number associated with the hardware component of the first computing device to generate a hashed value of the hardware serial number associated with the hardware component of the second computing device.

12. The first computing device of claim 11 , wherein the code is further executable by the one or more processors to generate the first hardware key check by at least being executable by the one or more processors to:

discard a portion of the hashed value to generate a remaining portion of the hashed value,

wherein the remaining portion of the hashed value is the first hardware key check.

13. The first computing device of claim 11 ,

wherein first hardware key is a portion of a hashed value generated by applying the hash function to the hardware serial number associated with the hardware component of the fourth computing device, and

wherein the code is further executable by the one or more processors to determine whether the first digital certificate is valid based on a comparison of the first hardware key and the first hardware key check by at least being executable by the one or more processors to determine that the first digital certificate is valid when the first hardware key matches the first hardware key check.

14. The first computing device of claim 9 , wherein the code is further executable by the one or more processors to determine whether the first digital certificate is valid by at least being executable by the one or more processors to authenticate the digital signature.

15. The first computing device of claim 9 , wherein the particular type of hardware component is one of a universal serial bus chip or a network interface.

16. The non-transitory computer-readable storage medium of claim 15 , wherein the first computing device is a vehicle head unit, and wherein the second computing device is a mobile phone.

17. A non-transitory computer-readable storage medium encoded with instructions that, when executed, cause one or more processors of a first computing device to:

receive, from a second computing device, a first digital certificate comprising a first hardware key and a digital signature, wherein the first hardware key was generated based on a hardware serial number associated with a hardware component of a fourth computing device, the hardware component of the fourth computing device being a particular type of hardware component;

generate, based on a hardware serial number associated with a hardware component of the second computing device, a first hardware key check, the hardware component of the second computing device being of the particular type of hardware component;

determine whether the first digital certificate is valid based on a comparison of the first hardware key and the first hardware key check;

responsive to determining that the first digital certificate is valid, permit the second computing device to access the first computing device;

receive, from a third computing device, a second digital certificate comprising a second hardware key and the digital signature, wherein the second hardware key was generated based on a hardware serial number associated with a hardware component of a fifth computing device, the hardware component of the fifth computing device being of the particular type of hardware component;

generate, based on the hardware serial number associated with a hardware component of the third computing device, a second hardware key check, the hardware component of the third computing device being of the particular type of hardware component;

determine whether the second digital certificate is valid based on a comparison of the second hardware key and the second hardware key check; and

responsive to determining that the second digital certificate is valid, permit the third computing device to access the first computing device.

18. The non-transitory computer-readable storage medium of claim 17 , wherein the instructions further cause the one or more processors to:

apply a hash function to the hardware serial number associated with the hardware component of the second computing device to generate a hashed value of the hardware serial number associated with the hardware component of the second computing device; and

discard a portion of the hashed value to generate a remaining portion of the hashed value,

wherein the remaining portion of the hashed value is the first hardware key check.

19. The non-transitory computer-readable storage medium of claim 18 ,

wherein first hardware key is a portion of a hashed value generated by applying the hash function to the hardware serial number associated with the hardware component of the fourth computing device, and

wherein the instructions further cause the one or more processors to determine that the first digital certificate is valid when the first hardware key matches the first hardware key check.

20. The non-transitory computer-readable storage medium of claim 17 , wherein the instructions further cause the one or more processors to:

authenticate the digital signature.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2018
From: PARK, KEUN YOUNG; IYER, RAKESH NARAYAN; PELLY, NICHOLAS JULIAN
To: GOOGLE INC.
Reel/Frame 045932/0235 →
CHANGE OF NAME Recorded May 30, 2018
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 046264/0208 →
Continuity (2)
Continuation 14311377 · Jun 23, 2014
Related Publication 20180205560A1 · Jul 19, 2018