| Index: src/platform/vboot_reference/tests/gen_test_cases.sh
|
| diff --git a/src/platform/vboot_reference/tests/gen_test_cases.sh b/src/platform/vboot_reference/tests/gen_test_cases.sh
|
| index b15921d61e00ce0045ea747a4b4c6081dba518a5..bad7e334d46a77ba76a832db467f1637a8f72dbb 100755
|
| --- a/src/platform/vboot_reference/tests/gen_test_cases.sh
|
| +++ b/src/platform/vboot_reference/tests/gen_test_cases.sh
|
| @@ -6,49 +6,39 @@
|
|
|
| # Generate test cases for use for the RSA verify benchmark.
|
|
|
| -KEY_DIR=testkeys
|
| -TESTCASE_DIR=testcases
|
| -UTIL_DIR=../utils/
|
| -TEST_FILE=test_file
|
| -TEST_FILE_SIZE=1000000
|
| +# Load common constants and variables.
|
| +. "$(dirname "$0")/common.sh"
|
|
|
| -hash_algos=( sha1 sha256 sha512 )
|
| -key_lengths=( 1024 2048 4096 8192 )
|
| +TEST_FILE=${TESTCASE_DIR}/test_file
|
| +TEST_FILE_SIZE=1000000
|
|
|
| -# Generate public key signatures and digest on an input file for
|
| -# various combinations of message digest algorithms and RSA key sizes.
|
| +# Generate public key signatures on an input file for various combinations
|
| +# of message digest algorithms and RSA key sizes.
|
| function generate_test_signatures {
|
| + echo "Generating test signatures..."
|
| algorithmcounter=0
|
| for keylen in ${key_lengths[@]}
|
| do
|
| for hashalgo in ${hash_algos[@]}
|
| do
|
| - openssl dgst -${hashalgo} -binary -out $1.${hashalgo}.digest $1
|
| - ${UTIL_DIR}/signature_digest $algorithmcounter $1 | openssl rsautl -sign \
|
| - -pkcs -inkey ${KEY_DIR}/key_rsa${keylen}.pem \
|
| - > $1.rsa${keylen}_${hashalgo}.sig
|
| + openssl dgst -${hashalgo} -binary ${TEST_FILE} > \
|
| + ${TEST_FILE}.${hashalgo}.digest
|
| + ${UTIL_DIR}/signature_digest_utility $algorithmcounter \
|
| + ${TEST_FILE} | openssl rsautl \
|
| + -sign -pkcs -inkey ${TESTKEY_DIR}/key_rsa${keylen}.pem \
|
| + > ${TEST_FILE}.rsa${keylen}_${hashalgo}.sig
|
| let algorithmcounter=algorithmcounter+1
|
| done
|
| done
|
| }
|
|
|
| -function pre_work {
|
| - # Generate a file with random bytes for signature tests.
|
| +# Generate a file with random bytes for signature tests.
|
| +function generate_test_file {
|
| echo "Generating test file..."
|
| - dd if=/dev/urandom of=${TESTCASE_DIR}/${TEST_FILE} bs=${TEST_FILE_SIZE} count=1
|
| + dd if=/dev/urandom of=${TEST_FILE} bs=${TEST_FILE_SIZE} count=1
|
| }
|
|
|
| -if [ ! -d "$KEY_DIR" ]
|
| -then
|
| - echo "You must run gen_test_cases.sh to generate test keys first."
|
| - exit 1
|
| -fi
|
| -
|
| -if [ ! -d "$TESTCASE_DIR" ]
|
| -then
|
| - mkdir "$TESTCASE_DIR"
|
| -fi
|
| -
|
| -pre_work
|
| -echo "Generating test signatures..."
|
| -generate_test_signatures ${TESTCASE_DIR}/$TEST_FILE
|
| +mkdir -p ${TESTCASE_DIR}
|
| +check_test_keys
|
| +generate_test_file
|
| +generate_test_signatures
|
|
|