README (1665B)
1 These scripts are used to run fipstest on a directory of CAVS vectors. 2 3 individual cipher scripts: 4 aesgcm.sh aes.sh dsa.sh ecdsa.sh hmac.sh ike.sh kas.sh 5 kbkdf.sh rng.sh rsa.sh sha.sh tdea.sh tls.sh 6 7 Each individual cipher script handles all the tests in a particular directory. 8 The scripts have 2 modes: 9 1) run [default] which generates the .rsp file from the .req file. 10 2) verify which verify the generated .req file, either from a pregenerated 11 .fax file, or by running the appropriate fipstest verify function. The latter 12 is used for output that's non-deterministic (like randomly generated keys, or 13 signatures with random elements in them like DSA). 14 15 The verify scripts return 0 on success and non-zero on failure. 16 17 The validate1.sh script is used by these individual cipher scripts to make 18 sure .rsp and .fax files are identical, sans some expected differences like 19 white space or comment differences. It returns 0 on success or non-zero on 20 failure. 21 22 When the scripts use fipstest to validate a .resp file, it uses grep to look 23 for failure cases. grep returns '1' if no failures are found and '1' if 24 failures or found. The scripts switches this back to 0 for success and 1 for 25 failure with the command 'test 1 = $?` which returns 0 if $? is 1 and 1 if $? 26 is 0. 27 28 To run and individual cipher test, just type: 29 ./{script}.sh {path-to-cavs-root} 30 31 to verify with an individual cipher test, just type: 32 ./{script}.sh {path-to-cavs-root} verify 33 34 You can run all the cipher scripts with the runtest.sh: 35 ./runtest.sh {path-to-cavs-root} 36 37 And you can verify the result with: 38 ./runtest.sh {path-to-cavs-root} verify 39 Or 40 ./validate.sh {patch-to-cavs-root} 41