| # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| AUTHOR = "ChromeOS Team" |
| NAME = "firmware_VbootCrypto" |
| PURPOSE = """ |
| Verifies Firmware Verified Boot Reference Implementation, its components, and |
| crypto performance. |
| """ |
| CRITERIA = """ |
| This test is a benchmark. |
| |
| Errors in any of the following tests will cause a failure: |
| - _sha_test() |
| - _rsa_test() |
| - _image_verification_test() |
| - _rollback_tests() |
| - _splicing_tests() |
| """ |
| TIME = "LONG" |
| TEST_CATEGORY = "Functional" |
| TEST_CLASS = "firmware" |
| TEST_TYPE = "client" |
| |
| DOC = """ |
| This test implements various RSA and SHA by creating and verifying various |
| keys and hashes. It will generate public key signatures using sha1, sha256, |
| and sha512 algorithms with key lengths of 1024, 2048, 4096, and 8192. RSA |
| padding tests will then be run to verify them. Tests are also run to verify |
| the correctness of firmware and kernel image verification. |
| """ |
| |
| test_suites = [ |
| 'crypto', # RSA Signature Verification and SHA* Correctness. |
| 'verification', # Firmware and Kernel Image Verification. |
| 'benchmarks', # Crypto and Image Verification benchmarks. |
| 'rollback', # Firmware/Kernel Rollback Prevention. |
| 'splicing', # Image Splicing Attack. |
| ] |
| for suite in test_suites: |
| job.run_test('firmware_VbootCrypto', suite=suite, tag=suite) |