Address validation using signatures
First Claim
1. A computer-implemented method comprising:
- receiving, by a component from a device, a request that includes a physical address and an error-detecting code value and that requests access to a memory location identified by the physical address;
in response to receiving the request, generating, by the component, a signature for the physical address using the physical address, wherein the request does not include the signature and the error-detecting code value was previously generated using the signature;
in response to generating the signature, generating a second error-detecting code value using the request and the signature;
in response to generating the second error-detecting code value, determining whether the second error-detecting code value is the same value as the error-detecting code value by comparing the second error-detecting code value with the error-detecting code value; and
in response to determining that the second error-detecting code value is the same value as the error-detecting code value, servicing, by the component, the request.
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.
15 Citations
23 Claims
-
1. A computer-implemented method comprising:
-
receiving, by a component from a device, a request that includes a physical address and an error-detecting code value and that requests access to a memory location identified by the physical address; in response to receiving the request, generating, by the component, a signature for the physical address using the physical address, wherein the request does not include the signature and the error-detecting code value was previously generated using the signature; in response to generating the signature, generating a second error-detecting code value using the request and the signature; in response to generating the second error-detecting code value, determining whether the second error-detecting code value is the same value as the error-detecting code value by comparing the second error-detecting code value with the error-detecting code value; and in response to determining that the second error-detecting code value is the same value as the error-detecting code value, servicing, by the component, the request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. 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 device, a request that includes a physical address and an error-detecting code value and that requests access to a memory location identified by the physical address; in response to receiving the request, generating a signature for the physical address using the physical address, wherein the request does not include the signature and the error-detecting code value was previously generated using the signature; in response to generating the signature, generating a second error-detecting code value using the request and the signature; in response to generating the second error-detecting code value, determining whether the second error-detecting code value is the same value as the error-detecting code value by comparing the second error-detecting code value with the error-detecting code value; and in response to determining that the second error-detecting code value is the same value as the error-detecting code value, servicing the request. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. 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 device, a request that includes a physical address, an error-detecting code value, and settings data that indicates that the request does not include a checksum and that requests access to a memory location identified by the physical address; in response to receiving the request, determining a signature for the physical address wherein the request does not include the signature and the error-detecting code value was previously generated using the signature; in response to determining the signature, generating a second error-detecting code value using the request and the signature; in response to generating the second error-detecting code value, determining whether the second error-detecting code value is the same value as the error-detecting code value by comparing the second error-detecting code value with the error-detecting code value; and in response to determining that the second error-detecting code value is the same value as the error-detecting code value, servicing the request. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
Specification