IP Library Granted Patent US 12,050,704
Granted Patent B2
US 12,050,704 · App. 17/556,935 · Granted Jul 30, 2024

Secure data content access system and method

Inventors: Vishwas Saxena (Bengaluru, IN); Mukesh Kumar (Bengaluru, IN)
Assignee: Western Digital Technologies, Inc.
G06F21/62G06F12/1458H04L9/3263
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 12,050,704
App. No.
17/556,935
Granted
Jul 30, 2024
Kind
B2
Abstract

A method for securing access to a data storage device (DSD), comprising: receiving, from a host connected to a data port of the DSD, a data access request to access user data stored on the DSD. In response to receiving the data access request, the DSD transmits, to the host, a Long Term Device Key (LTDK) of the DSD and a session identifier uniquely generated for the data access session. An access token is received from the host, signed by a private Long Term Host Key (LTHK) of the host. The LTHK and the LTDK form a cryptographic pair. The access token is validated using the LTDK to determine whether the host is authorized to access the DSD. In response to determining that the host is authorized to access the DSD, a data access state of the DSD is set to an unlocked state to enable access to the user data by the host via the data port, wherein the LTDK is obtained from a registration token transmitted to the DSD by the host. The registration token is secured by a registration server in response to the registration of the host with the DSD.

Claims (89)

1. A method for securing access to a data storage device (DSD), comprising:

transmitting, to a host, user device information including at least an identification key (IDK) of the DSD, wherein the user device information is provided to a registration server by the host as a request to register the host as authorized to access the DSD;

in response to the registration server verifying, using the IDK of the DSD, that no host is registered as being authorized to access the DSD, receiving from the registration server, via the host, a signed registration token, wherein the signed registration token includes a Long Term Device Key (LTDK) of the DSD;

receiving, from the host, a data access request for a data access session to access user data stored on a non-volatile storage medium of the DSD, wherein the host is connected to a data port of the DSD;

in response to receiving the data access request, transmitting an acknowledgement to the host, wherein the acknowledgement includes:

the LTDK of the DSD; and

a session identifier that is uniquely generated by the DSD for the data access session of the host;

receiving, from the host, an access token signed by a private Long Term Host Key (LTHK) of the host, wherein the LTHK of the host and the LTDK of the DSD form a cryptographic Long Term Key pair;

validating the access token using the LTDK of the DSD to determine whether the host is authorized to access the DSD; and

in response to determining that the host is authorized to access the DSD, selectively setting a data access state of the DSD to an unlocked state to enable access to the user data by the host via the data port.

2. The method of claim 1 , wherein:

the signed registration token is cryptographically secured by a registration server key pair associated with the registration server; and

the registration server key pair includes:

a private server key used by the registration server to cryptographically sign the registration token; and

a public server key used by the DSD to verify the received signed registration token.

3. The method of claim 2 , wherein the public server key is stored in a non-volatile memory of the DSD prior to the DSD receiving the signed registration token.

4. The method of claim 1 , wherein:

the LTDK and the LTHK are generated by the registration server; and

the LTHK is transmitted from the registration server to the host.

5. The method of claim 1 , wherein the LTDK and the LTHK are generated by the host.

6. The method of claim 1 , wherein the access token:

is generated by the host; and

includes a representation of the session identifier of the acknowledgement received from the DSD.

7. The method of claim 6 , wherein the access token comprises:

an access certificate; and

a digest including:

the representation of the session identifier; and

the LTDK of the acknowledgement received from the DSD.

8. The method of claim 1 , wherein, in response to selectively setting the data access state to the unlocked state, the DSD is configured to generate a physical enable signal to enable transmission of user data between the host and the non-volatile storage medium via the data port.

9. The method of claim 1 , further comprising:

receiving, from a secondary host, a secondary data access request for a second data access session to access user data stored on the non-volatile storage medium of the DSD, wherein the secondary host is connected to the data port of the DSD;

in response to receiving the secondary data access request, transmitting a secondary acknowledgement to the secondary host, wherein the secondary acknowledgement includes:

the LTDK of the DSD; and

a second session identifier that is uniquely generated by the DSD for the second data access session of the secondary host;

receiving, from the secondary host, a secondary access token signed by the LTHK of the host;

validating the secondary access token to determine that the secondary host is authorized to access the DSD; and

in response to determining that the secondary host is authorized to access the DSD, selectively setting the data access state of the DSD to the unlocked state to enable access to the user data by the secondary host via the data port,

wherein the secondary access token is transmitted to the secondary host by the registration server, in response to the host providing authorization for the secondary host to access the user data of the DSD.

10. The method of claim 9 , wherein:

the secondary access token is selected from:

an access certificate generated by the registration server; and

a digital signature generated by the host, the access token including the second session identifier; and

the secondary access token is generated in response to the host providing authorization for the secondary host to access the user data of the DSD.

