IP Library Granted Patent US 9,626,304
Granted Patent B2
US 9,626,304 · App. 14/560,670 · Granted Apr 18, 2017

Storage module, host, and method for securing data with application information

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,626,304
App. No.
14/560,670
Granted
Apr 18, 2017
Kind
B2
Abstract

A storage module, host, and method for securing data with application information are disclosed. In one embodiment, a storage module is provided comprising a memory and a controller. The controller is configured to store data and information about an application that generated the data and allow the data to be read only if information about an application attempting to read the data matches the information about the application that generated the data. Other embodiments are possible, and each of the embodiments can be used alone or together in combination.

Claims (47)

1. A memory device comprising:

a memory; and

a controller in communication with the memory, wherein the controller is configured to:

obtain data and information about an application that generated the data;

tag the data with the information;

store the data tagged with the information in the memory; and

allow the data to be read from the memory only if information about an application attempting to read the data matches the information that the data was tagged with;

wherein the application that generated the data runs on a host in communication with the memory device, wherein the host comprises a security application that queries the application for the information and provides the information to the memory device, and wherein the security application is provided to the host by the memory device.

2. The memory device of claim 1 , wherein the controller is further configured to encrypt the data before storing the data in the memory.

3. The memory device of claim 1 , wherein the controller is further configured to store the data in a secure area of the memory.

4. The memory device of claim 1 , wherein the controller is further configured to store the data in a non-secure area of the memory.

5. The memory device of claim 1 , wherein the information about the application that generated the data is stored as part of the data.

6. The memory device of claim 1 , wherein the security application queries the application for the information in response to a request from the controller.

7. The memory device of claim 1 , wherein the memory is a three-dimensional memory.

8. The memory device of claim 1 , wherein the memory device is removably connected to the host.

9. The memory device of claim 1 , wherein the memory device is embedded in the host.

10. A method for securing data, the method comprising:

performing the following in a memory device comprising a memory:

obtaining data and an application identifier of an application that generated the data;

tagging the data with the application identifier; and

storing the data tagged with the application identifier in the memory;

wherein the stored data can be read from the memory only if an application attempting to read the data has an application identifier that matches the application identifier that the data was tagged with;

wherein the application that generated the data is running on a host in communication with the memory device, wherein the host comprises a security application that queries the application for the application identifier and provides the application identifier to the memory device, and wherein the security application is provided to the host by the memory device.

11. The method of claim 10 further comprising:

receiving encryption parameters; and

encrypting the data tagged with the application identifier according to the encryption parameters before storing the data in the memory.

12. The method of claim 10 , wherein the data is stored in a secure area of the memory.

13. The method of claim 10 , wherein the data is stored in a non-secure area of the memory.

14. The method of claim 10 , wherein tagging the data with the application identifier comprises storing the application identifier in a header of the data.

15. The method of claim 10 , further comprising tagging the data with at least one additional identifier that also needs to be matched before the stored data can be read from the memory.

16. The method of claim 15 , wherein the at least one additional identifier comprises an identification of a source of the application.

17. The method of claim 10 , wherein the security application queries the application for the application identifier in response to a request from the memory device.

18. The method of claim 10 , wherein the memory is a three-dimensional memory.

19. The method of claim 10 , wherein the memory device is removably connected to the host.

20. The method of claim 10 , wherein the memory device is embedded in the host.

21. A host device comprising:

a memory configured to store a user application and a security application; and

a controller in communication with the memory and configured to execute the user application and the security application

wherein the user application, when executed by the controller, is configured to generate data; and send the data to a memory device in communication with the host device for storage;

wherein the security application, when executed by the controller, is configured to: receive an application identifier of the user application; and send the application identifier to the memory device to associate the application identifier with the data from the user application; wherein the security application is provided to the host device by the memory device; and wherein the stored data can be read from the memory device only if an application attempting to read the data has an application identifier that matches the application identifier associated with the data.

22. The host device of claim 21 , wherein the security application is further configured to provide the memory device with encryption parameters to be used by the memory device to encrypt the data before storing the data.

23. The host device of claim 21 , wherein the security application is further configured to: receive at least one additional identifier of the user application and provide the at least one additional identifier to the memory device.

24. The host device of claim 23 , wherein the at least one additional identifier comprises an identification of a source of the user application. application and provide the at least one additional identifier to the memory device.

25. The host device of claim 21 , wherein the security application is further to query the user application for the application identifier in response to a request from the memory device.

26. The host device of claim 21 wherein the memory device comprises a three-dimensional memory.

27. The host device of claim 21 , wherein the memory device is removably connected to the host device.

28. The host device of claim 21 , wherein the memory device is embedded in the host device.

Assignments (5)
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2024
From: SANDISK TECHNOLOGIES LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 069796/0423 →
CHANGE OF NAME Recorded May 25, 2016
From: SANDISK TECHNOLOGIES INC
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 038807/0807 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 5, 2014
From: SHARMA, ADITYA PRATAP; NARALA, BALASIVA
To: SANDISK TECHNOLOGIES INC.
Reel/Frame 034383/0723 →