| These scripts are used to run fipstest on a directory of CAVS vectors. |
| |
| individual cipher scripts: |
| aesgcm.sh aes.sh dsa.sh ecdsa.sh hmac.sh ike.sh kas.sh |
| kbkdf.sh rng.sh rsa.sh sha.sh tdea.sh tls.sh |
| |
| Each individual cipher script handles all the tests in a particular directory. |
| The scripts have 2 modes: |
| 1) run [default] which generates the .rsp file from the .req file. |
| 2) verify which verify the generated .req file, either from a pregenerated |
| .fax file, or by running the appropriate fipstest verify function. The latter |
| is used for output that's non-deterministic (like randomly generated keys, or |
| signatures with random elements in them like DSA). |
| |
| The verify scripts return 0 on success and non-zero on failure. |
| |
| The validate1.sh script is used by these individual cipher scripts to make |
| sure .rsp and .fax files are identical, sans some expected differences like |
| white space or comment differences. It returns 0 on success or non-zero on |
| failure. |
| |
| When the scripts use fipstest to validate a .resp file, it uses grep to look |
| for failure cases. grep returns '1' if no failures are found and '1' if |
| failures or found. The scripts switches this back to 0 for success and 1 for |
| failure with the command 'test 1 = $?` which returns 0 if $? is 1 and 1 if $? |
| is 0. |
| |
| To run and individual cipher test, just type: |
| ./{script}.sh {path-to-cavs-root} |
| |
| to verify with an individual cipher test, just type: |
| ./{script}.sh {path-to-cavs-root} verify |
| |
| You can run all the cipher scripts with the runtest.sh: |
| ./runtest.sh {path-to-cavs-root} |
| |
| And you can verify the result with: |
| ./runtest.sh {path-to-cavs-root} verify |
| Or |
| ./validate.sh {patch-to-cavs-root} |
| |