mirror_zfs/tests/zfs-tests/include
Rob Norris 88b0594f93 ZTS: ICP encryption tests
This commit adds tests that ensure that the ICP crypto_encrypt() and
crypto_decrypt() produce the correct results for all implementations
available on this platform.

The actual ZTS scripts are simple drivers for the crypto_test program in
it's "correctness" mode. This mode takes a file full of test vectors
(inputs and expected outputs), runs them, and checks that the results
are expected. It will run the tests for each implementation of the
algorithm provided by the ICP.

The test vectors are taken from Project Wycheproof, which provides a
huge number of tests, including exercising many edge cases and common
implementation mistakes. These tests are provided are JSON files, so a
program is included here to convert them into a simpler line-based
format for crypto_test to consume.

crypto_test also has a "performance" mode, which will run simple
benchmarks against all implementations provded by the ICP and output
them for comparison. This is not used by ZTS, but is available to assist
with development of new implementations of the underlying primitives.

Thanks-to: Joel Low <joel@joelsplace.sg>
Sponsored-by: https://despairlabs.com/sponsor/
Signed-off-by: Rob Norris <robn@despairlabs.com>
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Reviewed-by: Tino Reichardt <milky-zfs@mcmilk.de>
Reviewed-by: Attila Fülöp <attila@fueloep.org>
2025-02-25 17:29:57 -08:00
..
.gitignore Add zpool events tests 2017-05-22 12:34:42 -04:00
blkdev.shlib ZTS: Remove non-standard awk hex numbers usage 2024-12-29 11:17:27 -08:00
commands.cfg ZTS: ICP encryption tests 2025-02-25 17:29:57 -08:00
default.cfg.in Allowing PERFPOOL to be defined by zfs-test users 2024-02-09 10:02:46 -08:00
kstat.shlib ZTS: reimplement kstat helper function 2025-01-21 10:12:07 -08:00
libtest.shlib ZTS: remove get_arcstat 2025-01-21 10:13:12 -08:00
math.shlib Block cloning tests. 2023-12-26 12:01:53 -08:00
properties.shlib snapdir: add 'disabled' value to make .zfs inaccessible 2024-10-02 09:12:02 -07:00
tunables.cfg Defer resilver only when progress is above a threshold 2024-10-04 10:41:17 -07:00
zpool_script.shlib tests: review every awk(1) invocation 2022-04-01 17:57:55 -07:00