tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

aes.sh (2937B)


      1 #!/bin/sh
      2 #
      3 # This Source Code Form is subject to the terms of the Mozilla Public
      4 # License, v. 2.0. If a copy of the MPL was not distributed with this
      5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
      6 #
      7 #
      8 # A Bourne shell script for running the NIST AES Algorithm Validation Suite
      9 #
     10 # Before you run the script, set your PATH, LD_LIBRARY_PATH, ... environment
     11 # variables appropriately so that the fipstest command and the NSPR and NSS
     12 # shared libraries/DLLs are on the search path.  Then run this script in the
     13 # directory where the REQUEST (.req) files reside.  The script generates the
     14 # RESPONSE (.rsp) files in the same directory.
     15 
     16 BASEDIR=${1-.}
     17 TESTDIR=${BASEDIR}/AES
     18 COMMAND=${2-run}
     19 REQDIR=${TESTDIR}/req
     20 RSPDIR=${TESTDIR}/resp
     21 
     22 cbc_kat_requests="
     23 CBCGFSbox128.req
     24 CBCGFSbox192.req
     25 CBCGFSbox256.req
     26 CBCKeySbox128.req
     27 CBCKeySbox192.req
     28 CBCKeySbox256.req
     29 CBCVarKey128.req
     30 CBCVarKey192.req
     31 CBCVarKey256.req
     32 CBCVarTxt128.req
     33 CBCVarTxt192.req
     34 CBCVarTxt256.req
     35 "
     36 
     37 cbc_mct_requests="
     38 CBCMCT128.req
     39 CBCMCT192.req
     40 CBCMCT256.req
     41 "
     42 
     43 cbc_mmt_requests="
     44 CBCMMT128.req
     45 CBCMMT192.req
     46 CBCMMT256.req
     47 "
     48 
     49 ecb_kat_requests="
     50 ECBGFSbox128.req
     51 ECBGFSbox192.req
     52 ECBGFSbox256.req
     53 ECBKeySbox128.req
     54 ECBKeySbox192.req
     55 ECBKeySbox256.req
     56 ECBVarKey128.req
     57 ECBVarKey192.req
     58 ECBVarKey256.req
     59 ECBVarTxt128.req
     60 ECBVarTxt192.req
     61 ECBVarTxt256.req
     62 "
     63 
     64 ecb_mct_requests="
     65 ECBMCT128.req
     66 ECBMCT192.req
     67 ECBMCT256.req
     68 "
     69 
     70 ecb_mmt_requests="
     71 ECBMMT128.req
     72 ECBMMT192.req
     73 ECBMMT256.req
     74 "
     75 
     76 if [ ${COMMAND} = "verify" ]; then
     77    result=0;
     78    for request in $cbc_kat_requests $cbc_mct_requests $cbc_mmt_requests $ecb_kat_requests $ecb_mct_requests $ecb_mmt_requests; do
     79 sh ./validate1.sh ${TESTDIR} $request
     80 last_result=$?
     81 result=`expr $result + $last_result`
     82    done
     83    exit $result
     84 fi
     85 
     86 test -d "${RSPDIR}" || mkdir "${RSPDIR}"
     87 
     88 for request in $cbc_kat_requests; do
     89    response=`echo $request | sed -e "s/req/rsp/"`
     90    echo $request $response
     91    fipstest aes kat cbc ${REQDIR}/$request > ${RSPDIR}/$response
     92 done
     93 for request in $cbc_mct_requests; do
     94    response=`echo $request | sed -e "s/req/rsp/"`
     95    echo $request $response
     96    fipstest aes mct cbc ${REQDIR}/$request > ${RSPDIR}/$response
     97 done
     98 for request in $cbc_mmt_requests; do
     99    response=`echo $request | sed -e "s/req/rsp/"`
    100    echo $request $response
    101    fipstest aes mmt cbc ${REQDIR}/$request > ${RSPDIR}/$response
    102 done
    103 for request in $ecb_kat_requests; do
    104    response=`echo $request | sed -e "s/req/rsp/"`
    105    echo $request $response
    106    fipstest aes kat ecb ${REQDIR}/$request > ${RSPDIR}/$response
    107 done
    108 for request in $ecb_mct_requests; do
    109    response=`echo $request | sed -e "s/req/rsp/"`
    110    echo $request $response
    111    fipstest aes mct ecb ${REQDIR}/$request > ${RSPDIR}/$response
    112 done
    113 for request in $ecb_mmt_requests; do
    114    response=`echo $request | sed -e "s/req/rsp/"`
    115    echo $request $response
    116    fipstest aes mmt ecb ${REQDIR}/$request > ${RSPDIR}/$response
    117 done
    118 exit 0