1322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah#!/bin/bash 2322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah 3322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. 4322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah# Use of this source code is governed by a BSD-style license that can be 5322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah# found in the LICENSE file. 6445925fe0f11280c585879247eada43de32090caGaurav Shah# 7f67bcaa9a6d8ac8c31cb5650405f99c475c9ad5eGaurav Shah# Run tests for RSA Signature verification. 8322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah 9445925fe0f11280c585879247eada43de32090caGaurav Shah# Load common constants and variables. 10445925fe0f11280c585879247eada43de32090caGaurav Shah. "$(dirname "$0")/common.sh" 1108df9b88a36b7a351305a06b2849c5fcdac54135Gaurav Shah 12a222fbc00eb470c104602be262b97c9c8c7be7a2vbendebset -e 13a222fbc00eb470c104602be262b97c9c8c7be7a2vbendeb 14445925fe0f11280c585879247eada43de32090caGaurav Shahreturn_code=0 15445925fe0f11280c585879247eada43de32090caGaurav ShahTEST_FILE=${TESTCASE_DIR}/test_file 16322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah 17322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shahfunction test_signatures { 18322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah algorithmcounter=0 198bf29d8ea10392c03f8d11561a4e63182f6211a3Gaurav Shah for keylen in ${key_lengths[@]} 20322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah do 21322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah for hashalgo in ${hash_algos[@]} 22322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah do 2308df9b88a36b7a351305a06b2849c5fcdac54135Gaurav Shah echo -e "For ${COL_YELLOW}RSA-$keylen and $hashalgo${COL_STOP}:" 243e3790d00827e75d39b77a14bca2756a14a51b3cBill Richardson ${BIN_DIR}/verify_data $algorithmcounter \ 25445925fe0f11280c585879247eada43de32090caGaurav Shah ${TESTKEY_DIR}/key_rsa${keylen}.keyb \ 26445925fe0f11280c585879247eada43de32090caGaurav Shah ${TEST_FILE}.rsa${keylen}_${hashalgo}.sig \ 27445925fe0f11280c585879247eada43de32090caGaurav Shah ${TEST_FILE} 281a055adf7bb61ef239e554441defc13503eb2b51Gaurav Shah if [ $? -ne 0 ] 29a222fbc00eb470c104602be262b97c9c8c7be7a2vbendeb then 301a055adf7bb61ef239e554441defc13503eb2b51Gaurav Shah return_code=255 311a055adf7bb61ef239e554441defc13503eb2b51Gaurav Shah fi 32322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah let algorithmcounter=algorithmcounter+1 33322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah done 34322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah done 357d122e2a47145ef535163744daa55cec54e12b16Gaurav Shah echo -e "Peforming ${COL_YELLOW}PKCS #1 v1.5 Padding Tests${COL_STOP}..." 36445925fe0f11280c585879247eada43de32090caGaurav Shah ${TEST_DIR}/rsa_padding_test ${TESTKEY_DIR}/rsa_padding_test_pubkey.keyb 37322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah} 38322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah 39445925fe0f11280c585879247eada43de32090caGaurav Shahcheck_test_keys 40322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shahecho "Testing signature verification..." 41322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shahtest_signatures 42322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah 431a055adf7bb61ef239e554441defc13503eb2b51Gaurav Shahexit $return_code 44322536d2f9d30f42218cc9f2ab40574557da8a9Gaurav Shah 45