11. A data storage device (DSD), comprising:

a non-volatile storage medium configured to store user data; and

a processor coupled to the non-volatile storage medium, wherein the processor is configured to:

transmit, to a host, user device information including at least an identification key (IDK) of the DSD, wherein the host is configured to provide the user device information to a registration server as a request to register the host as authorized to access the DSD;

in response to the registration server verifying, using the IDK of the DSD, that no host is registered as being authorized to access the DSD, receive from the registration server, via the host, a signed registration token, wherein the signed registration token includes a Long Term Device Key (LTDK) of the DSD;

receive, from the host, a data access request for a data access session to access user data stored on a non-volatile storage medium of the DSD, wherein the host is connected to a data port of the DSD;

in response to receiving the data access request, transmit an acknowledgement to the host, wherein the acknowledgement includes:

the LTDK of the DSD; and

a session identifier that is uniquely generated by the DSD for the data access session of the host;

receive, from the host, an access token signed by a private Long Term Host Key (LTHK) of the host, wherein the LTHK of the host and the LTDK of the DSD form a cryptographic Long Term Key pair;

validate the access token using the LTDK of the DSD to determine whether the host is authorized to access the DSD; and

in response to determining that the host is authorized to access the DSD, selectively set a data access state of the DSD to an unlocked state to enable access to the user data by the host via the data port.

12. The data storage device of claim 11 , wherein:

the signed registration token is cryptographically secured by a registration server key pair associated with the registration server; and

the registration server key pair includes:

a private server key used by the registration server to cryptographically sign the registration token; and

a public server key used by the DSD to verify the received signed registration token.

13. The data storage device of claim 12 , further comprising:

a non-volatile memory configured to store the public server key prior to the DSD receiving the signed registration token.

14. The data storage device of claim 11 , wherein the registration server is configured to:

generate the LTDK and the LTHK, and

transmit the LTHK to the host.

15. The data storage device of claim 11 , wherein the host is configured to generate the LTDK and the LTHK.

16. The data storage device of claim 11 , wherein:

the host is configured to generate the access token; and

the access token includes a representation of the session identifier of the acknowledgement received from the DSD.

17. The data storage device of claim 11 , wherein, in response to selectively setting the data access state to the unlocked state, the processor is further configured to generate a physical enable signal to enable transmission of user data between the host and the non-volatile storage medium via the data port.

18. The data storage device of claim 11 , wherein the processor is further configured to:

receive, from a secondary host, a secondary data access request for a second data access session to access user data stored on the non-volatile storage medium, wherein the secondary host is connected to the data port;

in response to receiving the secondary data access request, transmit a secondary acknowledgement to the secondary host, wherein the secondary acknowledgement includes a second session identifier that is uniquely generated by the DSD for the second data access session of the secondary host;

receive, from the secondary host, a secondary access token signed by the LTHK of the host;

validate the secondary access token to determine that the secondary host is authorized to access the DSD; and

in response to determining that the secondary host is authorized to access the DSD, selectively set the data access state of the DSD to the unlocked state to enable access to the user data by the secondary host via the data port, wherein the secondary access token is transmitted to the secondary host by the registration server, in response to the host providing authorization for the secondary host to access the user data of the DSD.

19. A host configured for secure data access with a data storage device (DSD), the host comprising:

means for receiving user device information including at least an identification key (IDK) of the DSD;

means for transmitting, to a registration server, a request to register the host as authorized to access the DSD, wherein the request to register includes the IDK of the DSD;

means for, in response to the registration server verifying, using the IDK of the DSD, that no host is registered as being authorized to access the DSD, receiving from the registration server a signed registration token, wherein the signed registration token includes a Long Term Device Key (LTDK) of the DSD;

means for transmitting, to the DSD, a secure data access request for a data access session to access user data stored on a non-volatile storage medium of the DSD, wherein the host is connected to a data port of the DSD;

means for receiving, from the DSD, an acknowledgement including:

the LTDK of the DSD; and

a session identifier that is uniquely generated by the DSD for the data access session of the host;

means for generating an access token signed by a private Long Term Host Key (LTHK) of the host, wherein the LTHK of the host and the LTDK of the DSD form a cryptographic Long Term Key pair; and

means for transmitting the access token to the DSD to validate the access token using the LTDK of the DSD, wherein, in response to the DSD determining that the host is authorized to access the DSD, the DSD selectively sets a data access state of the DSD to an unlocked state to enable access to the user data by the host via the data port.

20. The host of claim 19 , further comprising:

means for transmitting the signed registration token to the DSD; and

means for receiving the corresponding LTHK.

Assignments (8)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2021
From: SAXENA, VISHWAS; KUMAR, MUKESH
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058438/0107 →
Continuity (1)
Related Publication 20230195912A1 · Jun 22, 2023