METHOD AND DEVICES FOR SELECTIVE RAM SCRAMBLING
First Claim
1. A method for selective memory scrambling within a computing device to efficiently protect data from pattern matching attacks, comprising:
- determining whether data to be stored in a memory includes protected content;
applying a scrambling routine to the data as part of storing the data in the memory when the data includes protected content; and
storing the data in the memory without applying the scrambling routine to the data when the data does not include protected content.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for selectively scrambling data within a memory associated with a computing device based on data tagging. The computing device may define security domains that are protected. Data generated by an application may be packaged as a data bus transaction having tagging information describing the application and/or the data. The data bus transaction may be transmitted over a bus of the computing device to a memory, such as internal memory, where the computing device may compare the tagging information to stored information describing security domains. When the data is determined to be protected based on the tagging information, the computing device may perform scrambling operations on the data. In an aspect, the tagging information may describe a virtual machine used to execute various applications on a processor. In another aspect, the tagging information may define destination memory addresses or content protection bit values.
-
Citations
54 Claims
-
1. A method for selective memory scrambling within a computing device to efficiently protect data from pattern matching attacks, comprising:
-
determining whether data to be stored in a memory includes protected content; applying a scrambling routine to the data as part of storing the data in the memory when the data includes protected content; and storing the data in the memory without applying the scrambling routine to the data when the data does not include protected content. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computing device, comprising:
-
a memory configured with at least a secure domain in which data is scrambled and an unsecure domain; and a processor coupled to the memory, wherein the processor is configured with processor executable instructions to perform operations comprising; determining whether data to be stored in the memory includes protected content; applying a scrambling routine to the data as part of storing the data in the secure domain in the memory when the data includes protected content; and storing the data in the unsecure domain without applying the scrambling routine to the data when the data does not include protected content. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A computing device, comprising:
-
a memory configured with at least a secure domain in which data is scrambled and an unsecure domain; means for determining whether data to be stored in the memory includes protected content; means for means for applying a scrambling routine to the data as part of storing the data in the memory when the data includes protected content; and means for storing the data in the storage without applying the scrambling routine to the data when the data does not include protected content. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A non-transitory processor-readable storage medium having stored thereon processor-executable instructions configured to cause a processor to perform operations comprising:
-
determining whether data to be stored in a memory includes protected content; applying a scrambling routine to the data as part of storing the data in the secure domain in the memory when the data includes protected content; and storing the data in the unsecure domain without applying the scrambling routine to the data when the data does not include protected content. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. A computing device, comprising:
-
a memory configured with at least a secure domain in which data is scrambled and an unsecure domain; a memory controller coupled to the memory; and a processor coupled to the memory and the memory controller, wherein the processor is configured with processor executable instructions to perform operations comprising; adding tagging information to data transmitted over a bus of the computing device; and programming the memory controller to perform operations comprising; determining whether data to be stored in the memory includes protected content based on the tagging information; applying a scrambling routine to the data as part of storing the data in the secure domain in the memory when the data includes protected content; and storing the data in the unsecure domain without applying the scrambling routine to the data when the data does not include protected content. - View Dependent Claims (42, 43, 44, 45)
-
-
46. A computing device, comprising:
-
a memory configured with at least a secure domain in which data is scrambled and an unsecure domain; a memory controller coupled to the memory; means for adding tagging information to data transmitted over a bus of the computing device; and means for programming the memory controller to perform operations comprising; determining whether data to be stored in the memory includes protected content based on the tagging information; applying a scrambling routine to the data as part of storing the data in the secure domain in the memory when the data includes protected content; and storing the data in the unsecure domain without applying the scrambling routine to the data when the data does not include protected content. - View Dependent Claims (47, 48, 49, 50)
-
-
51. A non-transitory processor-readable storage medium having stored thereon processor-executable instructions configured to cause a processor to perform operations comprising:
-
adding tagging information to data transmitted over a bus of the computing device; and programming a memory controller to perform operations comprising; determining whether data to be stored in a memory includes protected content based on the tagging information; applying a scrambling routine to the data as part of storing the data in the secure domain in the memory when the data includes protected content; and storing the data in the unsecure domain without applying the scrambling routine to the data when the data does not include protected content. - View Dependent Claims (52, 53, 54)
-
Specification