Secure pointers
First Claim
Patent Images
1. A method comprising:
- mapping a pointer to a target indirectly via a pointer map.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, apparatus, system, and signal-bearing medium that in an embodiment map a pointer to a target indirectly via a pointer map. In an embodiment, the pointer map is stored in a reserved area and an entry for the pointer in the pointer map includes a back-pointer containing an address of the pointer and a target-address containing the address of the target. When the pointer is accessed, the pointer is checked to ensure its contents point at the entry in the pointer map in the reserved area and that the back-pointer in the pointer map entry points back at the pointer. In this way, pointers are protected from being modified illegitimately.
334 Citations
26 Claims
-
1. A method comprising:
mapping a pointer to a target indirectly via a pointer map. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
8. An apparatus comprising:
-
means for storing a target-address in an entry of a pointer-map;
means for storing a pointer-address in the entry of the pointer-map; and
means for storing an address of the entry in a location indicated by the pointer-address. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A signal-bearing medium encoded with instructions, wherein the instructions when executed comprise:
-
receiving a pointer-address and a target-address;
determining whether a pointer has a valid entry in a pointer map based on the pointer-address;
when the valid entry does not exist, creating a new entry in the pointer map for the pointer; and
storing the target-address in the new entry. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A signal-bearing medium encoded with a data structure accessed by a controller that is to be executed by a processor, wherein the data structure comprises at least one entry, wherein the entry comprises:
-
a back-pointer, wherein the controller is to set an address of a pointer in the back-pointer; and
a target-address, wherein the controller is to set an address of a target of the pointer in the target-address. - View Dependent Claims (19, 20, 21, 22)
-
-
23. An electronic device comprising:
-
a processor; and
a storage device encoded with instructions, wherein the instructions when executed on the processor comprise;
receiving a pointer-address and a target-address, determining whether a pointer has an entry that is valid in a pointer map based on the pointer-address, when the pointer has the entry that is valid, storing the target-address in the valid entry. - View Dependent Claims (24, 25, 26)
-
Specification