Address validation using signatures
First Claim
1. A system comprising a data processing apparatus, and a non-transitory computer readable storage medium in data communication with the data processing apparatus and storing instructions executable by the data processing apparatus and upon such execution cause the data processing apparatus to perform operations comprising:
- receiving, from a data retrieval device, a response to a request to access a memory location, the response including data responsive to a memory access request, one or more device identifiers including a destination device identifier for a requesting device that sent the memory access request, and one or more signatures that each correspond to one of the one or more device identifiers including a signature for the requesting device;
in response to receiving the response, determining whether to provide the data responsive to the memory access request to the requesting device using the one or more signatures and the one or more device identifiers; and
in response to determining to provide the data responsive to the memory access request to the requesting device, sending the data responsive to the memory access request to the requesting device;
wherein;
the response comprises the destination device identifier, a source device identifier for the data retrieval device, a first signature for the requesting device, and a second signature for the data retrieval device; and
determining whether to provide the data responsive to the memory access request to the requesting device is performed using the destination device identifier, the source device identifier, the first signature, and the second signature.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for generating signed addresses. One of the methods includes receiving, by a component from a device, a plurality of first requests, each first request for a physical address and including a virtual address, determining, by the component, a first physical address using the virtual address, generating a first signature for the first physical address, and providing, to the device, a response that includes the first signature, receiving, from the device, a plurality of second requests, each second request for access to a second physical address and including a second signature, determining, by the component for each of the plurality of second requests, whether the second physical address is valid using the second signature, and for each second request for which the second physical address is determined to be valid, servicing the corresponding second request.
13 Citations
17 Claims
-
1. A system comprising a data processing apparatus, and a non-transitory computer readable storage medium in data communication with the data processing apparatus and storing instructions executable by the data processing apparatus and upon such execution cause the data processing apparatus to perform operations comprising:
-
receiving, from a data retrieval device, a response to a request to access a memory location, the response including data responsive to a memory access request, one or more device identifiers including a destination device identifier for a requesting device that sent the memory access request, and one or more signatures that each correspond to one of the one or more device identifiers including a signature for the requesting device; in response to receiving the response, determining whether to provide the data responsive to the memory access request to the requesting device using the one or more signatures and the one or more device identifiers; and in response to determining to provide the data responsive to the memory access request to the requesting device, sending the data responsive to the memory access request to the requesting device;
wherein;the response comprises the destination device identifier, a source device identifier for the data retrieval device, a first signature for the requesting device, and a second signature for the data retrieval device; and determining whether to provide the data responsive to the memory access request to the requesting device is performed using the destination device identifier, the source device identifier, the first signature, and the second signature. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-implemented method comprising:
-
receiving, from a data retrieval device, a response to a request to access a memory location, the response including data responsive to a memory access request, one or more device identifiers including a destination device identifier for a requesting device that sent the memory access request, and one or more signatures that each correspond to one of the one or more device identifiers including a signature for the requesting device; in response to receiving the response, determining whether to provide the data responsive to the memory access request to the requesting device using the one or more signatures and the one or more device identifiers; and in response to determining to provide the data responsive to the memory access request to the requesting device, sending the data responsive to the memory access request to the requesting device;
wherein;the response comprises the destination device identifier, a source device identifier for the data retrieval device, a first signature for the requesting device, and a second signature for the data retrieval device; and determining whether to provide the data responsive to the memory access request to the requesting device is performed using the destination device identifier, the source device identifier, the first signature, and the second signature. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer readable storage medium storing instructions executable by a data processing apparatus and upon such execution cause the data processing apparatus to perform operations comprising:
-
receiving, from a data retrieval device, a response to a request to access a memory location, the response including data responsive to a memory access request, one or more device identifiers including a destination device identifier for a requesting device that sent the memory access request, and one or more signatures that each correspond to one of the one or more device identifiers including a signature for the requesting device; in response to receiving the response, determining whether to provide the data responsive to the memory access request to the requesting device using the one or more signatures and the one or more device identifiers; and in response to determining to provide the data responsive to the memory access request to the requesting device, sending the data responsive to the memory access request to the requesting device;
wherein;the response comprises the destination device identifier, a source device identifier for the data retrieval device, a first signature for the requesting device, and a second signature for the data retrieval device; and determining whether to provide the data responsive to the memory access request to the requesting device is performed using the destination device identifier, the source device identifier, the first signature, and the second signature. - View Dependent Claims (16, 17)
-
Specification