Attestation of a device under test
AssigneeBAE Systems Space & Mission Systems Inc.
InventorsChristopher Altick, Amy Sue Christopher, Kathleen Jo Frazier
Life of this patent
Estimating the term…
Abstract
Attestation of an electronic device provides assurances that the device is trustworthy and operating as intended or, at least, within acceptable parameters. Methods and systems are provided herein wherein a device under test (DUT) is subject to tests, the results of which are provided to a trust verifier (TV) to indicate whether the DUT passed or failed. To protect the integrity of the test from being discovered by malware, the test logic is developed “off board” and only machine code is provided to the DUT. Similarly, memory values and other data of the DUT are not revealed to the TV, which is only provided with test results.
Claims22
A trust verification system for attesting whether a device under test (DUT) is trustworthy, comprising:
- a processor coupled with a computer memory comprising computer readable instructions;
- and
- a communication interface;
- wherein, while the processor of the trust verification system is in communication the DUT via the communication interface, the processor:
- receives, via the communication interface, testable attributes from the DUT;
- generates, from the testable attributes, tests for execution on the DUT;
- loads the tests into an executable memory of the DUT;
- loads a test manager into the DUT;
- signals the test manager to execute the tests;
- and
- receives results from the test manager executing the tests.
A method, comprising:
- establishing communications between a trusted verifier and a device under test (DUT);
- while the communications are established between the trusted verifier and the DUT:
- collecting testable attributes from the DUT;
- in response to collecting the testable attributes, generating, by the trusted verifier and from the testable attributes, tests for execution on the DUT;
- loading the tests into an executable memory of the DUT;
- loading a test manager into the DUT;
- and
- executing the test manager by the DUT to perform the tests and report results therefrom to the trusted verifier.
A device under test (DUT), comprising:
- a processor coupled with a computer memory comprising computer readable instructions;
- a communication interface to a network;
- a volatile memory;
- and
- a data storage;
- wherein the processor performs:
- upon being placed in communication with a trust verifier (TV), via the communication interface, accessing testable attributes of the DUT from the data storage and sending the testable attributes to the TV;
- while in communication with the TV, and in response to sending the testable attributes to the TV, receiving from the TV tests and a test manager, loading the tests and the test manager into the volatile memory, executing the test manager, and returning test results to the TV;
- and
- upon receiving a signal from the test manager that the tests are finished, initiating at least one of a shutdown of the DUT or a reboot.
A trust verification system for attesting whether a device under test (DUT) is trustworthy, comprising:
- a processor coupled with a computer memory comprising computer readable instructions;
- and
- a communication interface;
- and
- wherein the processor performs:
- upon being placed in communication with the DUT, via the communication interface, receiving testable attributes from the DUT;
- generating, from the testable attributes, tests on the DUT, wherein the processor generates a script to comprise the tests, and the script is generated to comprise at least one randomization of the tests therein, wherein the at least one randomization utilized to generate the script is unknown to the DUT;
- loading the tests into an executable memory of the DUT;
- loading a test manager into the DUT;
- signaling the test manager to execute the tests;
- and
- receiving results from the test manager executing the tests.
A method, comprising:
- collecting testable attributes from a device under test (DUT);
- generating, from the testable attributes, tests on the DUT, wherein the tests are generated to comprise at least one randomization of the tests therein, wherein the at least one randomization utilized to generate the tests is unknown to the DUT;
- loading the tests into an executable memory of the DUT;
- loading a test manager into the DUT;
- and
- executing the test manager by the DUT to perform the tests and report results therefrom.
Dependencies are inferred from the claim text.