Claims
- 1. A data authentication method for an integrated device, said method comprising:
passing a data request from a functional master through a data access control function; and responsive to the data request, selectively authenticating requested data by the data access control function transparent to the functional master of the integrated device initiating the data request.
- 2. The method of claim 1, wherein the selectively authenticating comprises determining by the data access control function whether the data request requires integrity checking.
- 3. The method of claim 2, wherein the determining is based on at least one of a master id of the functional master initiating the data request and an address of the data.
- 4. The method of claim 2, wherein the selectively authenticating further comprises:
obtaining a predetermined first integrity value representative of the requested data; employing a data address associated with the data request to read encrypted, requested data responsive to the data request; decrypting, by the data address control function, the encrypted, requested data; calculating a second integrity value from the decrypted requested data; and comparing the first integrity value and the second integrity value to authenticate the requested data, and with authentication thereof, returning the requested data to the functional master initiating the data request.
- 5. The method of claim 4, wherein the obtaining comprises:
calculating an integrity value address from the data address associated with the data request wherein the calculating includes employing an integrity table address; generating a request to read an encrypted integrity value from a secure integrity table; and receiving and decrypting the read encrypted integrity value by the data access control function to obtain the first integrity value representative of the requested data.
- 6. The method of claim 1, further comprising receiving by the data access control function a request to write data, and wherein the selectively authenticating further comprises facilitating subsequent authentication of the write data by:
storing an encrypted version of the write data; calculating an integrity value from the write data, and encrypting the integrity value; calculating an integrity value address using a write data address associated with the write data; and storing the encrypted integrity value using the calculated integrity value address.
- 7. The method of claim 6, wherein the selectively authenticating further comprises:
encrypting, by the data access control function, the write data of the write request and storing the encrypted write data, wherein the encrypted write data and the encrypted integrity value can both be retrieved in accordance with a subsequent read request to read requested data.
- 8. The method of claim 7, wherein receipt of the subsequent read request by the data access control function initiates retrieval of the encrypted requested data and the encrypted integrity value associated therewith, as well as decryption of the encrypted requested data and decryption of the encrypted integrity value for transparent authentication of the requested data prior to forwarding thereof to a functional master initiating the subsequent read request.
- 9. The method of claim 8, wherein the storing of the encrypted write data and the storing of the encrypted integrity value associated therewith occur such that the encrypted write data and the associated encrypted integrity value are retrievable in a single read operation.
- 10. The method of claim 1, wherein the selectively authenticating includes employing cascading integrity values, the cascading integrity values including at least one composite integrity value maintained by the data access control function, the at least one composite integrity value comprising an integrity value derived from other integrity values.
- 11. The method of claim 10, further comprising maintaining the at least one composite integrity value in persistent storage associated with the data access control function.
- 12. A data authentication system for an integrated device, said system comprising:
a data access controller for receiving a data request from a functional master; and means for selectively authenticating requested data at the data access controller responsive to the data request, wherein the means for selectively authenticating is transparent to the functional master of the integrated device initiating the data request.
- 13. The system of claim 12, wherein the means for selectively authenticating comprises means for determining by the data access controller whether the data request requires integrity checking.
- 14. The system of claim 13, wherein the means for determining employs at least one of a master id of the functional master initiating the data request and an address of the data.
- 15. The system of claim 13, wherein the means for selectively authenticating further comprises:
means for obtaining a predetermined first integrity value representative of the requested data; means for employing a data address associated with the data request to read encrypted, requested data responsive to the data request; means for decrypting, by the data address controller, the encrypted, requested data; means for calculating a second integrity value from the decrypted requested data; and means for comparing the first integrity value and the second integrity value to authenticate the requested data, and with authentication thereof, for returning the requested data to the functional master initiating the data request.
- 16. The system of claim 15, wherein the means for obtaining comprises:
means for calculating an integrity value address from the data address associated with the data request, wherein the means for calculating includes means for employing an integrity table address; means for generating a request to read an encrypted integrity value from a secure integrity table; and means for receiving and decrypting the read encrypted integrity value by the data access controller to obtain the first integrity value representative of the requested data.
- 17. The system of claim 12, further comprising means for receiving by the data access controller a request to write data, and wherein the means for selectively authenticating further comprises means for facilitating subsequent authentication of the write data by:
storing an encrypted version of the write data; calculating an integrity value from the write data, and encrypting the integrity value; calculating an integrity value address using a write data address associated with the write data; and storing the encrypted integrity value using the calculated integrity value address.
- 18. The system of claim 17, wherein the means for selectively authenticating further comprises:
means for encrypting, by the data access controller, the write data of the write request and storing the encrypted write data, wherein the encrypted write data and the encrypted integrity value can both be retrieved in accordance with a subsequent read request to read requested data.
- 19. The system of claim 18, wherein receipt of the subsequent read request by the data access controller initiates retrieval of the encrypted requested data and the encrypted integrity value associated therewith, as well as decryption of the encrypted requested data and decryption of the encrypted integrity value for transparent authentication of the requested data prior to forwarding thereof to a functional master initiating the subsequent read request.
- 20. The system of claim 19, wherein the storing of the encrypted write data and the storing of the encrypted integrity value associated therewith occur such that the encrypted write data and the associated encrypted integrity value are retrievable in a single read operation.
- 21. The system of claim 12, wherein the means for selectively authenticating includes means for employing cascading integrity values, the cascading integrity values including at least one composite integrity value maintained by the data access controller, the at least one composite integrity value comprising an integrity value derived from other integrity values.
- 22. The system of claim 21, further comprising means for maintaining the at least one composite integrity value in persistent storage associated with the data access control function.
- 23. At least one program storage device readable by a machine, tangibly embodying at least one program of instructions executable by the machine to perform a data authentication method for an integrated device, the method comprising:
passing a data request from a functional master through a data access control function; and responsive to the data request, selectively authenticating requested data by the data access control function transparent to the functional master of the integrated device initiating the data request.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application contains subject matter which is related to the subject matter of the following applications, each of which is assigned to the same assignee as this application and filed on the same day as this application. Each of the below listed applications is hereby incorporated herein by reference in its entirety:
[0002] “CONTROL FUNCTION EMPLOYING A REQUESTING MASTER ID AND A DATA ADDRESS TO QUALIFY DATA ACCESS WITHIN AN INTEGRATED SYSTEM”, by Evans et al., U.S. Ser. No. ______ (Attorney Docket No. EN920010107US1);
[0003] “CONTROL FUNCTION WITH MULTIPLE SECURITY STATES FOR FACILITATING SECURE OPERATION OF AN INTEGRATED SYSTEM”, by Foster et al., U.S. Ser. No. ______ (Attorney Docket No. EN920020002US1); and
[0004] “INITIALIZING, MAINTAINING, UPDATING AND RECOVERING SECURE OPERATION WITHIN AN INTEGRATED SYSTEM EMPLOYING A DATA ACCESS CONTROL FUNCTION”, by Foster et al., U.S. Ser. No. ______ (Attorney Docket No. EN920020004US1).