Home | History | Annotate | Download | only in tests
      1 #!/bin/bash
      2 
      3 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
      4 # Use of this source code is governed by a BSD-style license that can be
      5 # found in the LICENSE file.
      6 #
      7 # Run tests for RSA Signature verification.
      8 
      9 # Load common constants and variables.
     10 . "$(dirname "$0")/common.sh"
     11 
     12 set -e
     13 
     14 return_code=0
     15 TEST_FILE=${TESTCASE_DIR}/test_file
     16 
     17 function test_signatures {
     18   algorithmcounter=0
     19   for keylen in ${key_lengths[@]}
     20   do
     21     for hashalgo in ${hash_algos[@]}
     22     do
     23       echo -e "For ${COL_YELLOW}RSA-$keylen and $hashalgo${COL_STOP}:"
     24       ${BIN_DIR}/verify_data $algorithmcounter \
     25         ${TESTKEY_DIR}/key_rsa${keylen}.keyb \
     26         ${TEST_FILE}.rsa${keylen}_${hashalgo}.sig \
     27         ${TEST_FILE}
     28       if [ $? -ne 0 ]
     29       then
     30         return_code=255
     31       fi
     32       let algorithmcounter=algorithmcounter+1
     33     done
     34   done
     35   echo -e "Peforming ${COL_YELLOW}PKCS #1 v1.5 Padding Tests${COL_STOP}..."
     36   ${TEST_DIR}/rsa_padding_test ${TESTKEY_DIR}/rsa_padding_test_pubkey.keyb
     37 }
     38 
     39 check_test_keys
     40 echo "Testing signature verification..."
     41 test_signatures
     42 
     43 exit $return_code
     44 
     45