From 1634b84f2992d8d175d926c1cdb4c915a3a0dc51 Mon Sep 17 00:00:00 2001 From: Anjan Roy Date: Sun, 4 Feb 2024 15:47:38 +0400 Subject: [PATCH] update README reflecting latest status of the project Signed-off-by: Anjan Roy --- README.md | 1967 +++++++++++++++++++++++++++++++++++------------------ 1 file changed, 1303 insertions(+), 664 deletions(-) diff --git a/README.md b/README.md index 055823f..05101cd 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,8 @@ -> **Warning** This implementation attempts to provide you with constant-timeness though it is not yet audited. If you consider using it in production, be careful ! +> [!CAUTION] +> This Ascon cipher suite implementation is conformant with Ascon specification @ https://ascon.iaik.tugraz.at/files/asconv12-nist.pdf and I also try to make it timing leakage free, using `dudect` (see https://github.com/oreparaz/dudect) -based tests, but be informed that this implementation is not yet audited. *If you consider using it in production, be careful !* # ascon -Accelerated Ascon Cipher Suite: Light Weight Cryptography +Ascon Cipher Suite: Light Weight Cryptography ## Overview @@ -22,31 +23,40 @@ Ascon-PRF | Given 16 -bytes key and N -bytes input message, this routine can be Ascon-MAC | Given 16 -bytes key and N -bytes input message, this routine can be used for computing 16 -bytes tag, during authentication phase. While during verification, received tag can be verified by locally computing 16 -bytes tag and comparing it constant-time. | Messaege authentication code function proposed in https://ia.cr/2021/1574, built using Ascon-PRF. Ascon-PRFShort | Given 16 -bytes key and <= 16 -bytes input message, to be authenticated, this routine can be used for computing a <= 16 -bytes authentication tag. This PRF scheme can be used for building a message authentication code algorithm for short input messages. | Pseudo-random function for short input messages, proposed in https://ia.cr/2021/1574. -> **Note** Ascon-{Hash, HashA, Xof, XofA} supports incremental message absorption. If all message bytes are not ready to be absorbed into hash state in a single go, one can absorb messages as they become available. One may invoke absorb routine as many times necessary, until state is finalized and ready to be squeezed. +> [!NOTE] +> Ascon Permutation-based hashing schemes are all `constexpr` functions - meaning one can evaluate Ascon-{Hash, HashA, Xof, XofA} on statically defined input message, during program compilation time itself. Read more about C++ `constexpr` functions @ https://en.cppreference.com/w/cpp/language/constexpr. See [usage](#usage) section below. -> **Note** Ascon Permutation-based hashing schemes are all `constexpr` functions - meaning one can evaluate Ascon-{Hash, HashA, Xof, XofA} on statically defined input message, during program compilation time itself. Read more about C++ `constexpr` functions @ https://en.cppreference.com/w/cpp/language/constexpr. See [usage](#usage) section below. +> [!WARNING] +> Associated data is never encrypted. AEAD scheme provides secrecy only for plain text but authenticity and integrity for both associated data and cipher text. -> **Note** Read more about AEAD [here](https://en.wikipedia.org/wiki/Authenticated_encryption). - -> **Warning** Associated data is never encrypted. AEAD scheme provides secrecy only for plain text but authenticity and integrity for both associated data and cipher text. - -> **Note** Ascon based psuedo-random function and message authentication code scheme i.e. Ascon-PRF and Ascon-MAC respectively, support incremental message absorption/ authentication and squeezing. - -> **Note** I've followed Ascon [specification](https://ascon.iaik.tugraz.at/files/asconv12-nist.pdf) and another follow-up [paper](https://eprint.iacr.org/2021/1574.pdf), describing Ascon based authentication schemes, while working on this library implementation. I suggest you also go through these specifications to better understand Ascon cipher suite. +I've followed Ascon specification @ https://ascon.iaik.tugraz.at/files/asconv12-nist.pdf ( specifying AEAD and Hashing schemes ) and another follow-up paper @ https://eprint.iacr.org/2021/1574.pdf, describing Ascon permutation -based authentication schemes, while working on this library implementation. I suggest you also go through these specifications to better understand Ascon cipher suite. ## Prerequisites - C++ compiler, with C++20 standard library, `g++`/ `clang++`. ```bash -$ clang++ --version -Ubuntu clang version 16.0.0 (1~exp5ubuntu3) +$ clang++ -v +Ubuntu clang version 17.0.2 (1~exp1ubuntu2.1) Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/bin +Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/13 +Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/13 +Candidate multilib: .;@m64 +Selected multilib: .;@m64 $ g++ --version -g++ (Ubuntu 13.1.0-2ubuntu2~23.04) 13.1.0 +Using built-in specs. +COLLECT_GCC=g++ +COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper +OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa +OFFLOAD_TARGET_DEFAULT=1 +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.2.0-4ubuntu3' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-XYspKM/gcc-13-13.2.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-XYspKM/gcc-13-13.2.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2 +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 13.2.0 (Ubuntu 13.2.0-4ubuntu3) ``` - Build tools such as `make`, `cmake`. @@ -54,28 +64,20 @@ g++ (Ubuntu 13.1.0-2ubuntu2~23.04) 13.1.0 ```bash $ make -v GNU Make 4.3 +Built for x86_64-pc-linux-gnu -$ cmake --version -cmake version 3.25.1 +$ cmake --version +cmake version 3.27.4 ``` -- `subtle` is a ( git submodule -based ) dependency of this project - used for constant-time authentication tag comparison and setting memory locations of plain text to zero bytes, in case of authentication failure. Import `subtle` by enabling git submodule in this project. - -```bash -# Assuming you've already cloned https://github.com/itzmeanjan/ascon +- For testing this library implementation, you need to globally install `google-test` library and headers. Follow this guide @ https://github.com/google/googletest/tree/main/googletest#standalone-cmake-project if you don't have it installed. +- For benchmarking this library implementation, you need to have `google-benchmark` header and library installed - ensure it's globally installed; follow this guide @ https://github.com/google/benchmark/#installation. -pushd ascon -git submodule update --init -popd -``` +> [!NOTE] +> If you are on a machine running GNU/Linux kernel and you want to measure *CPU cycles* and *cycles/ byte*, for Ascon -based constructions, you should consider building `google-benchmark` library with *libPFM* support, following this step-by-step guide @ https://gist.github.com/itzmeanjan/05dc3e946f635d00c5e0b21aae6203a7. Find more about libPFM @ https://perfmon2.sourceforge.net. -- For testing this library implementation of Ascon cipher suite, you need to globally install `google-test` library and headers. Follow [this](https://github.com/google/googletest/tree/main/googletest#standalone-cmake-project) guide if you don't have it installed. -- For benchmarking this library implementation, you need to have `google-benchmark` header and library installed - ensure it's globally installed; follow [this](https://github.com/google/benchmark/#installation) guide. -- **Note:** If you are on a machine running GNU/Linux kernel and you want to obtain following (see list below), for Ascon based constructions, you should consider building google-benchmark library with libPFM support, following [this](https://gist.github.com/itzmeanjan/05dc3e946f635d00c5e0b21aae6203a7) step-by-step guide. Find more about libPFM @ https://perfmon2.sourceforge.net. - 1) CPU cycle count. - 2) Retired instruction count. - 3) Cycles/ byte ( aka cpb ). - 4) Retired instructions/ cycle ( aka ipc ). +> [!TIP] +> Git submodule based dependencies will mostly be imported *automatically* ( i.e. when you execute build commands ), but in case that doesn't work, you can manually initialize and update them by issuing `$ git submodule update --init` from the root of this repository. ## Testing @@ -89,73 +91,71 @@ make -j ``` ```bash -[==========] Running 25 tests from 4 test suites. -[----------] Global test environment set-up. -[----------] 6 tests from AsconAEAD -[ RUN ] AsconAEAD.CorrectnessTestAscon128AEAD -[ OK ] AsconAEAD.CorrectnessTestAscon128AEAD (75 ms) -[ RUN ] AsconAEAD.KnownAnswerTestsAscon128AEAD -[ OK ] AsconAEAD.KnownAnswerTestsAscon128AEAD (0 ms) -[ RUN ] AsconAEAD.CorrectnessTestAscon128aAEAD -[ OK ] AsconAEAD.CorrectnessTestAscon128aAEAD (72 ms) -[ RUN ] AsconAEAD.KnownAnswerTestsAscon128aAEAD -[ OK ] AsconAEAD.KnownAnswerTestsAscon128aAEAD (0 ms) -[ RUN ] AsconAEAD.CorrectnessTestAscon80pqAEAD -[ OK ] AsconAEAD.CorrectnessTestAscon80pqAEAD (75 ms) -[ RUN ] AsconAEAD.KnownAnswerTestsAscon80pqAEAD -[ OK ] AsconAEAD.KnownAnswerTestsAscon80pqAEAD (0 ms) -[----------] 6 tests from AsconAEAD (226 ms total) - -[----------] 12 tests from AsconHashing -[ RUN ] AsconHashing.CompileTimeEvalAsconHash -[ OK ] AsconHashing.CompileTimeEvalAsconHash (0 ms) -[ RUN ] AsconHashing.IncrementalMessageAbsorptionAsconHash -[ OK ] AsconHashing.IncrementalMessageAbsorptionAsconHash (8 ms) -[ RUN ] AsconHashing.KnownAnswerTestsAsconHash -[ OK ] AsconHashing.KnownAnswerTestsAsconHash (3 ms) -[ RUN ] AsconHashing.CompileTimeEvalAsconHashA -[ OK ] AsconHashing.CompileTimeEvalAsconHashA (0 ms) -[ RUN ] AsconHashing.IncrementalMessageAbsorptionAsconHashA -[ OK ] AsconHashing.IncrementalMessageAbsorptionAsconHashA (6 ms) -[ RUN ] AsconHashing.KnownAnswerTestsAsconHashA -[ OK ] AsconHashing.KnownAnswerTestsAsconHashA (2 ms) -[ RUN ] AsconHashing.CompileTimeEvalAsconXof -[ OK ] AsconHashing.CompileTimeEvalAsconXof (0 ms) -[ RUN ] AsconHashing.IncrementalMessageAbsorptionSqueezingAsconXof -[ OK ] AsconHashing.IncrementalMessageAbsorptionSqueezingAsconXof (2273 ms) -[ RUN ] AsconHashing.KnownAnswerTestsAsconXof -[ OK ] AsconHashing.KnownAnswerTestsAsconXof (3 ms) -[ RUN ] AsconHashing.CompileTimeEvalAsconXofA -[ OK ] AsconHashing.CompileTimeEvalAsconXofA (0 ms) -[ RUN ] AsconHashing.IncrementalMessageAbsorptionSqueezingAsconXofA -[ OK ] AsconHashing.IncrementalMessageAbsorptionSqueezingAsconXofA (1788 ms) -[ RUN ] AsconHashing.KnownAnswerTestsAsconXofA -[ OK ] AsconHashing.KnownAnswerTestsAsconXofA (2 ms) -[----------] 12 tests from AsconHashing (4090 ms total) - -[----------] 3 tests from AsconAuth -[ RUN ] AsconAuth.KnownAnswerTestsAsconMac -[ OK ] AsconAuth.KnownAnswerTestsAsconMac (1 ms) -[ RUN ] AsconAuth.KnownAnswerTestsAsconPRF -[ OK ] AsconAuth.KnownAnswerTestsAsconPRF (1 ms) -[ RUN ] AsconAuth.KnownAnswerTestsAsconPRFShort -[ OK ] AsconAuth.KnownAnswerTestsAsconPRFShort (0 ms) -[----------] 3 tests from AsconAuth (3 ms total) - -[----------] 4 tests from AsconPermutation -[ RUN ] AsconPermutation.AsconPermWithAsconHashIV -[ OK ] AsconPermutation.AsconPermWithAsconHashIV (0 ms) -[ RUN ] AsconPermutation.AsconPermWithAsconHashAIV -[ OK ] AsconPermutation.AsconPermWithAsconHashAIV (0 ms) -[ RUN ] AsconPermutation.AsconPermWithAsconXofIV -[ OK ] AsconPermutation.AsconPermWithAsconXofIV (0 ms) -[ RUN ] AsconPermutation.AsconPermWithAsconXofAIV -[ OK ] AsconPermutation.AsconPermWithAsconXofAIV (0 ms) -[----------] 4 tests from AsconPermutation (0 ms total) - -[----------] Global test environment tear-down -[==========] 25 tests from 4 test suites ran. (4320 ms total) -[ PASSED ] 25 tests. +[25/25] AsconHashing.IncrementalMessageAbsorptionSqueezingAsconXof (472 ms) +PASSED TESTS (25/25): + 1 ms: build/tests/test.out AsconHashing.CompileTimeEvalAsconHash + 1 ms: build/tests/test.out AsconHashing.CompileTimeEvalAsconHashA + 1 ms: build/tests/test.out AsconAuth.KnownAnswerTestsAsconPRFShort + 1 ms: build/tests/test.out AsconPermutation.AsconPermWithAsconHashAIV + 1 ms: build/tests/test.out AsconPermutation.AsconPermWithAsconHashIV + 1 ms: build/tests/test.out AsconPermutation.AsconPermWithAsconXofIV + 2 ms: build/tests/test.out AsconHashing.CompileTimeEvalAsconXof + 2 ms: build/tests/test.out AsconAEAD.KnownAnswerTestsAscon128AEAD + 2 ms: build/tests/test.out AsconHashing.CompileTimeEvalAsconXofA + 3 ms: build/tests/test.out AsconAEAD.KnownAnswerTestsAscon80pqAEAD + 3 ms: build/tests/test.out AsconAEAD.KnownAnswerTestsAscon128aAEAD + 3 ms: build/tests/test.out AsconPermutation.AsconPermWithAsconXofAIV + 5 ms: build/tests/test.out AsconAuth.KnownAnswerTestsAsconPRF + 5 ms: build/tests/test.out AsconHashing.IncrementalMessageAbsorptionAsconHashA + 5 ms: build/tests/test.out AsconAuth.KnownAnswerTestsAsconMac + 6 ms: build/tests/test.out AsconHashing.IncrementalMessageAbsorptionAsconHash + 7 ms: build/tests/test.out AsconHashing.KnownAnswerTestsAsconHashA + 7 ms: build/tests/test.out AsconHashing.KnownAnswerTestsAsconXofA + 8 ms: build/tests/test.out AsconHashing.KnownAnswerTestsAsconHash + 8 ms: build/tests/test.out AsconHashing.KnownAnswerTestsAsconXof + 302 ms: build/tests/test.out AsconAEAD.CorrectnessTestAscon80pqAEAD + 302 ms: build/tests/test.out AsconAEAD.CorrectnessTestAscon128aAEAD + 306 ms: build/tests/test.out AsconAEAD.CorrectnessTestAscon128AEAD + 443 ms: build/tests/test.out AsconHashing.IncrementalMessageAbsorptionSqueezingAsconXofA + 472 ms: build/tests/test.out AsconHashing.IncrementalMessageAbsorptionSqueezingAsconXof +``` + +In case you're interested in running timing leakage tests using `dudect`, execute following + +```bash +# Can only be built and run x86_64 machine. +make dudect_test_build -j + +# Before running the constant-time tests, it's a good idea to put all CPU cores on "performance" mode. +# You may find guide @ https://github.com/google/benchmark/blob/main/docs/reducing_variance.md helpful. + +timeout 10m taskset -c 0 ./build/dudect/test_ascon128a_aead_encrypt.out +timeout 10m taskset -c 0 ./build/dudect/test_ascon128a_aead_decrypt.out +``` + +> [!NOTE] +> For now I've written timing leakage detection tests only for Ascon128a AEAD `encrypt` and `decrypt` functions. Ascon128 and Ascon80pq AEAD are not yet covered. Though remember, same Ascon mode of operation is used for all three AEAD instantiations. Hashing and authentication schemes are not yet tested for timing leakage. + +> [!TIP] +> `dudect` documentation says if `t` statistic is `< 10`, we're *probably* good, yes *probably*. You may want to read `dudect` documentation @ https://github.com/oreparaz/dudect. Also you might find the original paper @ https://ia.cr/2016/1123 interesting. + +```bash +# Ascon128a AEAD decrypt +... +meas: 112.96 M, max t: +2.66, max tau: 2.50e-04, (5/tau)^2: 4.00e+08. For the moment, maybe constant time. +meas: 109.18 M, max t: +2.69, max tau: 2.58e-04, (5/tau)^2: 3.77e+08. For the moment, maybe constant time. +meas: 109.27 M, max t: +2.70, max tau: 2.59e-04, (5/tau)^2: 3.74e+08. For the moment, maybe constant time. +meas: 117.28 M, max t: +2.62, max tau: 2.42e-04, (5/tau)^2: 4.26e+08. For the moment, maybe constant time. +meas: 109.45 M, max t: +2.64, max tau: 2.52e-04, (5/tau)^2: 3.94e+08. For the moment, maybe constant time. +meas: 109.54 M, max t: +2.64, max tau: 2.52e-04, (5/tau)^2: 3.93e+08. For the moment, maybe constant time. +meas: 109.63 M, max t: +2.62, max tau: 2.50e-04, (5/tau)^2: 4.00e+08. For the moment, maybe constant time. +meas: 113.61 M, max t: +2.64, max tau: 2.47e-04, (5/tau)^2: 4.08e+08. For the moment, maybe constant time. +meas: 113.70 M, max t: +2.69, max tau: 2.53e-04, (5/tau)^2: 3.92e+08. For the moment, maybe constant time. +meas: 113.79 M, max t: +2.72, max tau: 2.55e-04, (5/tau)^2: 3.86e+08. For the moment, maybe constant time. +meas: 113.89 M, max t: +2.73, max tau: 2.55e-04, (5/tau)^2: 3.83e+08. For the moment, maybe constant time. +meas: 113.98 M, max t: +2.71, max tau: 2.54e-04, (5/tau)^2: 3.88e+08. For the moment, maybe constant time. +meas: 114.07 M, max t: +2.70, max tau: 2.53e-04, (5/tau)^2: 3.90e+08. For the moment, maybe constant time. +meas: 114.16 M, max t: +2.73, max tau: 2.55e-04, (5/tau)^2: 3.84e+08. For the moment, maybe constant time. ``` ## Benchmarking @@ -181,564 +181,1198 @@ Following routines are benchmarked - Ascon-MAC ( authenticate/ verify ) - Ascon-PRFShort ( authenticate/ verify ) -> **Note** Benchmark recipe expects presence of `google-benchmark` header and library in `$PATH` ( so that it can be found by the compiler ). +> [!CAUTION] +> Ensure that you've disabled CPU frequency scaling, when benchmarking, following this guide @ https://github.com/google/benchmark/blob/main/docs/reducing_variance.md. -> **Warning** Ensure that you've disabled CPU frequency scaling, when benchmarking routines, following [this](https://github.com/google/benchmark/blob/main/docs/reducing_variance.md) guide. +### On 12th Gen Intel(R) Core(TM) i7-1260P -> **Note** `make perf -j` - was issued when collecting following benchmark statistics. Notice, columns such as *cycles*, *cycles/ byte*, *instructions* and *instructions/ cycle*. Follow [this](https://github.com/google/benchmark/blob/main/docs/perf_counters.md) for more details. +Compiled with **gcc version 13.2.0 (Ubuntu 13.2.0-4ubuntu3).** -### On 12th Gen Intel(R) Core(TM) i7-1260P ( Compiled with Clang-16.0.0 ) +```bash +$ uname -srm +Linux 6.5.0-15-generic x86_64 +``` ```bash -2023-10-03T15:22:08+05:30 +2024-02-04T15:03:47+04:00 Running ./build/perfs/perf.out -Run on (16 X 2500 MHz CPU s) +Run on (16 X 709.949 MHz CPU s) CPU Caches: L1 Data 48 KiB (x8) L1 Instruction 32 KiB (x8) L2 Unified 1280 KiB (x8) L3 Unified 18432 KiB (x1) -Load Average: 0.38, 0.45, 0.46 ----------------------------------------------------------------------------------------------------------------------------------------------------------- -Benchmark Time CPU Iterations CYCLES CYCLES/ BYTE INSTRUCTIONS INSTRUCTIONS/ CYCLE bytes_per_second ----------------------------------------------------------------------------------------------------------------------------------------------------------- -ascon_mac_verify/512_mean 722 ns 722 ns 8 3.27953k 6.02855 11.18k 3.40904 718.809Mi/s -ascon_mac_verify/512_median 728 ns 728 ns 8 3.27575k 6.0216 11.18k 3.41296 712.679Mi/s -ascon_mac_verify/512_stddev 16.1 ns 16.1 ns 8 6.94449 0.0127656 226.03u 7.20528m 16.1742Mi/s -ascon_mac_verify/512_cv 2.24 % 2.24 % 8 0.21% 0.21% 0.00% 0.21% 2.25% -ascon_mac_verify/1024_mean 1333 ns 1333 ns 8 6.10774k 5.78385 20.62k 3.37617 755.768Mi/s -ascon_mac_verify/1024_median 1318 ns 1318 ns 8 6.11112k 5.78704 20.62k 3.37418 764.32Mi/s -ascon_mac_verify/1024_stddev 29.6 ns 29.6 ns 8 40.0692 0.0379443 260.997u 0.0223061 16.5787Mi/s -ascon_mac_verify/1024_cv 2.22 % 2.22 % 8 0.66% 0.66% 0.00% 0.66% 2.19% -ascon80pq_aead_encrypt/256/32_mean 1024 ns 1024 ns 8 4.78402k 16.6112 12.084k 2.52591 268.154Mi/s -ascon80pq_aead_encrypt/256/32_median 1024 ns 1024 ns 8 4.78434k 16.6123 12.084k 2.52574 268.273Mi/s -ascon80pq_aead_encrypt/256/32_stddev 1.81 ns 1.80 ns 8 0.95414 3.31299m 0 503.817u 483.559Ki/s -ascon80pq_aead_encrypt/256/32_cv 0.18 % 0.18 % 8 0.02% 0.02% 0.00% 0.02% 0.18% -ascon_xofa/512/64_mean 1867 ns 1867 ns 8 8.3434k 14.4851 29.929k 3.58715 294.496Mi/s -ascon_xofa/512/64_median 1889 ns 1889 ns 8 8.34256k 14.4836 29.929k 3.58751 290.803Mi/s -ascon_xofa/512/64_stddev 51.5 ns 51.5 ns 8 8.84461 0.0153552 0 3.80177m 8.33169Mi/s -ascon_xofa/512/64_cv 2.76 % 2.76 % 8 0.11% 0.11% 0.00% 0.11% 2.83% -ascon_prf/64/64_mean 300 ns 300 ns 8 1.36778k 10.6858 4.595k 3.35948 406.514Mi/s -ascon_prf/64/64_median 303 ns 303 ns 8 1.36891k 10.6946 4.595k 3.35668 402.957Mi/s -ascon_prf/64/64_stddev 5.71 ns 5.69 ns 8 3.74051 0.0292227 0 9.20776m 7.76252Mi/s -ascon_prf/64/64_cv 1.90 % 1.90 % 8 0.27% 0.27% 0.00% 0.27% 1.91% -ascon_prf/128/16_mean 263 ns 263 ns 8 1.20581k 8.3737 4.113k 3.41098 521.8Mi/s -ascon_prf/128/16_median 261 ns 261 ns 8 1.20539k 8.37073 4.113k 3.41219 526.118Mi/s -ascon_prf/128/16_stddev 5.90 ns 5.91 ns 8 1.28728 8.93942m 92.2765u 3.63638m 11.6103Mi/s -ascon_prf/128/16_cv 2.24 % 2.24 % 8 0.11% 0.11% 0.00% 0.11% 2.23% -ascon_mac_verify/128_mean 269 ns 269 ns 8 1.21241k 7.57758 4.1k 3.38169 567.001Mi/s -ascon_mac_verify/128_median 270 ns 270 ns 8 1.21226k 7.5766 4.1k 3.38212 564.265Mi/s -ascon_mac_verify/128_stddev 4.36 ns 4.36 ns 8 1.54156 9.63474m 0 4.29861m 9.3874Mi/s -ascon_mac_verify/128_cv 1.62 % 1.62 % 8 0.13% 0.13% 0.00% 0.13% 1.66% -ascon128_aead_encrypt/2048/32_mean 6678 ns 6677 ns 8 31.1177k 14.9604 76.558k 2.46027 297.07Mi/s -ascon128_aead_encrypt/2048/32_median 6670 ns 6669 ns 8 31.1152k 14.9592 76.558k 2.46047 297.43Mi/s -ascon128_aead_encrypt/2048/32_stddev 19.3 ns 19.3 ns 8 17.1549 8.24757m 0 1.35598m 878.462Ki/s -ascon128_aead_encrypt/2048/32_cv 0.29 % 0.29 % 8 0.06% 0.06% 0.00% 0.06% 0.29% -ascon_prf/128/32_mean 303 ns 303 ns 8 1.37505k 8.59407 4.667k 3.39406 504.255Mi/s -ascon_prf/128/32_median 305 ns 305 ns 8 1.37468k 8.59172 4.667k 3.39498 500.655Mi/s -ascon_prf/128/32_stddev 7.00 ns 7.00 ns 8 1.71264 0.010704 65.2493u 4.2228m 11.7217Mi/s -ascon_prf/128/32_cv 2.31 % 2.31 % 8 0.12% 0.12% 0.00% 0.12% 2.32% -ascon_prfs_verify/1_mean 53.6 ns 53.6 ns 8 249.322 14.666 681 2.73141 302.698Mi/s -ascon_prfs_verify/1_median 53.5 ns 53.5 ns 8 249.446 14.6733 681 2.73005 303.153Mi/s -ascon_prfs_verify/1_stddev 0.318 ns 0.318 ns 8 0.203707 0.0119828 8.15617u 2.23261m 1.79096Mi/s -ascon_prfs_verify/1_cv 0.59 % 0.59 % 8 0.08% 0.08% 0.00% 0.08% 0.59% -ascon80pq_aead_encrypt/2048/32_mean 6674 ns 6674 ns 8 31.1189k 14.961 76.596k 2.4614 297.226Mi/s -ascon80pq_aead_encrypt/2048/32_median 6671 ns 6670 ns 8 31.1195k 14.9613 76.596k 2.46135 297.396Mi/s -ascon80pq_aead_encrypt/2048/32_stddev 22.8 ns 22.7 ns 8 18.7733 9.02563m 0 1.48459m 1.00819Mi/s -ascon80pq_aead_encrypt/2048/32_cv 0.34 % 0.34 % 8 0.06% 0.06% 0.00% 0.06% 0.34% -ascon80pq_aead_decrypt/2048/32_mean 6621 ns 6621 ns 8 30.8454k 14.8295 77.409k 2.50958 299.623Mi/s -ascon80pq_aead_decrypt/2048/32_median 6615 ns 6614 ns 8 30.8351k 14.8246 77.409k 2.51042 299.914Mi/s -ascon80pq_aead_decrypt/2048/32_stddev 23.9 ns 23.9 ns 8 28.7211 0.0138082 0 2.33582m 1.0793Mi/s -ascon80pq_aead_decrypt/2048/32_cv 0.36 % 0.36 % 8 0.09% 0.09% 0.00% 0.09% 0.36% -ascon128_aead_decrypt/512/32_mean 1821 ns 1820 ns 8 8.49966k 15.6244 21.523k 2.53222 284.983Mi/s -ascon128_aead_decrypt/512/32_median 1819 ns 1819 ns 8 8.49969k 15.6244 21.523k 2.53221 285.224Mi/s -ascon128_aead_decrypt/512/32_stddev 6.00 ns 6.00 ns 8 1.14449 2.10384m 452.061u 340.966u 957.709Ki/s -ascon128_aead_decrypt/512/32_cv 0.33 % 0.33 % 8 0.01% 0.01% 0.00% 0.01% 0.33% -ascon80pq_aead_decrypt/128/32_mean 625 ns 625 ns 8 2.91583k 18.2239 7.599k 2.60612 244.152Mi/s -ascon80pq_aead_decrypt/128/32_median 625 ns 625 ns 8 2.91575k 18.2234 7.599k 2.60619 244.23Mi/s -ascon80pq_aead_decrypt/128/32_stddev 1.86 ns 1.85 ns 8 0.626848 3.9178m 0 560.185u 740.521Ki/s -ascon80pq_aead_decrypt/128/32_cv 0.30 % 0.30 % 8 0.02% 0.02% 0.00% 0.02% 0.30% -ascon128_aead_decrypt/4096/32_mean 13020 ns 13019 ns 8 60.739k 14.7139 151.835k 2.4998 302.383Mi/s -ascon128_aead_decrypt/4096/32_median 13002 ns 13001 ns 8 60.741k 14.7144 151.835k 2.49971 302.802Mi/s -ascon128_aead_decrypt/4096/32_stddev 45.3 ns 45.4 ns 8 38.7569 9.38878m 0 1.5949m 1.04772Mi/s -ascon128_aead_decrypt/4096/32_cv 0.35 % 0.35 % 8 0.06% 0.06% 0.00% 0.06% 0.35% -ascon_hash/4096_mean 19488 ns 19486 ns 8 86.3425k 20.9163 301.548k 3.49246 202.034Mi/s -ascon_hash/4096_median 19508 ns 19505 ns 8 86.5676k 20.9708 302.357k 3.49269 201.838Mi/s -ascon_hash/4096_stddev 127 ns 127 ns 8 662.374 0.160459 2.28976k 1.06385m 1.31734Mi/s -ascon_hash/4096_cv 0.65 % 0.65 % 8 0.77% 0.77% 0.76% 0.03% 0.65% -ascon_xofa/4096/32_mean 13102 ns 13101 ns 8 58.3781k 14.142 211.601k 3.62467 300.843Mi/s -ascon_xofa/4096/32_median 13372 ns 13371 ns 8 58.3483k 14.1348 211.601k 3.62652 294.431Mi/s -ascon_xofa/4096/32_stddev 476 ns 476 ns 8 73.7804 0.0178732 0 4.5722m 11.1196Mi/s -ascon_xofa/4096/32_cv 3.63 % 3.63 % 8 0.13% 0.13% 0.00% 0.13% 3.70% -ascon80pq_aead_encrypt/128/32_mean 621 ns 621 ns 8 2.89799k 18.1125 7.476k 2.57972 245.569Mi/s -ascon80pq_aead_encrypt/128/32_median 621 ns 621 ns 8 2.89791k 18.1119 7.476k 2.57979 245.771Mi/s -ascon80pq_aead_encrypt/128/32_stddev 2.17 ns 2.17 ns 8 0.506901 3.16813m 92.2765u 451.186u 874.429Ki/s -ascon80pq_aead_encrypt/128/32_cv 0.35 % 0.35 % 8 0.02% 0.02% 0.00% 0.02% 0.35% -ascon_prf/1024/32_mean 1386 ns 1386 ns 8 6.246k 5.91478 21.187k 3.39227 726.903Mi/s -ascon_prf/1024/32_median 1394 ns 1394 ns 8 6.27767k 5.94476 21.187k 3.37498 722.425Mi/s -ascon_prf/1024/32_stddev 26.3 ns 26.3 ns 8 48.8602 0.0462691 0 0.0266361 14.0187Mi/s -ascon_prf/1024/32_cv 1.90 % 1.90 % 8 0.78% 0.78% 0.00% 0.79% 1.93% -ascon_mac_verify/2048_mean 2575 ns 2575 ns 8 11.6578k 5.60472 39.5k 3.3885 770.597Mi/s -ascon_mac_verify/2048_median 2603 ns 2603 ns 8 11.6847k 5.61765 39.5k 3.38049 762.106Mi/s -ascon_mac_verify/2048_stddev 53.9 ns 53.8 ns 8 98.0834 0.0471555 904.121u 0.0287191 16.2244Mi/s -ascon_mac_verify/2048_cv 2.09 % 2.09 % 8 0.84% 0.84% 0.00% 0.85% 2.11% -ascon_xofa/64/32_mean 343 ns 343 ns 8 1.52287k 15.8632 5.465k 3.58863 267.119Mi/s -ascon_xofa/64/32_median 347 ns 347 ns 8 1.52238k 15.8581 5.465k 3.58979 263.941Mi/s -ascon_xofa/64/32_stddev 9.75 ns 9.76 ns 8 1.71194 0.0178327 0 4.03036m 7.81949Mi/s -ascon_xofa/64/32_cv 2.84 % 2.85 % 8 0.11% 0.11% 0.00% 0.11% 2.93% -ascon128a_aead_decrypt/512/32_mean 1101 ns 1101 ns 8 4.95727k 9.11263 16.501k 3.32865 471.4Mi/s -ascon128a_aead_decrypt/512/32_median 1111 ns 1110 ns 8 4.9575k 9.11306 16.501k 3.32849 467.195Mi/s -ascon128a_aead_decrypt/512/32_stddev 19.2 ns 19.2 ns 8 2.36278 4.34335m 0 1.58685m 8.36201Mi/s -ascon128a_aead_decrypt/512/32_cv 1.75 % 1.75 % 8 0.05% 0.05% 0.00% 0.05% 1.77% -ascon_prfs_authenticate/1_mean 50.8 ns 50.8 ns 8 236.022 13.8836 669 2.83449 319.071Mi/s -ascon_prfs_authenticate/1_median 50.8 ns 50.8 ns 8 236.043 13.8849 669 2.83423 319.234Mi/s -ascon_prfs_authenticate/1_stddev 0.233 ns 0.233 ns 8 0.159863 9.40368m 8.15617u 1.91948m 1.45598Mi/s -ascon_prfs_authenticate/1_cv 0.46 % 0.46 % 8 0.07% 0.07% 0.00% 0.07% 0.46% -ascon_xof/2048/64_mean 9825 ns 9824 ns 8 44.4241k 21.0341 154.857k 3.48589 205.138Mi/s -ascon_xof/2048/64_median 9914 ns 9914 ns 8 44.4265k 21.0353 154.857k 3.48569 203.164Mi/s -ascon_xof/2048/64_stddev 256 ns 256 ns 8 56.3647 0.0266878 2.08798m 4.41934m 5.39797Mi/s -ascon_xof/2048/64_cv 2.61 % 2.61 % 8 0.13% 0.13% 0.00% 0.13% 2.63% -ascon_xof/1024/32_mean 4902 ns 4902 ns 8 22.2551k 21.0749 77.745k 3.49335 205.614Mi/s -ascon_xof/1024/32_median 4877 ns 4876 ns 8 22.2528k 21.0727 77.745k 3.49372 206.618Mi/s -ascon_xof/1024/32_stddev 147 ns 147 ns 8 8.13577 7.70433m 1.04399m 1.2764m 6.12224Mi/s -ascon_xof/1024/32_cv 2.99 % 2.99 % 8 0.04% 0.04% 0.00% 0.04% 2.98% -ascon_prf/4096/64_mean 5121 ns 5121 ns 8 23.1433k 5.5633 78.935k 3.41087 775.212Mi/s -ascon_prf/4096/64_median 5174 ns 5174 ns 8 23.0335k 5.53689 78.935k 3.42697 766.834Mi/s -ascon_prf/4096/64_stddev 132 ns 132 ns 8 173.538 0.0417159 1.04399m 0.0254849 20.1371Mi/s -ascon_prf/4096/64_cv 2.57 % 2.57 % 8 0.75% 0.75% 0.00% 0.75% 2.60% -ascon_prf/4096/16_mean 5068 ns 5068 ns 8 22.6969k 5.51968 77.273k 3.40478 774.133Mi/s -ascon_prf/4096/16_median 5080 ns 5080 ns 8 22.6996k 5.52033 77.273k 3.40431 771.986Mi/s -ascon_prf/4096/16_stddev 103 ns 103 ns 8 195.126 0.0474527 0 0.0292683 15.8498Mi/s -ascon_prf/4096/16_cv 2.02 % 2.02 % 8 0.86% 0.86% 0.00% 0.86% 2.05% -ascon_prfs_verify/8_mean 43.8 ns 43.8 ns 8 195.963 8.16511 678 3.45987 523.07Mi/s -ascon_prfs_verify/8_median 44.3 ns 44.3 ns 8 195.931 8.16379 678 3.4604 516.83Mi/s -ascon_prfs_verify/8_stddev 1.06 ns 1.06 ns 8 0.625978 0.0260824 11.5346u 0.0110194 13.0077Mi/s -ascon_prfs_verify/8_cv 2.42 % 2.42 % 8 0.32% 0.32% 0.00% 0.32% 2.49% -ascon128a_aead_encrypt/4096/32_mean 7628 ns 7627 ns 8 34.8043k 8.43128 118.048k 3.39176 516.424Mi/s -ascon128a_aead_encrypt/4096/32_median 7596 ns 7595 ns 8 34.8k 8.43024 118.048k 3.39218 518.457Mi/s -ascon128a_aead_encrypt/4096/32_stddev 195 ns 195 ns 8 16.3661 3.96466m 0 1.59445m 13.1233Mi/s -ascon128a_aead_encrypt/4096/32_cv 2.56 % 2.56 % 8 0.05% 0.05% 0.00% 0.05% 2.54% -ascon128a_aead_encrypt/2048/32_mean 3876 ns 3875 ns 8 17.7819k 8.54899 60.32k 3.39222 512.151Mi/s -ascon128a_aead_encrypt/2048/32_median 3821 ns 3821 ns 8 17.7855k 8.55072 60.32k 3.39153 519.118Mi/s -ascon128a_aead_encrypt/2048/32_stddev 97.3 ns 97.3 ns 8 9.08792 4.36919m 738.212u 1.73448m 12.5846Mi/s -ascon128a_aead_encrypt/2048/32_cv 2.51 % 2.51 % 8 0.05% 0.05% 0.00% 0.05% 2.46% -ascon_mac_authenticate/512_mean 726 ns 726 ns 8 3.27389k 6.20054 11.164k 3.41003 694.099Mi/s -ascon_mac_authenticate/512_median 733 ns 733 ns 8 3.26984k 6.19288 11.164k 3.41423 687.021Mi/s -ascon_mac_authenticate/512_stddev 19.4 ns 19.4 ns 8 7.46874 0.0141453 184.553u 7.77193m 18.7357Mi/s -ascon_mac_authenticate/512_cv 2.68 % 2.67 % 8 0.23% 0.23% 0.00% 0.23% 2.70% -ascon_prf/1024/16_mean 1363 ns 1363 ns 8 6.06848k 5.83508 20.633k 3.40024 727.706Mi/s -ascon_prf/1024/16_median 1363 ns 1363 ns 8 6.06673k 5.83339 20.633k 3.40118 727.858Mi/s -ascon_prf/1024/16_stddev 7.34 ns 7.35 ns 8 50.835 0.0488798 0 0.0284804 3.91691Mi/s -ascon_prf/1024/16_cv 0.54 % 0.54 % 8 0.84% 0.84% 0.00% 0.84% 0.54% -ascon128a_aead_encrypt/1024/32_mean 2062 ns 2062 ns 8 9.27693k 8.78497 31.456k 3.39078 488.667Mi/s -ascon128a_aead_encrypt/1024/32_median 2086 ns 2086 ns 8 9.27629k 8.78437 31.456k 3.39101 482.877Mi/s -ascon128a_aead_encrypt/1024/32_stddev 45.5 ns 45.5 ns 8 5.50904 5.21689m 521.995u 2.01293m 10.9636Mi/s -ascon128a_aead_encrypt/1024/32_cv 2.21 % 2.21 % 8 0.06% 0.06% 0.00% 0.06% 2.24% -ascon_xofa/2048/32_mean 6715 ns 6715 ns 8 29.5012k 14.1833 106.897k 3.62348 295.572Mi/s -ascon_xofa/2048/32_median 6746 ns 6746 ns 8 29.4994k 14.1824 106.897k 3.6237 294.043Mi/s -ascon_xofa/2048/32_stddev 165 ns 166 ns 8 15.0961 7.25775m 0 1.85343m 7.63445Mi/s -ascon_xofa/2048/32_cv 2.46 % 2.47 % 8 0.05% 0.05% 0.00% 0.05% 2.58% -ascon_xof/512/32_mean 2572 ns 2571 ns 8 11.5474k 21.2268 40.305k 3.4904 201.882Mi/s -ascon_xof/512/32_median 2590 ns 2589 ns 8 11.5466k 21.2254 40.305k 3.49063 200.363Mi/s -ascon_xof/512/32_stddev 65.7 ns 65.7 ns 8 3.25655 5.98631m 0 983.904u 5.24932Mi/s -ascon_xof/512/32_cv 2.55 % 2.55 % 8 0.03% 0.03% 0.00% 0.03% 2.60% -ascon_prfs_verify/2_mean 53.8 ns 53.8 ns 8 249.816 13.8786 683 2.73402 319.321Mi/s -ascon_prfs_verify/2_median 53.6 ns 53.6 ns 8 249.745 13.8747 683 2.73479 320.411Mi/s -ascon_prfs_verify/2_stddev 0.395 ns 0.395 ns 8 0.222149 0.0123416 0 2.4307m 2.33111Mi/s -ascon_prfs_verify/2_cv 0.74 % 0.74 % 8 0.09% 0.09% 0.00% 0.09% 0.73% -ascon128a_aead_decrypt/4096/32_mean 7512 ns 7512 ns 8 34.047k 8.24781 113.213k 3.32521 524.418Mi/s -ascon128a_aead_decrypt/4096/32_median 7576 ns 7575 ns 8 34.0519k 8.24902 113.213k 3.32472 519.684Mi/s -ascon128a_aead_decrypt/4096/32_stddev 200 ns 200 ns 8 41.2216 9.98586m 1.47642m 4.02639m 14.0367Mi/s -ascon128a_aead_decrypt/4096/32_cv 2.66 % 2.66 % 8 0.12% 0.12% 0.00% 0.12% 2.68% -ascon80pq_aead_decrypt/1024/32_mean 3422 ns 3421 ns 8 15.9389k 15.0936 40.177k 2.52069 294.358Mi/s -ascon80pq_aead_decrypt/1024/32_median 3417 ns 3416 ns 8 15.9398k 15.0945 40.177k 2.52055 294.777Mi/s -ascon80pq_aead_decrypt/1024/32_stddev 11.6 ns 11.6 ns 8 3.15012 2.98307m 0 498.197u 1015.31Ki/s -ascon80pq_aead_decrypt/1024/32_cv 0.34 % 0.34 % 8 0.02% 0.02% 0.00% 0.02% 0.34% -ascon128_aead_encrypt/128/32_mean 624 ns 624 ns 8 2.90399k 18.1499 7.438k 2.56131 244.653Mi/s -ascon128_aead_encrypt/128/32_median 623 ns 623 ns 8 2.90386k 18.1491 7.438k 2.56142 244.864Mi/s -ascon128_aead_encrypt/128/32_stddev 2.19 ns 2.18 ns 8 0.298418 1.86511m 0 263.182u 873.678Ki/s -ascon128_aead_encrypt/128/32_cv 0.35 % 0.35 % 8 0.01% 0.01% 0.00% 0.01% 0.35% -ascon_mac_authenticate/1024_mean 1353 ns 1353 ns 8 6.07851k 5.84472 20.604k 3.38984 733.183Mi/s -ascon_mac_authenticate/1024_median 1362 ns 1362 ns 8 6.10354k 5.86879 20.604k 3.37575 728.065Mi/s -ascon_mac_authenticate/1024_stddev 23.6 ns 23.6 ns 8 48.7925 0.0469159 0 0.0273056 12.9662Mi/s -ascon_mac_authenticate/1024_cv 1.74 % 1.74 % 8 0.80% 0.80% 0.00% 0.81% 1.77% -ascon80pq_aead_encrypt/4096/32_mean 13196 ns 13195 ns 8 61.2776k 14.8444 150.324k 2.45316 298.375Mi/s -ascon80pq_aead_encrypt/4096/32_median 13155 ns 13155 ns 8 61.2902k 14.8474 150.324k 2.45266 299.271Mi/s -ascon80pq_aead_encrypt/4096/32_stddev 136 ns 136 ns 8 36.3147 8.79717m 2.08798m 1.45431m 3.01726Mi/s -ascon80pq_aead_encrypt/4096/32_cv 1.03 % 1.03 % 8 0.06% 0.06% 0.00% 0.06% 1.01% -ascon128a_aead_encrypt/128/32_mean 408 ns 408 ns 8 1.83031k 11.4395 6.2k 3.3874 374.277Mi/s -ascon128a_aead_encrypt/128/32_median 406 ns 406 ns 8 1.83027k 11.4392 6.2k 3.38748 376.041Mi/s -ascon128a_aead_encrypt/128/32_stddev 5.01 ns 5.01 ns 8 0.282304 1.7644m 92.2765u 522.443u 4.5763Mi/s -ascon128a_aead_encrypt/128/32_cv 1.23 % 1.23 % 8 0.02% 0.02% 0.00% 0.02% 1.22% -ascon_prfs_verify/4_mean 53.5 ns 53.5 ns 8 248.53 12.4265 680 2.73609 356.822Mi/s -ascon_prfs_verify/4_median 53.4 ns 53.3 ns 8 248.562 12.4281 680 2.73574 357.535Mi/s -ascon_prfs_verify/4_stddev 0.374 ns 0.375 ns 8 0.206373 0.0103187 8.15617u 2.27303m 2.48395Mi/s -ascon_prfs_verify/4_cv 0.70 % 0.70 % 8 0.08% 0.08% 0.00% 0.08% 0.70% -ascon_prf/512/64_mean 836 ns 836 ns 8 3.76658k 6.53921 12.855k 3.41291 657.432Mi/s -ascon_prf/512/64_median 843 ns 843 ns 8 3.76787k 6.54143 12.855k 3.41175 651.302Mi/s -ascon_prf/512/64_stddev 19.1 ns 19.2 ns 8 2.71807 4.71887m 0 2.46467m 15.3401Mi/s -ascon_prf/512/64_cv 2.29 % 2.29 % 8 0.07% 0.07% 0.00% 0.07% 2.33% -ascon_prf/2048/16_mean 2604 ns 2604 ns 8 11.5907k 5.61564 39.513k 3.40925 756.033Mi/s -ascon_prf/2048/16_median 2596 ns 2596 ns 8 11.5321k 5.58725 39.513k 3.42635 758.166Mi/s -ascon_prf/2048/16_stddev 38.5 ns 38.5 ns 8 99.3544 0.0481368 0 0.0291149 11.1766Mi/s -ascon_prf/2048/16_cv 1.48 % 1.48 % 8 0.86% 0.86% 0.00% 0.85% 1.48% -ascon_xofa/256/64_mean 1073 ns 1073 ns 8 4.73923k 14.8101 16.841k 3.55356 284.615Mi/s -ascon_xofa/256/64_median 1082 ns 1082 ns 8 4.73947k 14.8108 16.841k 3.55335 281.965Mi/s -ascon_xofa/256/64_stddev 28.8 ns 28.8 ns 8 14.5411 0.0454408 0 0.0109176 7.9861Mi/s -ascon_xofa/256/64_cv 2.68 % 2.68 % 8 0.31% 0.31% 0.00% 0.31% 2.81% -ascon_mac_authenticate/4096_mean 4963 ns 4962 ns 8 22.6721k 5.51364 77.244k 3.4073 790.635Mi/s -ascon_mac_authenticate/4096_median 4923 ns 4923 ns 8 22.5516k 5.48434 77.244k 3.42522 796.619Mi/s -ascon_mac_authenticate/4096_stddev 118 ns 118 ns 8 223.575 0.0543713 0 0.0334467 18.657Mi/s -ascon_mac_authenticate/4096_cv 2.38 % 2.37 % 8 0.99% 0.99% 0.00% 0.98% 2.36% -ascon80pq_aead_decrypt/64/32_mean 428 ns 428 ns 8 1.9868k 20.6959 5.296k 2.66559 214.056Mi/s -ascon80pq_aead_decrypt/64/32_median 428 ns 428 ns 8 1.98672k 20.6951 5.296k 2.66569 214.117Mi/s -ascon80pq_aead_decrypt/64/32_stddev 2.00 ns 2.00 ns 8 0.305207 3.17924m 0 409.445u 1.00065Mi/s -ascon80pq_aead_decrypt/64/32_cv 0.47 % 0.47 % 8 0.02% 0.02% 0.00% 0.02% 0.47% -ascon_prf/64/16_mean 191 ns 191 ns 8 870.567 10.8821 2.933k 3.36908 398.659Mi/s -ascon_prf/64/16_median 192 ns 192 ns 8 871.253 10.8907 2.933k 3.36642 397.431Mi/s -ascon_prf/64/16_stddev 4.23 ns 4.23 ns 8 1.99113 0.0248892 79.9138u 7.7209m 8.80118Mi/s -ascon_prf/64/16_cv 2.21 % 2.21 % 8 0.23% 0.23% 0.00% 0.23% 2.21% -ascon_mac_authenticate/256_mean 427 ns 427 ns 8 1.91817k 7.0521 6.444k 3.35945 607.514Mi/s -ascon_mac_authenticate/256_median 430 ns 430 ns 8 1.91818k 7.05213 6.444k 3.35944 603.701Mi/s -ascon_mac_authenticate/256_stddev 6.92 ns 6.92 ns 8 2.02756 7.45427m 0 3.55292m 10.1563Mi/s -ascon_mac_authenticate/256_cv 1.62 % 1.62 % 8 0.11% 0.11% 0.00% 0.11% 1.67% -ascon_permutation<6>_mean 24.1 ns 24.1 ns 8 112.185 2.80462 266 2.37109 1.54463Gi/s -ascon_permutation<6>_median 24.1 ns 24.1 ns 8 112.171 2.80428 266 2.37137 1.54692Gi/s -ascon_permutation<6>_stddev 0.112 ns 0.112 ns 8 0.0306038 765.094u 4.07808u 646.71u 7.3068Mi/s -ascon_permutation<6>_cv 0.46 % 0.46 % 8 0.03% 0.03% 0.00% 0.03% 0.46% -ascon_xofa/2048/64_mean 6798 ns 6798 ns 8 29.984k 14.197 108.457k 3.61717 296.625Mi/s -ascon_xofa/2048/64_median 6932 ns 6931 ns 8 29.9927k 14.2011 108.457k 3.61611 290.588Mi/s -ascon_xofa/2048/64_stddev 238 ns 238 ns 8 26.86 0.0127178 2.08798m 3.24178m 10.77Mi/s -ascon_xofa/2048/64_cv 3.50 % 3.50 % 8 0.09% 0.09% 0.00% 0.09% 3.63% -ascon_xofa/256/32_mean 962 ns 962 ns 8 4.24244k 14.7307 15.281k 3.60195 285.897Mi/s -ascon_xofa/256/32_median 974 ns 974 ns 8 4.23959k 14.7208 15.281k 3.60436 281.991Mi/s -ascon_xofa/256/32_stddev 31.1 ns 31.0 ns 8 8.85436 0.0307443 260.997u 7.48893m 9.51515Mi/s -ascon_xofa/256/32_cv 3.23 % 3.23 % 8 0.21% 0.21% 0.00% 0.21% 3.33% -ascon_hasha/2048_mean 6735 ns 6734 ns 8 29.5053k 14.1852 106.869k 3.62203 294.74Mi/s -ascon_hasha/2048_median 6779 ns 6779 ns 8 29.5047k 14.185 106.869k 3.6221 292.63Mi/s -ascon_hasha/2048_stddev 175 ns 175 ns 8 7.30796 3.51344m 0 897.012u 8.04329Mi/s -ascon_hasha/2048_cv 2.60 % 2.60 % 8 0.02% 0.02% 0.00% 0.02% 2.73% -ascon_xof/64/32_mean 481 ns 481 ns 8 2.17118k 22.6165 7.545k 3.47507 190.438Mi/s -ascon_xof/64/32_median 483 ns 483 ns 8 2.17103k 22.6149 7.545k 3.47531 189.529Mi/s -ascon_xof/64/32_stddev 9.31 ns 9.31 ns 8 2.05001 0.0213543 0 3.28105m 3.72933Mi/s -ascon_xof/64/32_cv 1.94 % 1.94 % 8 0.09% 0.09% 0.00% 0.09% 1.96% -ascon_hasha/256_mean 949 ns 949 ns 8 4.23672k 14.7108 15.253k 3.60019 289.935Mi/s -ascon_hasha/256_median 965 ns 965 ns 8 4.2366k 14.7104 15.253k 3.60029 284.581Mi/s -ascon_hasha/256_stddev 35.9 ns 35.9 ns 8 1.88547 6.54678m 184.553u 1.60213m 11.1145Mi/s -ascon_hasha/256_cv 3.78 % 3.78 % 8 0.04% 0.04% 0.00% 0.04% 3.83% -ascon_prf/4096/32_mean 5123 ns 5122 ns 8 22.8609k 5.53801 77.827k 3.40461 768.766Mi/s -ascon_prf/4096/32_median 5155 ns 5155 ns 8 22.8555k 5.5367 77.827k 3.40533 763.74Mi/s -ascon_prf/4096/32_stddev 90.8 ns 90.7 ns 8 201.773 0.0488791 1.04399m 0.030047 13.9608Mi/s -ascon_prf/4096/32_cv 1.77 % 1.77 % 8 0.88% 0.88% 0.00% 0.88% 1.82% -ascon_mac_authenticate/128_mean 265 ns 265 ns 8 1.20715k 8.38297 4.084k 3.38319 518.877Mi/s -ascon_mac_authenticate/128_median 267 ns 267 ns 8 1.20656k 8.37891 4.084k 3.38482 514.627Mi/s -ascon_mac_authenticate/128_stddev 5.65 ns 5.64 ns 8 1.72647 0.0119894 46.1382u 4.83122m 11.0804Mi/s -ascon_mac_authenticate/128_cv 2.13 % 2.13 % 8 0.14% 0.14% 0.00% 0.14% 2.14% -ascon_xofa/1024/32_mean 3341 ns 3341 ns 8 15.0584k 14.2598 54.545k 3.62224 301.8Mi/s -ascon_xofa/1024/32_median 3319 ns 3318 ns 8 15.0554k 14.257 54.545k 3.62295 303.64Mi/s -ascon_xofa/1024/32_stddev 125 ns 125 ns 8 9.52422 9.01915m 0 2.28973m 11.2509Mi/s -ascon_xofa/1024/32_cv 3.75 % 3.75 % 8 0.06% 0.06% 0.00% 0.06% 3.73% -ascon_prfs_authenticate/2_mean 50.9 ns 50.9 ns 8 235.983 13.1102 671 2.84343 337.164Mi/s -ascon_prfs_authenticate/2_median 50.8 ns 50.8 ns 8 236.006 13.1114 671 2.84315 337.912Mi/s -ascon_prfs_authenticate/2_stddev 0.518 ns 0.519 ns 8 0.292306 0.0162392 8.15617u 3.52253m 3.42036Mi/s -ascon_prfs_authenticate/2_cv 1.02 % 1.02 % 8 0.12% 0.12% 0.00% 0.12% 1.01% -ascon128_aead_decrypt/2048/32_mean 6616 ns 6616 ns 8 30.831k 14.8226 77.371k 2.50952 299.85Mi/s -ascon128_aead_decrypt/2048/32_median 6617 ns 6617 ns 8 30.8294k 14.8218 77.371k 2.50965 299.794Mi/s -ascon128_aead_decrypt/2048/32_stddev 22.9 ns 23.0 ns 8 20.747 9.9745m 0 1.68786m 1.04231Mi/s -ascon128_aead_decrypt/2048/32_cv 0.35 % 0.35 % 8 0.07% 0.07% 0.00% 0.07% 0.35% -ascon_mac_authenticate/2048_mean 2578 ns 2577 ns 8 11.619k 5.62934 39.484k 3.39849 764.171Mi/s -ascon_mac_authenticate/2048_median 2604 ns 2604 ns 8 11.6172k 5.62851 39.484k 3.3988 755.953Mi/s -ascon_mac_authenticate/2048_stddev 67.7 ns 67.8 ns 8 105.367 0.0510498 0 0.0307871 20.3062Mi/s -ascon_mac_authenticate/2048_cv 2.63 % 2.63 % 8 0.91% 0.91% 0.00% 0.91% 2.66% -ascon_xof/4096/32_mean 19366 ns 19365 ns 8 86.5086k 20.9565 302.385k 3.49543 203.437Mi/s -ascon_xof/4096/32_median 19556 ns 19555 ns 8 86.5076k 20.9563 302.385k 3.49547 201.322Mi/s -ascon_xof/4096/32_stddev 547 ns 548 ns 8 8.0169 1.94208m 0 323.901u 5.87807Mi/s -ascon_xof/4096/32_cv 2.83 % 2.83 % 8 0.01% 0.01% 0.00% 0.01% 2.89% -ascon_hasha/1024_mean 3397 ns 3397 ns 8 15.062k 14.2633 54.517k 3.61951 296.758Mi/s -ascon_hasha/1024_median 3432 ns 3431 ns 8 15.06k 14.2613 54.517k 3.62 293.482Mi/s -ascon_hasha/1024_stddev 106 ns 106 ns 8 9.65413 9.14217m 0 2.31898m 9.51947Mi/s -ascon_hasha/1024_cv 3.12 % 3.12 % 8 0.06% 0.06% 0.00% 0.06% 3.21% -ascon_mac_verify/256_mean 427 ns 427 ns 8 1.92469k 6.68294 6.46k 3.3564 643.52Mi/s -ascon_mac_verify/256_median 428 ns 428 ns 8 1.92419k 6.68122 6.46k 3.35726 641.05Mi/s -ascon_mac_verify/256_stddev 7.90 ns 7.89 ns 8 3.20452 0.0111268 92.2765u 5.58939m 12.0249Mi/s -ascon_mac_verify/256_cv 1.85 % 1.85 % 8 0.17% 0.17% 0.00% 0.17% 1.87% -ascon_xof/4096/64_mean 19166 ns 19165 ns 8 87.2968k 20.9848 304.617k 3.48944 207.205Mi/s -ascon_xof/4096/64_median 18774 ns 18773 ns 8 87.295k 20.9844 304.617k 3.48951 211.33Mi/s -ascon_xof/4096/64_stddev 636 ns 636 ns 8 52.7204 0.0126732 0 2.10715m 6.76837Mi/s -ascon_xof/4096/64_cv 3.32 % 3.32 % 8 0.06% 0.06% 0.00% 0.06% 3.27% -ascon_prf/256/64_mean 538 ns 538 ns 8 2.42061k 7.5644 8.135k 3.36073 567.084Mi/s -ascon_prf/256/64_median 538 ns 537 ns 8 2.42143k 7.56697 8.135k 3.35958 567.824Mi/s -ascon_prf/256/64_stddev 9.50 ns 9.50 ns 8 2.70954 8.46732m 0 3.7656m 10.1923Mi/s -ascon_prf/256/64_cv 1.77 % 1.77 % 8 0.11% 0.11% 0.00% 0.11% 1.80% -ascon128a_aead_encrypt/256/32_mean 650 ns 650 ns 8 2.90155k 10.0748 9.808k 3.38027 422.972Mi/s -ascon128a_aead_encrypt/256/32_median 651 ns 651 ns 8 2.90105k 10.0731 9.808k 3.38084 421.667Mi/s -ascon128a_aead_encrypt/256/32_stddev 11.4 ns 11.4 ns 8 2.32718 8.0805m 184.553u 2.70997m 7.57184Mi/s -ascon128a_aead_encrypt/256/32_cv 1.75 % 1.75 % 8 0.08% 0.08% 0.00% 0.08% 1.79% -ascon128_aead_encrypt/64/32_mean 421 ns 421 ns 8 1.96034k 20.4202 5.134k 2.61894 217.409Mi/s -ascon128_aead_encrypt/64/32_median 421 ns 421 ns 8 1.96032k 20.42 5.134k 2.61896 217.675Mi/s -ascon128_aead_encrypt/64/32_stddev 1.57 ns 1.58 ns 8 0.230245 2.39839m 0 307.569u 832.705Ki/s -ascon128_aead_encrypt/64/32_cv 0.37 % 0.37 % 8 0.01% 0.01% 0.00% 0.01% 0.37% -ascon128_aead_encrypt/512/32_mean 1830 ns 1830 ns 8 8.54404k 15.706 21.262k 2.48852 283.496Mi/s -ascon128_aead_encrypt/512/32_median 1829 ns 1829 ns 8 8.54358k 15.7051 21.262k 2.48865 283.606Mi/s -ascon128_aead_encrypt/512/32_stddev 3.14 ns 3.21 ns 8 1.34578 2.47387m 0 391.903u 507.442Ki/s -ascon128_aead_encrypt/512/32_cv 0.17 % 0.18 % 8 0.02% 0.02% 0.00% 0.02% 0.17% -ascon80pq_aead_decrypt/4096/32_mean 13046 ns 13045 ns 8 60.6878k 14.7015 151.873k 2.50253 301.794Mi/s -ascon80pq_aead_decrypt/4096/32_median 13011 ns 13010 ns 8 60.6777k 14.6991 151.873k 2.50295 302.589Mi/s -ascon80pq_aead_decrypt/4096/32_stddev 75.6 ns 75.3 ns 8 33.1297 8.02561m 2.95285m 1.366m 1.73463Mi/s -ascon80pq_aead_decrypt/4096/32_cv 0.58 % 0.58 % 8 0.05% 0.05% 0.00% 0.05% 0.57% -ascon_prf/512/32_mean 761 ns 761 ns 8 3.4371k 6.3182 11.747k 3.41771 681.949Mi/s -ascon_prf/512/32_median 768 ns 768 ns 8 3.43669k 6.31745 11.747k 3.41811 675.239Mi/s -ascon_prf/512/32_stddev 21.4 ns 21.4 ns 8 2.61516 4.80728m 184.553u 2.59968m 19.3228Mi/s -ascon_prf/512/32_cv 2.81 % 2.81 % 8 0.08% 0.08% 0.00% 0.08% 2.83% -ascon_prf/1024/64_mean 1458 ns 1458 ns 8 6.54506k 6.01568 22.295k 3.40652 711.777Mi/s -ascon_prf/1024/64_median 1466 ns 1466 ns 8 6.5178k 5.99063 22.295k 3.42063 707.942Mi/s -ascon_prf/1024/64_stddev 30.5 ns 30.5 ns 8 43.8046 0.0402616 0 0.0227297 15.0914Mi/s -ascon_prf/1024/64_cv 2.09 % 2.09 % 8 0.67% 0.67% 0.00% 0.67% 2.12% -ascon_prfs_authenticate/16_mean 40.9 ns 40.8 ns 8 184.034 5.75105 670 3.64064 747.754Mi/s -ascon_prfs_authenticate/16_median 41.0 ns 41.0 ns 8 184.055 5.75172 670 3.64022 744.76Mi/s -ascon_prfs_authenticate/16_stddev 1.26 ns 1.26 ns 8 0.122998 3.84369m 0 2.43466m 23.1312Mi/s -ascon_prfs_authenticate/16_cv 3.09 % 3.09 % 8 0.07% 0.07% 0.00% 0.07% 3.09% -ascon_mac_authenticate/64_mean 194 ns 194 ns 8 870.523 10.8815 2.904k 3.33598 394.181Mi/s -ascon_mac_authenticate/64_median 194 ns 194 ns 8 871.655 10.8957 2.904k 3.33159 393.589Mi/s -ascon_mac_authenticate/64_stddev 2.95 ns 2.95 ns 8 3.53966 0.0442457 65.2493u 0.0136473 6.08701Mi/s -ascon_mac_authenticate/64_cv 1.53 % 1.52 % 8 0.41% 0.41% 0.00% 0.41% 1.54% -ascon_xof/128/32_mean 777 ns 777 ns 8 3.52066k 22.0041 12.225k 3.47237 196.491Mi/s -ascon_xof/128/32_median 773 ns 773 ns 8 3.51961k 21.9976 12.225k 3.4734 197.516Mi/s -ascon_xof/128/32_stddev 24.4 ns 24.4 ns 8 2.74602 0.0171626 184.553u 2.70548m 6.13398Mi/s -ascon_xof/128/32_cv 3.14 % 3.14 % 8 0.08% 0.08% 0.00% 0.08% 3.12% -ascon_xofa/128/32_mean 545 ns 545 ns 8 2.43839k 15.2399 8.737k 3.58313 280.528Mi/s -ascon_xofa/128/32_median 547 ns 547 ns 8 2.43603k 15.2252 8.737k 3.58657 279.117Mi/s -ascon_xofa/128/32_stddev 22.2 ns 22.2 ns 8 6.31779 0.0394862 0 9.24236m 11.2126Mi/s -ascon_xofa/128/32_cv 4.08 % 4.07 % 8 0.26% 0.26% 0.00% 0.26% 4.00% -ascon_xof/128/64_mean 941 ns 941 ns 8 4.25107k 22.141 14.457k 3.4008 194.677Mi/s -ascon_xof/128/64_median 950 ns 950 ns 8 4.25287k 22.1504 14.457k 3.39935 192.842Mi/s -ascon_xof/128/64_stddev 26.9 ns 27.0 ns 8 6.11097 0.031828 319.655u 4.89396m 5.61157Mi/s -ascon_xof/128/64_cv 2.86 % 2.86 % 8 0.14% 0.14% 0.00% 0.14% 2.88% -ascon128_aead_encrypt/256/32_mean 1029 ns 1029 ns 8 4.79096k 16.6353 12.046k 2.51432 266.847Mi/s -ascon128_aead_encrypt/256/32_median 1029 ns 1028 ns 8 4.79101k 16.6355 12.046k 2.51429 267.056Mi/s -ascon128_aead_encrypt/256/32_stddev 2.39 ns 2.36 ns 8 0.415767 1.44363m 260.997u 218.196u 624.474Ki/s -ascon128_aead_encrypt/256/32_cv 0.23 % 0.23 % 8 0.01% 0.01% 0.00% 0.01% 0.23% -ascon_hash/128_mean 785 ns 785 ns 8 3.51656k 21.9785 12.197k 3.46844 194.466Mi/s -ascon_hash/128_median 789 ns 788 ns 8 3.51653k 21.9783 12.197k 3.46848 193.53Mi/s -ascon_hash/128_stddev 19.7 ns 19.7 ns 8 1.29437 8.08984m 184.553u 1.27662m 4.94706Mi/s -ascon_hash/128_cv 2.51 % 2.51 % 8 0.04% 0.04% 0.00% 0.04% 2.54% -ascon128_aead_decrypt/256/32_mean 1030 ns 1030 ns 8 4.79167k 16.6377 12.215k 2.54922 266.722Mi/s -ascon128_aead_decrypt/256/32_median 1029 ns 1029 ns 8 4.79127k 16.6363 12.215k 2.54943 266.977Mi/s -ascon128_aead_decrypt/256/32_stddev 5.87 ns 5.86 ns 8 1.2139 4.21493m 0 645.596u 1.51135Mi/s -ascon128_aead_decrypt/256/32_cv 0.57 % 0.57 % 8 0.03% 0.03% 0.00% 0.03% 0.57% -ascon_mac_verify/4096_mean 5021 ns 5021 ns 8 22.6906k 5.49676 77.26k 3.40516 784.541Mi/s -ascon_mac_verify/4096_median 5053 ns 5052 ns 8 22.6445k 5.48559 77.26k 3.41187 779.185Mi/s -ascon_mac_verify/4096_stddev 129 ns 129 ns 8 198.177 0.048008 0 0.0296697 20.2398Mi/s -ascon_mac_verify/4096_cv 2.56 % 2.56 % 8 0.87% 0.87% 0.00% 0.87% 2.58% -ascon_prf/512/16_mean 734 ns 734 ns 8 3.277k 6.20643 11.193k 3.41563 685.863Mi/s -ascon_prf/512/16_median 740 ns 740 ns 8 3.2768k 6.20607 11.193k 3.41583 680.662Mi/s -ascon_prf/512/16_stddev 14.7 ns 14.7 ns 8 3.15411 5.9737m 0 3.28573m 14.1385Mi/s -ascon_prf/512/16_cv 2.00 % 2.00 % 8 0.10% 0.10% 0.00% 0.10% 2.06% -ascon_xof/256/64_mean 1543 ns 1543 ns 8 6.93626k 21.6758 23.817k 3.43371 198.005Mi/s -ascon_xof/256/64_median 1556 ns 1556 ns 8 6.93344k 21.667 23.817k 3.43509 196.173Mi/s -ascon_xof/256/64_stddev 57.8 ns 57.8 ns 8 16.804 0.0525125 521.995u 8.28707m 7.36522Mi/s -ascon_xof/256/64_cv 3.75 % 3.75 % 8 0.24% 0.24% 0.00% 0.24% 3.72% -ascon_hasha/64_mean 338 ns 338 ns 8 1.51895k 15.8224 5.437k 3.57945 271.222Mi/s -ascon_hasha/64_median 342 ns 342 ns 8 1.51883k 15.8211 5.437k 3.57973 268.018Mi/s -ascon_hasha/64_stddev 11.1 ns 11.1 ns 8 1.47948 0.0154113 92.2765u 3.48517m 9.02413Mi/s -ascon_hasha/64_cv 3.30 % 3.29 % 8 0.10% 0.10% 0.00% 0.10% 3.33% -ascon128a_aead_encrypt/512/32_mean 1118 ns 1118 ns 8 5.02661k 9.24009 17.024k 3.38678 464.255Mi/s -ascon128a_aead_encrypt/512/32_median 1127 ns 1127 ns 8 5.02658k 9.24004 17.024k 3.3868 460.51Mi/s -ascon128a_aead_encrypt/512/32_stddev 25.7 ns 25.7 ns 8 4.13583 7.60263m 0 2.78653m 10.8279Mi/s -ascon128a_aead_encrypt/512/32_cv 2.30 % 2.30 % 8 0.08% 0.08% 0.00% 0.08% 2.33% -ascon_xof/64/64_mean 639 ns 639 ns 8 2.88432k 22.5338 9.777k 3.38972 191.237Mi/s -ascon_xof/64/64_median 646 ns 646 ns 8 2.8852k 22.5406 9.777k 3.38868 189.091Mi/s -ascon_xof/64/64_stddev 12.6 ns 12.6 ns 8 6.40547 0.0500427 130.499u 7.5299m 3.84697Mi/s -ascon_xof/64/64_cv 1.98 % 1.98 % 8 0.22% 0.22% 0.00% 0.22% 2.01% -ascon_permutation<12>_mean 34.8 ns 34.8 ns 8 160.264 4.0066 520 3.24465 1.07122Gi/s -ascon_permutation<12>_median 34.8 ns 34.7 ns 8 160.139 4.00348 520 3.24718 1.07207Gi/s -ascon_permutation<12>_stddev 0.323 ns 0.323 ns 8 0.283496 7.08739m 0 5.73184m 10.1648Mi/s -ascon_permutation<12>_cv 0.93 % 0.93 % 8 0.18% 0.18% 0.00% 0.18% 0.93% -ascon_prfs_verify/16_mean 43.6 ns 43.6 ns 8 192.988 6.03088 682 3.5339 700.026Mi/s -ascon_prfs_verify/16_median 44.0 ns 44.0 ns 8 192.989 6.03089 682 3.53389 693.776Mi/s -ascon_prfs_verify/16_stddev 1.01 ns 1.01 ns 8 0.358915 0.0112161 0 6.57053m 16.7013Mi/s -ascon_prfs_verify/16_cv 2.31 % 2.31 % 8 0.19% 0.19% 0.00% 0.19% 2.39% -ascon_prfs_authenticate/4_mean 50.8 ns 50.8 ns 8 234.697 11.7348 668 2.84623 375.461Mi/s -ascon_prfs_authenticate/4_median 50.8 ns 50.8 ns 8 234.742 11.7371 668 2.84567 375.341Mi/s -ascon_prfs_authenticate/4_stddev 0.450 ns 0.451 ns 8 0.329858 0.0164929 8.15617u 4.00332m 3.32911Mi/s -ascon_prfs_authenticate/4_cv 0.89 % 0.89 % 8 0.14% 0.14% 0.00% 0.14% 0.89% -ascon_hash/64_mean 492 ns 492 ns 8 2.17168k 22.6217 7.517k 3.46138 186.258Mi/s -ascon_hash/64_median 492 ns 492 ns 8 2.1713k 22.6177 7.517k 3.46198 186.214Mi/s -ascon_hash/64_stddev 5.15 ns 5.15 ns 8 2.45693 0.025593 0 3.90898m 1.94581Mi/s -ascon_hash/64_cv 1.05 % 1.05 % 8 0.11% 0.11% 0.00% 0.11% 1.04% -ascon128a_aead_decrypt/128/32_mean 410 ns 410 ns 8 1.83758k 11.4849 6.139k 3.34081 372.147Mi/s -ascon128a_aead_decrypt/128/32_median 410 ns 410 ns 8 1.83755k 11.4847 6.139k 3.34086 371.841Mi/s -ascon128a_aead_decrypt/128/32_stddev 8.44 ns 8.44 ns 8 0.406743 2.54214m 92.2765u 739.437u 7.81308Mi/s -ascon128a_aead_decrypt/128/32_cv 2.06 % 2.06 % 8 0.02% 0.02% 0.00% 0.02% 2.10% -ascon128a_aead_decrypt/64/32_mean 299 ns 299 ns 8 1.32668k 13.8195 4.436k 3.3437 306.571Mi/s -ascon128a_aead_decrypt/64/32_median 301 ns 301 ns 8 1.32612k 13.8138 4.436k 3.3451 304.257Mi/s -ascon128a_aead_decrypt/64/32_stddev 4.98 ns 4.97 ns 8 1.47089 0.0153217 0 3.69888m 5.20923Mi/s -ascon128a_aead_decrypt/64/32_cv 1.67 % 1.66 % 8 0.11% 0.11% 0.00% 0.11% 1.70% -ascon_hash/512_mean 2626 ns 2626 ns 8 11.5501k 21.2318 40.277k 3.48716 197.667Mi/s -ascon_hash/512_median 2658 ns 2658 ns 8 11.5501k 21.2317 40.277k 3.48717 195.207Mi/s -ascon_hash/512_stddev 66.0 ns 66.0 ns 8 3.7498 6.89302m 0 1.13221m 5.19665Mi/s -ascon_hash/512_cv 2.51 % 2.51 % 8 0.03% 0.03% 0.00% 0.03% 2.63% -ascon_prf/64/32_mean 233 ns 233 ns 8 1.03858k 10.8185 3.487k 3.35752 393.378Mi/s -ascon_prf/64/32_median 233 ns 233 ns 8 1.03975k 10.8307 3.487k 3.35369 393.552Mi/s -ascon_prf/64/32_stddev 2.65 ns 2.64 ns 8 3.81962 0.0397877 0 0.0124397 4.45801Mi/s -ascon_prf/64/32_cv 1.14 % 1.13 % 8 0.37% 0.37% 0.00% 0.37% 1.13% -ascon_xof/2048/32_mean 9786 ns 9785 ns 8 43.687k 21.0034 152.625k 3.4936 202.806Mi/s -ascon_xof/2048/32_median 9793 ns 9791 ns 8 43.6855k 21.0027 152.625k 3.49372 202.589Mi/s -ascon_xof/2048/32_stddev 207 ns 207 ns 8 14.9146 7.17048m 0 1.19248m 4.37951Mi/s -ascon_xof/2048/32_cv 2.11 % 2.12 % 8 0.03% 0.03% 0.00% 0.03% 2.16% -ascon128_aead_decrypt/1024/32_mean 3409 ns 3409 ns 8 15.9264k 15.0819 40.139k 2.52027 295.422Mi/s -ascon128_aead_decrypt/1024/32_median 3409 ns 3409 ns 8 15.9266k 15.082 40.139k 2.52025 295.454Mi/s -ascon128_aead_decrypt/1024/32_stddev 5.08 ns 5.03 ns 8 2.26379 2.14374m 521.995u 358.281u 446.818Ki/s -ascon128_aead_decrypt/1024/32_cv 0.15 % 0.15 % 8 0.01% 0.01% 0.00% 0.01% 0.15% -ascon128a_aead_decrypt/1024/32_mean 2023 ns 2022 ns 8 9.1035k 8.62074 30.317k 3.33026 498.096Mi/s -ascon128a_aead_decrypt/1024/32_median 2026 ns 2026 ns 8 9.10462k 8.6218 30.317k 3.32985 497.056Mi/s -ascon128a_aead_decrypt/1024/32_stddev 36.4 ns 36.4 ns 8 5.60474 5.30752m 0 2.05025m 9.184Mi/s -ascon128a_aead_decrypt/1024/32_cv 1.80 % 1.80 % 8 0.06% 0.06% 0.00% 0.06% 1.84% -ascon_prf/128/64_mean 384 ns 384 ns 8 1.70361k 8.87295 5.775k 3.38987 477.362Mi/s -ascon_prf/128/64_median 383 ns 383 ns 8 1.70381k 8.874 5.775k 3.38947 477.922Mi/s -ascon_prf/128/64_stddev 2.84 ns 2.84 ns 8 2.14609 0.0111775 65.2493u 4.27084m 3.54499Mi/s -ascon_prf/128/64_cv 0.74 % 0.74 % 8 0.13% 0.13% 0.00% 0.13% 0.74% -ascon128a_aead_decrypt/2048/32_mean 3884 ns 3884 ns 8 17.3801k 8.35581 57.949k 3.33422 510.746Mi/s -ascon128a_aead_decrypt/2048/32_median 3875 ns 3875 ns 8 17.382k 8.35673 57.949k 3.33385 511.882Mi/s -ascon128a_aead_decrypt/2048/32_stddev 35.3 ns 35.2 ns 8 7.06645 3.39733m 0 1.35641m 4.62973Mi/s -ascon128a_aead_decrypt/2048/32_cv 0.91 % 0.91 % 8 0.04% 0.04% 0.00% 0.04% 0.91% -ascon128_aead_encrypt/1024/32_mean 3451 ns 3451 ns 8 16.064k 15.2121 39.694k 2.47099 291.874Mi/s -ascon128_aead_encrypt/1024/32_median 3446 ns 3446 ns 8 16.0596k 15.2079 39.694k 2.47167 292.271Mi/s -ascon128_aead_encrypt/1024/32_stddev 20.6 ns 20.6 ns 8 12.804 0.012125 0 1.96904m 1.73051Mi/s -ascon128_aead_encrypt/1024/32_cv 0.60 % 0.60 % 8 0.08% 0.08% 0.00% 0.08% 0.59% -ascon80pq_aead_encrypt/512/32_mean 1835 ns 1835 ns 8 8.53975k 15.6981 21.3k 2.49422 282.746Mi/s -ascon80pq_aead_encrypt/512/32_median 1830 ns 1830 ns 8 8.53979k 15.6981 21.3k 2.49421 283.515Mi/s -ascon80pq_aead_encrypt/512/32_stddev 10.6 ns 10.6 ns 8 2.03389 3.73877m 0 594.057u 1.62461Mi/s -ascon80pq_aead_encrypt/512/32_cv 0.58 % 0.58 % 8 0.02% 0.02% 0.00% 0.02% 0.57% -ascon_xofa/512/32_mean 1776 ns 1776 ns 8 7.84282k 14.4169 28.369k 3.6172 292.485Mi/s -ascon_xofa/512/32_median 1805 ns 1805 ns 8 7.84364k 14.4185 28.369k 3.61681 287.494Mi/s -ascon_xofa/512/32_stddev 61.6 ns 61.6 ns 8 2.00963 3.69417m 639.31u 926.977u 10.4761Mi/s -ascon_xofa/512/32_cv 3.47 % 3.47 % 8 0.03% 0.03% 0.00% 0.03% 3.58% -ascon_xofa/64/64_mean 448 ns 448 ns 8 2.00597k 15.6716 7.025k 3.50211 272.541Mi/s -ascon_xofa/64/64_median 455 ns 455 ns 8 2.00523k 15.6659 7.025k 3.50335 268.577Mi/s -ascon_xofa/64/64_stddev 15.7 ns 15.7 ns 8 8.92547 0.0697302 92.2765u 0.0155816 9.63116Mi/s -ascon_xofa/64/64_cv 3.49 % 3.49 % 8 0.44% 0.44% 0.00% 0.44% 3.53% -ascon_hasha/128_mean 554 ns 554 ns 8 2.43323k 15.2077 8.709k 3.5792 275.604Mi/s -ascon_hasha/128_median 554 ns 554 ns 8 2.43249k 15.2031 8.709k 3.58028 275.392Mi/s -ascon_hasha/128_stddev 11.9 ns 11.9 ns 8 3.17577 0.0198485 0 4.66874m 6.07158Mi/s -ascon_hasha/128_cv 2.14 % 2.14 % 8 0.13% 0.13% 0.00% 0.13% 2.20% -ascon_hasha/4096_mean 13292 ns 13291 ns 8 58.3977k 14.1467 211.573k 3.62297 296.357Mi/s -ascon_hasha/4096_median 13381 ns 13381 ns 8 58.3973k 14.1466 211.573k 3.623 294.219Mi/s -ascon_hasha/4096_stddev 325 ns 325 ns 8 29.265 7.08939m 2.95285m 1.81541m 7.5732Mi/s -ascon_hasha/4096_cv 2.44 % 2.44 % 8 0.05% 0.05% 0.00% 0.05% 2.56% -ascon_xof/512/64_mean 2778 ns 2778 ns 8 12.2863k 21.3304 42.537k 3.46215 197.917Mi/s -ascon_xof/512/64_median 2779 ns 2779 ns 8 12.2879k 21.3332 42.537k 3.46169 197.702Mi/s -ascon_xof/512/64_stddev 81.6 ns 81.6 ns 8 16.7749 0.0291231 0 4.72895m 5.7793Mi/s -ascon_xof/512/64_cv 2.94 % 2.94 % 8 0.14% 0.14% 0.00% 0.14% 2.92% -ascon128_aead_encrypt/4096/32_mean 13133 ns 13132 ns 8 61.2699k 14.8425 150.286k 2.45285 299.777Mi/s -ascon128_aead_encrypt/4096/32_median 13132 ns 13131 ns 8 61.2617k 14.8405 150.286k 2.45318 299.801Mi/s -ascon128_aead_encrypt/4096/32_stddev 39.6 ns 39.5 ns 8 52.8099 0.0127931 0 2.11286m 921.21Ki/s -ascon128_aead_encrypt/4096/32_cv 0.30 % 0.30 % 8 0.09% 0.09% 0.00% 0.09% 0.30% -ascon_prf/2048/64_mean 2720 ns 2720 ns 8 12.0788k 5.71915 41.175k 3.40905 740.626Mi/s -ascon_prf/2048/64_median 2728 ns 2728 ns 8 12.0174k 5.69006 41.175k 3.42628 738.339Mi/s -ascon_prf/2048/64_stddev 30.6 ns 30.6 ns 8 97.4735 0.0461522 0 0.0273837 8.38369Mi/s -ascon_prf/2048/64_cv 1.13 % 1.13 % 8 0.81% 0.81% 0.00% 0.80% 1.13% -ascon_xof/1024/64_mean 5205 ns 5205 ns 8 23.0023k 21.1418 79.977k 3.47692 199.37Mi/s -ascon_xof/1024/64_median 5195 ns 5195 ns 8 23.0023k 21.1418 79.977k 3.47692 199.743Mi/s -ascon_xof/1024/64_stddev 52.3 ns 52.2 ns 8 14.0853 0.0129461 1.47642m 2.12841m 1.98819Mi/s -ascon_xof/1024/64_cv 1.00 % 1.00 % 8 0.06% 0.06% 0.00% 0.06% 1.00% -ascon_xofa/4096/64_mean 13356 ns 13355 ns 8 58.8613k 14.1493 213.161k 3.62141 297.365Mi/s -ascon_xofa/4096/64_median 13550 ns 13549 ns 8 58.8638k 14.1499 213.161k 3.62126 292.815Mi/s -ascon_xofa/4096/64_stddev 439 ns 439 ns 8 29.228 7.02596m 2.95285m 1.79841m 10.1127Mi/s -ascon_xofa/4096/64_cv 3.29 % 3.28 % 8 0.05% 0.05% 0.00% 0.05% 3.40% -ascon_prf/256/32_mean 456 ns 456 ns 8 2.09057k 7.25893 7.027k 3.36129 602.656Mi/s -ascon_prf/256/32_median 449 ns 449 ns 8 2.0907k 7.25938 7.027k 3.36107 612.266Mi/s -ascon_prf/256/32_stddev 12.2 ns 12.2 ns 8 3.56444 0.0123765 92.2765u 5.73236m 15.7738Mi/s -ascon_prf/256/32_cv 2.67 % 2.67 % 8 0.17% 0.17% 0.00% 0.17% 2.62% -ascon80pq_aead_encrypt/1024/32_mean 3448 ns 3448 ns 8 16.0669k 15.2149 39.732k 2.47291 292.103Mi/s -ascon80pq_aead_encrypt/1024/32_median 3446 ns 3445 ns 8 16.0678k 15.2157 39.732k 2.47278 292.291Mi/s -ascon80pq_aead_encrypt/1024/32_stddev 9.12 ns 9.19 ns 8 12.2977 0.0116456 738.212u 1.89282m 795.275Ki/s -ascon80pq_aead_encrypt/1024/32_cv 0.26 % 0.27 % 8 0.08% 0.08% 0.00% 0.08% 0.27% -ascon_permutation<1>_mean 10.1 ns 10.1 ns 8 47.1595 1.17899 58 1.22987 3.67306Gi/s -ascon_permutation<1>_median 10.1 ns 10.1 ns 8 47.14 1.1785 58 1.23038 3.68159Gi/s -ascon_permutation<1>_stddev 0.065 ns 0.065 ns 8 0.0699261 1.74815m 720.91n 1.82199m 23.9124Mi/s -ascon_permutation<1>_cv 0.64 % 0.64 % 8 0.15% 0.15% 0.00% 0.15% 0.64% -ascon128_aead_decrypt/128/32_mean 636 ns 636 ns 8 2.9235k 18.2719 7.561k 2.58628 240.082Mi/s -ascon128_aead_decrypt/128/32_median 628 ns 628 ns 8 2.92353k 18.2721 7.561k 2.58625 243.015Mi/s -ascon128_aead_decrypt/128/32_stddev 24.2 ns 24.2 ns 8 0.318693 1.99183m 0 281.981u 8.46626Mi/s -ascon128_aead_decrypt/128/32_cv 3.81 % 3.80 % 8 0.01% 0.01% 0.00% 0.01% 3.53% -ascon_prf/256/16_mean 427 ns 427 ns 8 1.91752k 7.04971 6.473k 3.37571 608.251Mi/s -ascon_prf/256/16_median 428 ns 428 ns 8 1.91762k 7.05009 6.473k 3.37553 605.486Mi/s -ascon_prf/256/16_stddev 9.15 ns 9.14 ns 8 1.13256 4.16384m 92.2765u 1.99371m 13.1081Mi/s -ascon_prf/256/16_cv 2.14 % 2.14 % 8 0.06% 0.06% 0.00% 0.06% 2.16% -ascon_prfs_authenticate/8_mean 41.0 ns 41.0 ns 8 183.688 7.65368 666 3.62573 559.454Mi/s -ascon_prfs_authenticate/8_median 41.4 ns 41.4 ns 8 183.684 7.65351 666 3.62579 552.969Mi/s -ascon_prfs_authenticate/8_stddev 1.38 ns 1.38 ns 8 0.456473 0.0190197 0 9.01998m 18.9852Mi/s -ascon_prfs_authenticate/8_cv 3.37 % 3.37 % 8 0.25% 0.25% 0.00% 0.25% 3.39% -ascon_xof/256/32_mean 1392 ns 1392 ns 8 6.19459k 21.509 21.585k 3.48449 197.561Mi/s -ascon_xof/256/32_median 1405 ns 1405 ns 8 6.19517k 21.511 21.585k 3.48417 195.563Mi/s -ascon_xof/256/32_stddev 44.5 ns 44.5 ns 8 1.31044 4.55015m 0 737.21u 6.44382Mi/s -ascon_xof/256/32_cv 3.20 % 3.20 % 8 0.02% 0.02% 0.00% 0.02% 3.26% -ascon128a_aead_decrypt/256/32_mean 651 ns 651 ns 8 2.88921k 10.032 9.593k 3.32029 421.918Mi/s -ascon128a_aead_decrypt/256/32_median 653 ns 653 ns 8 2.88914k 10.0317 9.593k 3.32037 420.661Mi/s -ascon128a_aead_decrypt/256/32_stddev 8.84 ns 8.82 ns 8 1.21451 4.21705m 0 1.39568m 5.72806Mi/s -ascon128a_aead_decrypt/256/32_cv 1.36 % 1.35 % 8 0.04% 0.04% 0.00% 0.04% 1.36% -ascon_permutation<8>_mean 23.4 ns 23.4 ns 8 107.663 2.69157 352 3.2696 1.59245Gi/s -ascon_permutation<8>_median 23.4 ns 23.4 ns 8 107.559 2.68898 352 3.27262 1.5929Gi/s -ascon_permutation<8>_stddev 0.288 ns 0.288 ns 8 0.719035 0.0179759 7.06345u 0.0216974 20.2206Mi/s -ascon_permutation<8>_cv 1.23 % 1.23 % 8 0.67% 0.67% 0.00% 0.66% 1.24% -ascon_xofa/128/64_mean 664 ns 664 ns 8 2.93895k 15.307 10.297k 3.50367 276.259Mi/s -ascon_xofa/128/64_median 674 ns 674 ns 8 2.94121k 15.3188 10.297k 3.50094 271.775Mi/s -ascon_xofa/128/64_stddev 24.5 ns 24.5 ns 8 9.62136 0.0501112 184.553u 0.0115033 10.5241Mi/s -ascon_xofa/128/64_cv 3.69 % 3.69 % 8 0.33% 0.33% 0.00% 0.33% 3.81% -ascon_mac_verify/64_mean 194 ns 194 ns 8 879.254 9.1589 2.92k 3.32119 473.258Mi/s -ascon_mac_verify/64_median 195 ns 195 ns 8 878.216 9.14809 2.92k 3.32492 468.987Mi/s -ascon_mac_verify/64_stddev 5.03 ns 5.03 ns 8 7.24631 0.0754824 184.553u 0.0271311 12.2867Mi/s -ascon_mac_verify/64_cv 2.60 % 2.60 % 8 0.82% 0.82% 0.00% 0.82% 2.60% -ascon128_aead_decrypt/64/32_mean 430 ns 430 ns 8 1.99539k 20.7853 5.258k 2.63507 212.888Mi/s -ascon128_aead_decrypt/64/32_median 429 ns 429 ns 8 1.99531k 20.7844 5.258k 2.63519 213.508Mi/s -ascon128_aead_decrypt/64/32_stddev 3.97 ns 3.97 ns 8 0.173622 1.80856m 113.015u 229.251u 1.949Mi/s -ascon128_aead_decrypt/64/32_cv 0.92 % 0.92 % 8 0.01% 0.01% 0.00% 0.01% 0.92% -ascon_hash/1024_mean 5002 ns 5002 ns 8 22.2606k 21.0801 77.717k 3.49124 201.493Mi/s -ascon_hash/1024_median 5042 ns 5042 ns 8 22.2568k 21.0765 77.717k 3.49183 199.752Mi/s -ascon_hash/1024_stddev 141 ns 141 ns 8 10.5063 9.94917m 1.80824m 1.64731m 5.75308Mi/s -ascon_hash/1024_cv 2.82 % 2.82 % 8 0.05% 0.05% 0.00% 0.05% 2.86% -ascon_hash/2048_mean 9786 ns 9786 ns 8 43.7059k 21.0124 152.597k 3.49145 202.864Mi/s -ascon_hash/2048_median 9835 ns 9834 ns 8 43.7068k 21.0129 152.597k 3.49138 201.706Mi/s -ascon_hash/2048_stddev 284 ns 284 ns 8 13.5133 6.49677m 0 1.07959m 5.99614Mi/s -ascon_hash/2048_cv 2.90 % 2.90 % 8 0.03% 0.03% 0.00% 0.03% 2.96% -ascon128a_aead_encrypt/64/32_mean 286 ns 286 ns 8 1.29913k 13.5326 4.396k 3.38379 320.064Mi/s -ascon128a_aead_encrypt/64/32_median 285 ns 285 ns 8 1.2989k 13.5302 4.396k 3.38441 321.269Mi/s -ascon128a_aead_encrypt/64/32_stddev 9.13 ns 9.13 ns 8 0.476954 4.96827m 65.2493u 1.24191m 10.1731Mi/s -ascon128a_aead_encrypt/64/32_cv 3.19 % 3.19 % 8 0.04% 0.04% 0.00% 0.04% 3.18% -ascon_xofa/1024/64_mean 3555 ns 3555 ns 8 15.5598k 14.3013 56.105k 3.60576 292.061Mi/s -ascon_xofa/1024/64_median 3584 ns 3583 ns 8 15.5602k 14.3017 56.105k 3.60567 289.553Mi/s -ascon_xofa/1024/64_stddev 92.1 ns 92.1 ns 8 9.86026 9.06274m 738.212u 2.28647m 7.95552Mi/s -ascon_xofa/1024/64_cv 2.59 % 2.59 % 8 0.06% 0.06% 0.00% 0.06% 2.72% -ascon_hash/256_mean 1390 ns 1390 ns 8 6.1951k 21.5108 21.557k 3.47969 197.791Mi/s -ascon_hash/256_median 1405 ns 1404 ns 8 6.19476k 21.5096 21.557k 3.47988 195.568Mi/s -ascon_hash/256_stddev 41.2 ns 41.2 ns 8 3.12104 0.010837 260.997u 1.753m 6.01339Mi/s -ascon_hash/256_cv 2.96 % 2.96 % 8 0.05% 0.05% 0.00% 0.05% 3.04% -ascon_prf/2048/32_mean 2641 ns 2641 ns 8 11.7476k 5.64789 40.067k 3.4109 751.119Mi/s -ascon_prf/2048/32_median 2630 ns 2630 ns 8 11.6774k 5.61416 40.067k 3.43115 754.17Mi/s -ascon_prf/2048/32_stddev 33.0 ns 33.0 ns 8 107.136 0.0515078 521.995u 0.0309716 9.31663Mi/s -ascon_prf/2048/32_cv 1.25 % 1.25 % 8 0.91% 0.91% 0.00% 0.91% 1.24% -ascon80pq_aead_encrypt/64/32_mean 420 ns 420 ns 8 1.95463k 20.3607 5.172k 2.64603 218.148Mi/s -ascon80pq_aead_encrypt/64/32_median 419 ns 419 ns 8 1.95464k 20.3608 5.172k 2.64602 218.482Mi/s -ascon80pq_aead_encrypt/64/32_stddev 2.80 ns 2.79 ns 8 0.21224 2.21084m 0 287.324u 1.43529Mi/s -ascon80pq_aead_encrypt/64/32_cv 0.67 % 0.67 % 8 0.01% 0.01% 0.00% 0.01% 0.66% -ascon80pq_aead_decrypt/256/32_mean 1030 ns 1030 ns 8 4.78264k 16.6064 12.253k 2.56197 266.692Mi/s -ascon80pq_aead_decrypt/256/32_median 1025 ns 1025 ns 8 4.78271k 16.6066 12.253k 2.56194 267.952Mi/s -ascon80pq_aead_decrypt/256/32_stddev 10.6 ns 10.6 ns 8 1.01752 3.53304m 184.553u 545.105u 2.7117Mi/s -ascon80pq_aead_decrypt/256/32_cv 1.03 % 1.03 % 8 0.02% 0.02% 0.00% 0.02% 1.02% -ascon80pq_aead_decrypt/512/32_mean 1828 ns 1828 ns 8 8.5048k 15.6338 21.561k 2.53516 283.774Mi/s -ascon80pq_aead_decrypt/512/32_median 1825 ns 1825 ns 8 8.50399k 15.6323 21.561k 2.5354 284.234Mi/s -ascon80pq_aead_decrypt/512/32_stddev 10.5 ns 10.5 ns 8 2.72973 5.01789m 0 813.414u 1.60765Mi/s -ascon80pq_aead_decrypt/512/32_cv 0.58 % 0.57 % 8 0.03% 0.03% 0.00% 0.03% 0.57% -ascon_hasha/512_mean 1778 ns 1778 ns 8 7.84255k 14.4164 28.341k 3.61375 292.165Mi/s -ascon_hasha/512_median 1796 ns 1796 ns 8 7.84177k 14.415 28.341k 3.61411 288.886Mi/s -ascon_hasha/512_stddev 60.9 ns 60.9 ns 8 3.43546 6.31518m 521.995u 1.5825m 10.3311Mi/s -ascon_hasha/512_cv 3.42 % 3.42 % 8 0.04% 0.04% 0.00% 0.04% 3.54% +Load Average: 0.29, 0.23, 0.29 +------------------------------------------------------------------------------------------------------------------------- +Benchmark Time CPU Iterations CYCLES CYCLES/ BYTE bytes_per_second +------------------------------------------------------------------------------------------------------------------------- +ascon128a_aead_encrypt/256/32_mean 583 ns 583 ns 10 2.73022k 9.47994 471.215Mi/s +ascon128a_aead_encrypt/256/32_median 583 ns 583 ns 10 2.73024k 9.48001 471.281Mi/s +ascon128a_aead_encrypt/256/32_stddev 0.901 ns 0.895 ns 10 2.02359 7.02635m 740.431Ki/s +ascon128a_aead_encrypt/256/32_cv 0.15 % 0.15 % 10 0.07% 0.07% 0.15% +ascon128a_aead_encrypt/256/32_min 582 ns 582 ns 10 2.72776k 9.47137 470.067Mi/s +ascon128a_aead_encrypt/256/32_max 584 ns 584 ns 10 2.7344k 9.49445 472.077Mi/s +ascon80pq_aead_decrypt/256/32_mean 848 ns 848 ns 10 3.97168k 13.7906 323.85Mi/s +ascon80pq_aead_decrypt/256/32_median 847 ns 847 ns 10 3.97155k 13.7901 324.179Mi/s +ascon80pq_aead_decrypt/256/32_stddev 1.83 ns 1.82 ns 10 0.617003 2.14237m 709.473Ki/s +ascon80pq_aead_decrypt/256/32_cv 0.22 % 0.21 % 10 0.02% 0.02% 0.21% +ascon80pq_aead_decrypt/256/32_min 847 ns 847 ns 10 3.97089k 13.7878 322.397Mi/s +ascon80pq_aead_decrypt/256/32_max 852 ns 852 ns 10 3.97279k 13.7944 324.252Mi/s +ascon128a_aead_decrypt/4096/32_mean 6907 ns 6907 ns 10 32.3516k 7.83712 569.983Mi/s +ascon128a_aead_decrypt/4096/32_median 6903 ns 6903 ns 10 32.3557k 7.8381 570.313Mi/s +ascon128a_aead_decrypt/4096/32_stddev 17.6 ns 17.6 ns 10 45.2308 0.0109571 1.44855Mi/s +ascon128a_aead_decrypt/4096/32_cv 0.25 % 0.25 % 10 0.14% 0.14% 0.25% +ascon128a_aead_decrypt/4096/32_min 6887 ns 6887 ns 10 32.2759k 7.81876 566.589Mi/s +ascon128a_aead_decrypt/4096/32_max 6948 ns 6948 ns 10 32.4444k 7.85959 571.664Mi/s +ascon128_aead_encrypt/4096/32_mean 10086 ns 10085 ns 10 47.2309k 11.4416 390.351Mi/s +ascon128_aead_encrypt/4096/32_median 10080 ns 10079 ns 10 47.2328k 11.4421 390.604Mi/s +ascon128_aead_encrypt/4096/32_stddev 16.1 ns 16.3 ns 10 9.96508 2.41402m 645.38Ki/s +ascon128_aead_encrypt/4096/32_cv 0.16 % 0.16 % 10 0.02% 0.02% 0.16% +ascon128_aead_encrypt/4096/32_min 10074 ns 10074 ns 10 47.2158k 11.4379 388.908Mi/s +ascon128_aead_encrypt/4096/32_max 10123 ns 10123 ns 10 47.2476k 11.4456 390.797Mi/s +ascon_permutation<6>_mean 21.7 ns 21.7 ns 10 101.497 2.53743 1.71883Gi/s +ascon_permutation<6>_median 21.7 ns 21.7 ns 10 101.485 2.53713 1.71992Gi/s +ascon_permutation<6>_stddev 0.032 ns 0.032 ns 10 0.0342719 856.797u 2.62771Mi/s +ascon_permutation<6>_cv 0.15 % 0.15 % 10 0.03% 0.03% 0.15% +ascon_permutation<6>_min 21.6 ns 21.6 ns 10 101.478 2.53695 1.71464Gi/s +ascon_permutation<6>_max 21.7 ns 21.7 ns 10 101.592 2.53979 1.72121Gi/s +ascon_permutation<12>_mean 39.6 ns 39.6 ns 10 185.508 4.6377 962.926Mi/s +ascon_permutation<12>_median 39.6 ns 39.6 ns 10 185.513 4.63784 963.906Mi/s +ascon_permutation<12>_stddev 0.079 ns 0.079 ns 10 0.041601 1.04002m 1.92727Mi/s +ascon_permutation<12>_cv 0.20 % 0.20 % 10 0.02% 0.02% 0.20% +ascon_permutation<12>_min 39.6 ns 39.6 ns 10 185.452 4.63631 959.01Mi/s +ascon_permutation<12>_max 39.8 ns 39.8 ns 10 185.553 4.63883 964.379Mi/s +ascon128a_aead_encrypt/64/32_mean 263 ns 263 ns 10 1.23018k 12.8143 348.335Mi/s +ascon128a_aead_encrypt/64/32_median 263 ns 263 ns 10 1.23008k 12.8133 348.488Mi/s +ascon128a_aead_encrypt/64/32_stddev 0.371 ns 0.370 ns 10 0.340605 3.54797m 501.565Ki/s +ascon128a_aead_encrypt/64/32_cv 0.14 % 0.14 % 10 0.03% 0.03% 0.14% +ascon128a_aead_encrypt/64/32_min 262 ns 262 ns 10 1.2298k 12.8105 347.496Mi/s +ascon128a_aead_encrypt/64/32_max 263 ns 263 ns 10 1.23074k 12.8203 348.89Mi/s +ascon128_aead_decrypt/64/32_mean 374 ns 374 ns 10 1.75302k 18.2606 244.728Mi/s +ascon128_aead_decrypt/64/32_median 374 ns 374 ns 10 1.75302k 18.2607 244.807Mi/s +ascon128_aead_decrypt/64/32_stddev 0.431 ns 0.433 ns 10 0.257703 2.6844m 289.127Ki/s +ascon128_aead_decrypt/64/32_cv 0.12 % 0.12 % 10 0.01% 0.01% 0.12% +ascon128_aead_decrypt/64/32_min 374 ns 374 ns 10 1.75264k 18.2567 243.959Mi/s +ascon128_aead_decrypt/64/32_max 375 ns 375 ns 10 1.75342k 18.2648 244.915Mi/s +ascon80pq_aead_decrypt/64/32_mean 375 ns 375 ns 10 1.754k 18.2709 244.463Mi/s +ascon80pq_aead_decrypt/64/32_median 374 ns 374 ns 10 1.75401k 18.2709 244.671Mi/s +ascon80pq_aead_decrypt/64/32_stddev 0.604 ns 0.595 ns 10 0.181081 1.88626m 397.178Ki/s +ascon80pq_aead_decrypt/64/32_cv 0.16 % 0.16 % 10 0.01% 0.01% 0.16% +ascon80pq_aead_decrypt/64/32_min 374 ns 374 ns 10 1.75379k 18.2686 243.587Mi/s +ascon80pq_aead_decrypt/64/32_max 376 ns 376 ns 10 1.75444k 18.2754 244.752Mi/s +ascon_prf/64/64_mean 316 ns 316 ns 10 1.47886k 11.5536 386.46Mi/s +ascon_prf/64/64_median 316 ns 316 ns 10 1.47856k 11.5512 386.753Mi/s +ascon_prf/64/64_stddev 0.557 ns 0.560 ns 10 0.746104 5.82894m 701.485Ki/s +ascon_prf/64/64_cv 0.18 % 0.18 % 10 0.05% 0.05% 0.18% +ascon_prf/64/64_min 315 ns 315 ns 10 1.47814k 11.548 385.37Mi/s +ascon_prf/64/64_max 317 ns 317 ns 10 1.48012k 11.5634 387.188Mi/s +ascon_prfs_verify/16_mean 51.3 ns 51.3 ns 10 240.396 7.51238 594.626Mi/s +ascon_prfs_verify/16_median 51.3 ns 51.3 ns 10 240.361 7.51127 594.825Mi/s +ascon_prfs_verify/16_stddev 0.097 ns 0.096 ns 10 0.279239 8.72621m 1.11445Mi/s +ascon_prfs_verify/16_cv 0.19 % 0.19 % 10 0.12% 0.12% 0.19% +ascon_prfs_verify/16_min 51.2 ns 51.2 ns 10 240.038 7.5012 592.665Mi/s +ascon_prfs_verify/16_max 51.5 ns 51.5 ns 10 240.958 7.52994 595.885Mi/s +ascon_mac_verify/4096_mean 5096 ns 5096 ns 10 23.8667k 5.78166 772.566Mi/s +ascon_mac_verify/4096_median 5096 ns 5096 ns 10 23.8678k 5.78192 772.575Mi/s +ascon_mac_verify/4096_stddev 10.0 ns 9.98 ns 10 48.6134 0.0117765 1.51182Mi/s +ascon_mac_verify/4096_cv 0.20 % 0.20 % 10 0.20% 0.20% 0.20% +ascon_mac_verify/4096_min 5080 ns 5080 ns 10 23.7886k 5.76274 769.735Mi/s +ascon_mac_verify/4096_max 5115 ns 5114 ns 10 23.9392k 5.79922 775.023Mi/s +ascon_hash/1024_mean 4682 ns 4682 ns 10 21.9285k 20.7657 215.108Mi/s +ascon_hash/1024_median 4679 ns 4679 ns 10 21.9289k 20.766 215.251Mi/s +ascon_hash/1024_stddev 6.82 ns 6.85 ns 10 1.29733 1.22853m 321.625Ki/s +ascon_hash/1024_cv 0.15 % 0.15 % 10 0.01% 0.01% 0.15% +ascon_hash/1024_min 4677 ns 4676 ns 10 21.9263k 20.7635 214.355Mi/s +ascon_hash/1024_max 4698 ns 4698 ns 10 21.9301k 20.7671 215.352Mi/s +ascon128_aead_encrypt/64/32_mean 361 ns 361 ns 10 1.69123k 17.6169 253.723Mi/s +ascon128_aead_encrypt/64/32_median 361 ns 361 ns 10 1.69122k 17.6169 253.757Mi/s +ascon128_aead_encrypt/64/32_stddev 0.169 ns 0.168 ns 10 0.149425 1.55651m 121.09Ki/s +ascon128_aead_encrypt/64/32_cv 0.05 % 0.05 % 10 0.01% 0.01% 0.05% +ascon128_aead_encrypt/64/32_min 361 ns 361 ns 10 1.69093k 17.6139 253.442Mi/s +ascon128_aead_encrypt/64/32_max 361 ns 361 ns 10 1.69153k 17.6201 253.825Mi/s +ascon_prfs_authenticate/16_mean 44.3 ns 44.3 ns 10 207.439 6.48247 689.419Mi/s +ascon_prfs_authenticate/16_median 44.3 ns 44.3 ns 10 207.424 6.48199 689.502Mi/s +ascon_prfs_authenticate/16_stddev 0.053 ns 0.053 ns 10 0.113054 3.53294m 844.366Ki/s +ascon_prfs_authenticate/16_cv 0.12 % 0.12 % 10 0.05% 0.05% 0.12% +ascon_prfs_authenticate/16_min 44.2 ns 44.2 ns 10 207.324 6.47886 687.385Mi/s +ascon_prfs_authenticate/16_max 44.4 ns 44.4 ns 10 207.659 6.48936 690.158Mi/s +ascon_xofa/4096/64_mean 12527 ns 12526 ns 10 58.6404k 14.0962 316.717Mi/s +ascon_xofa/4096/64_median 12515 ns 12515 ns 10 58.6405k 14.0963 317.006Mi/s +ascon_xofa/4096/64_stddev 26.6 ns 26.7 ns 10 9.20608 2.213m 689.003Ki/s +ascon_xofa/4096/64_cv 0.21 % 0.21 % 10 0.02% 0.02% 0.21% +ascon_xofa/4096/64_min 12506 ns 12505 ns 10 58.6294k 14.0936 315.086Mi/s +ascon_xofa/4096/64_max 12591 ns 12591 ns 10 58.6625k 14.1016 317.247Mi/s +ascon_hasha/1024_mean 3167 ns 3167 ns 10 14.8329k 14.0463 318.022Mi/s +ascon_hasha/1024_median 3165 ns 3165 ns 10 14.8321k 14.0455 318.211Mi/s +ascon_hasha/1024_stddev 3.58 ns 3.59 ns 10 2.51923 2.38563m 368.341Ki/s +ascon_hasha/1024_cv 0.11 % 0.11 % 10 0.02% 0.02% 0.11% +ascon_hasha/1024_min 3164 ns 3164 ns 10 14.8301k 14.0437 317.358Mi/s +ascon_hasha/1024_max 3174 ns 3173 ns 10 14.8373k 14.0504 318.343Mi/s +ascon_prfs_authenticate/1_mean 51.3 ns 51.2 ns 10 239.992 14.1172 316.346Mi/s +ascon_prfs_authenticate/1_median 51.2 ns 51.2 ns 10 240.029 14.1193 316.512Mi/s +ascon_prfs_authenticate/1_stddev 0.079 ns 0.078 ns 10 0.114951 6.76182m 492.101Ki/s +ascon_prfs_authenticate/1_cv 0.15 % 0.15 % 10 0.05% 0.05% 0.15% +ascon_prfs_authenticate/1_min 51.2 ns 51.2 ns 10 239.797 14.1057 315.608Mi/s +ascon_prfs_authenticate/1_max 51.4 ns 51.4 ns 10 240.141 14.126 316.944Mi/s +ascon_mac_authenticate/1024_mean 1365 ns 1365 ns 10 6.39016k 6.14438 726.797Mi/s +ascon_mac_authenticate/1024_median 1364 ns 1363 ns 10 6.38624k 6.14062 727.68Mi/s +ascon_mac_authenticate/1024_stddev 5.07 ns 5.04 ns 10 20.6963 0.0199002 2.67735Mi/s +ascon_mac_authenticate/1024_cv 0.37 % 0.37 % 10 0.32% 0.32% 0.37% +ascon_mac_authenticate/1024_min 1359 ns 1359 ns 10 6.36335k 6.11861 721.697Mi/s +ascon_mac_authenticate/1024_max 1374 ns 1374 ns 10 6.42797k 6.18074 729.876Mi/s +ascon_mac_verify/1024_mean 1366 ns 1366 ns 10 6.40335k 6.06378 737.215Mi/s +ascon_mac_verify/1024_median 1367 ns 1366 ns 10 6.40619k 6.06647 737.018Mi/s +ascon_mac_verify/1024_stddev 4.57 ns 4.57 ns 10 21.3835 0.0202496 2.46954Mi/s +ascon_mac_verify/1024_cv 0.33 % 0.33 % 10 0.33% 0.33% 0.33% +ascon_mac_verify/1024_min 1360 ns 1360 ns 10 6.37343k 6.03544 734.118Mi/s +ascon_mac_verify/1024_max 1372 ns 1372 ns 10 6.42976k 6.08879 740.682Mi/s +ascon_hash/256_mean 1318 ns 1318 ns 10 6.17232k 21.4317 208.451Mi/s +ascon_hash/256_median 1317 ns 1317 ns 10 6.17229k 21.4316 208.567Mi/s +ascon_hash/256_stddev 1.59 ns 1.57 ns 10 0.317396 1.10207m 254.873Ki/s +ascon_hash/256_cv 0.12 % 0.12 % 10 0.01% 0.01% 0.12% +ascon_hash/256_min 1316 ns 1316 ns 10 6.17195k 21.4304 208Mi/s +ascon_hash/256_max 1320 ns 1320 ns 10 6.1731k 21.4344 208.646Mi/s +ascon_hasha/4096_mean 12235 ns 12234 ns 10 57.2771k 13.8753 321.784Mi/s +ascon_hasha/4096_median 12223 ns 12223 ns 10 57.2739k 13.8745 322.073Mi/s +ascon_hasha/4096_stddev 19.8 ns 19.7 ns 10 12.6403 3.06208m 529.687Ki/s +ascon_hasha/4096_cv 0.16 % 0.16 % 10 0.02% 0.02% 0.16% +ascon_hasha/4096_min 12213 ns 12213 ns 10 57.258k 13.8706 320.931Mi/s +ascon_hasha/4096_max 12267 ns 12267 ns 10 57.299k 13.8806 322.346Mi/s +ascon80pq_aead_encrypt/4096/32_mean 10186 ns 10185 ns 10 47.6945k 11.5539 386.515Mi/s +ascon80pq_aead_encrypt/4096/32_median 10180 ns 10180 ns 10 47.6949k 11.554 386.729Mi/s +ascon80pq_aead_encrypt/4096/32_stddev 12.2 ns 12.1 ns 10 17.8077 4.31389m 470.473Ki/s +ascon80pq_aead_encrypt/4096/32_cv 0.12 % 0.12 % 10 0.04% 0.04% 0.12% +ascon80pq_aead_encrypt/4096/32_min 10173 ns 10172 ns 10 47.6736k 11.5488 385.739Mi/s +ascon80pq_aead_encrypt/4096/32_max 10206 ns 10206 ns 10 47.7315k 11.5629 387.004Mi/s +ascon128_aead_encrypt/1024/32_mean 2679 ns 2678 ns 10 12.5395k 11.8746 376.019Mi/s +ascon128_aead_encrypt/1024/32_median 2677 ns 2677 ns 10 12.5391k 11.8741 376.167Mi/s +ascon128_aead_encrypt/1024/32_stddev 4.48 ns 4.33 ns 10 1.63451 1.54783m 621.618Ki/s +ascon128_aead_encrypt/1024/32_cv 0.17 % 0.16 % 10 0.01% 0.01% 0.16% +ascon128_aead_encrypt/1024/32_min 2674 ns 2674 ns 10 12.5377k 11.8728 375.076Mi/s +ascon128_aead_encrypt/1024/32_max 2685 ns 2685 ns 10 12.5425k 11.8774 376.576Mi/s +ascon_permutation<1>_mean 6.69 ns 6.69 ns 10 31.3178 0.782946 5.57153Gi/s +ascon_permutation<1>_median 6.68 ns 6.68 ns 10 31.3189 0.782974 5.57392Gi/s +ascon_permutation<1>_stddev 0.011 ns 0.011 ns 10 0.0567209 1.41802m 9.42002Mi/s +ascon_permutation<1>_cv 0.17 % 0.17 % 10 0.18% 0.18% 0.17% +ascon_permutation<1>_min 6.67 ns 6.67 ns 10 31.2422 0.781056 5.55684Gi/s +ascon_permutation<1>_max 6.70 ns 6.70 ns 10 31.4141 0.785353 5.5866Gi/s +ascon_prfs_verify/1_mean 57.4 ns 57.4 ns 10 268.955 15.8209 282.266Mi/s +ascon_prfs_verify/1_median 57.5 ns 57.4 ns 10 268.968 15.8217 282.227Mi/s +ascon_prfs_verify/1_stddev 0.104 ns 0.104 ns 10 0.340261 0.0200153 524.026Ki/s +ascon_prfs_verify/1_cv 0.18 % 0.18 % 10 0.13% 0.13% 0.18% +ascon_prfs_verify/1_min 57.3 ns 57.3 ns 10 268.514 15.7949 281.362Mi/s +ascon_prfs_verify/1_max 57.6 ns 57.6 ns 10 269.436 15.8492 283.071Mi/s +ascon128a_aead_decrypt/64/32_mean 284 ns 284 ns 10 1.33076k 13.8621 322.306Mi/s +ascon128a_aead_decrypt/64/32_median 284 ns 284 ns 10 1.33098k 13.8644 322.453Mi/s +ascon128a_aead_decrypt/64/32_stddev 0.504 ns 0.504 ns 10 0.651693 6.78847m 583.669Ki/s +ascon128a_aead_decrypt/64/32_cv 0.18 % 0.18 % 10 0.05% 0.05% 0.18% +ascon128a_aead_decrypt/64/32_min 284 ns 284 ns 10 1.32943k 13.8482 320.723Mi/s +ascon128a_aead_decrypt/64/32_max 285 ns 285 ns 10 1.33143k 13.8691 322.734Mi/s +ascon_mac_authenticate/4096_mean 5091 ns 5091 ns 10 23.8368k 5.79689 770.287Mi/s +ascon_mac_authenticate/4096_median 5086 ns 5086 ns 10 23.8343k 5.79627 771.005Mi/s +ascon_mac_authenticate/4096_stddev 14.6 ns 14.6 ns 10 50.5 0.0122811 2.20416Mi/s +ascon_mac_authenticate/4096_cv 0.29 % 0.29 % 10 0.21% 0.21% 0.29% +ascon_mac_authenticate/4096_min 5072 ns 5072 ns 10 23.7771k 5.78238 766.433Mi/s +ascon_mac_authenticate/4096_max 5117 ns 5117 ns 10 23.945k 5.82319 773.202Mi/s +ascon80pq_aead_decrypt/1024/32_mean 2741 ns 2741 ns 10 12.8306k 12.1501 367.449Mi/s +ascon80pq_aead_decrypt/1024/32_median 2737 ns 2737 ns 10 12.8278k 12.1475 367.928Mi/s +ascon80pq_aead_decrypt/1024/32_stddev 6.37 ns 6.34 ns 10 7.65345 7.24759m 868.617Ki/s +ascon80pq_aead_decrypt/1024/32_cv 0.23 % 0.23 % 10 0.06% 0.06% 0.23% +ascon80pq_aead_decrypt/1024/32_min 2735 ns 2735 ns 10 12.8217k 12.1418 365.746Mi/s +ascon80pq_aead_decrypt/1024/32_max 2754 ns 2753 ns 10 12.8438k 12.1627 368.205Mi/s +ascon128_aead_encrypt/256/32_mean 831 ns 831 ns 10 3.86295k 13.413 330.783Mi/s +ascon128_aead_encrypt/256/32_median 825 ns 825 ns 10 3.86204k 13.4099 332.742Mi/s +ascon128_aead_encrypt/256/32_stddev 17.2 ns 17.2 ns 10 2.76152 9.58862m 6.50024Mi/s +ascon128_aead_encrypt/256/32_cv 2.07 % 2.07 % 10 0.07% 0.07% 1.97% +ascon128_aead_encrypt/256/32_min 824 ns 824 ns 10 3.86157k 13.4082 312.366Mi/s +ascon128_aead_encrypt/256/32_max 879 ns 879 ns 10 3.87069k 13.4399 333.482Mi/s +ascon_mac_authenticate/64_mean 197 ns 197 ns 10 921.057 11.5132 387.583Mi/s +ascon_mac_authenticate/64_median 197 ns 197 ns 10 921.358 11.517 387.568Mi/s +ascon_mac_authenticate/64_stddev 0.396 ns 0.416 ns 10 0.949702 0.0118713 837.983Ki/s +ascon_mac_authenticate/64_cv 0.20 % 0.21 % 10 0.10% 0.10% 0.21% +ascon_mac_authenticate/64_min 196 ns 196 ns 10 919.212 11.4902 386.077Mi/s +ascon_mac_authenticate/64_max 198 ns 198 ns 10 922.112 11.5264 388.828Mi/s +ascon_hash/64_mean 477 ns 477 ns 10 2.23342k 23.2648 191.992Mi/s +ascon_hash/64_median 477 ns 476 ns 10 2.23333k 23.2638 192.136Mi/s +ascon_hash/64_stddev 0.649 ns 0.661 ns 10 0.227305 2.36776m 272.067Ki/s +ascon_hash/64_cv 0.14 % 0.14 % 10 0.01% 0.01% 0.14% +ascon_hash/64_min 476 ns 476 ns 10 2.23313k 23.2617 191.401Mi/s +ascon_hash/64_max 478 ns 478 ns 10 2.23381k 23.2689 192.207Mi/s +ascon_xofa/256/64_mean 1030 ns 1030 ns 10 4.8265k 15.0828 296.25Mi/s +ascon_xofa/256/64_median 1030 ns 1030 ns 10 4.82651k 15.0829 296.415Mi/s +ascon_xofa/256/64_stddev 1.03 ns 1.04 ns 10 0.158769 496.153u 306.285Ki/s +ascon_xofa/256/64_cv 0.10 % 0.10 % 10 0.00% 0.00% 0.10% +ascon_xofa/256/64_min 1029 ns 1029 ns 10 4.82625k 15.082 295.684Mi/s +ascon_xofa/256/64_max 1032 ns 1032 ns 10 4.8268k 15.0838 296.471Mi/s +ascon80pq_aead_decrypt/4096/32_mean 10303 ns 10303 ns 10 48.2906k 11.6983 382.115Mi/s +ascon80pq_aead_decrypt/4096/32_median 10299 ns 10298 ns 10 48.2628k 11.6916 382.267Mi/s +ascon80pq_aead_decrypt/4096/32_stddev 14.8 ns 14.8 ns 10 72.4589 0.017553 562.287Ki/s +ascon80pq_aead_decrypt/4096/32_cv 0.14 % 0.14 % 10 0.15% 0.15% 0.14% +ascon80pq_aead_decrypt/4096/32_min 10286 ns 10286 ns 10 48.2176k 11.6806 381.179Mi/s +ascon80pq_aead_decrypt/4096/32_max 10328 ns 10328 ns 10 48.4216k 11.73 382.747Mi/s +ascon_xofa/1024/64_mean 3332 ns 3330 ns 10 15.5835k 14.323 311.577Mi/s +ascon_xofa/1024/64_median 3331 ns 3330 ns 10 15.5823k 14.3219 311.595Mi/s +ascon_xofa/1024/64_stddev 6.48 ns 6.17 ns 10 2.51164 2.3085m 590.141Ki/s +ascon_xofa/1024/64_cv 0.19 % 0.19 % 10 0.02% 0.02% 0.18% +ascon_xofa/1024/64_min 3323 ns 3323 ns 10 15.5814k 14.3211 310.433Mi/s +ascon_xofa/1024/64_max 3343 ns 3342 ns 10 15.5885k 14.3277 312.22Mi/s +ascon_hasha/256_mean 902 ns 902 ns 10 4.22477k 14.6693 304.451Mi/s +ascon_hasha/256_median 901 ns 901 ns 10 4.22477k 14.6694 304.706Mi/s +ascon_hasha/256_stddev 1.67 ns 1.68 ns 10 0.582183 2.02147m 577.686Ki/s +ascon_hasha/256_cv 0.19 % 0.19 % 10 0.01% 0.01% 0.19% +ascon_hasha/256_min 901 ns 901 ns 10 4.22353k 14.665 303.046Mi/s +ascon_hasha/256_max 906 ns 906 ns 10 4.22545k 14.6717 304.845Mi/s +ascon128a_aead_encrypt/4096/32_mean 6910 ns 6909 ns 10 32.3613k 7.83947 569.765Mi/s +ascon128a_aead_encrypt/4096/32_median 6907 ns 6907 ns 10 32.3624k 7.83973 569.995Mi/s +ascon128a_aead_encrypt/4096/32_stddev 8.11 ns 8.11 ns 10 5.69172 1.37881m 683.929Ki/s +ascon128a_aead_encrypt/4096/32_cv 0.12 % 0.12 % 10 0.02% 0.02% 0.12% +ascon128a_aead_encrypt/4096/32_min 6901 ns 6901 ns 10 32.3509k 7.83695 568.308Mi/s +ascon128a_aead_encrypt/4096/32_max 6928 ns 6927 ns 10 32.3691k 7.84135 570.489Mi/s +ascon_xofa/64/64_mean 455 ns 455 ns 10 2.13171k 16.654 268.19Mi/s +ascon_xofa/64/64_median 455 ns 455 ns 10 2.13165k 16.6535 268.419Mi/s +ascon_xofa/64/64_stddev 0.673 ns 0.672 ns 10 0.125686 981.922u 404.775Ki/s +ascon_xofa/64/64_cv 0.15 % 0.15 % 10 0.01% 0.01% 0.15% +ascon_xofa/64/64_min 455 ns 455 ns 10 2.13159k 16.653 267.526Mi/s +ascon_xofa/64/64_max 456 ns 456 ns 10 2.13194k 16.6558 268.497Mi/s +ascon_xof/4096/64_mean 18863 ns 18863 ns 10 88.204k 21.2029 210.327Mi/s +ascon_xof/4096/64_median 18823 ns 18822 ns 10 88.2028k 21.2026 210.775Mi/s +ascon_xof/4096/64_stddev 80.8 ns 80.9 ns 10 20.0327 4.81556m 916.907Ki/s +ascon_xof/4096/64_cv 0.43 % 0.43 % 10 0.02% 0.02% 0.43% +ascon_xof/4096/64_min 18809 ns 18809 ns 10 88.1802k 21.1972 208.102Mi/s +ascon_xof/4096/64_max 19064 ns 19064 ns 10 88.2348k 21.2103 210.924Mi/s +ascon_permutation<8>_mean 27.7 ns 27.7 ns 10 129.903 3.24757 1.3434Gi/s +ascon_permutation<8>_median 27.7 ns 27.7 ns 10 129.924 3.24809 1.34388Gi/s +ascon_permutation<8>_stddev 0.034 ns 0.034 ns 10 0.0501283 1.25321m 1.70468Mi/s +ascon_permutation<8>_cv 0.12 % 0.12 % 10 0.04% 0.04% 0.12% +ascon_permutation<8>_min 27.7 ns 27.7 ns 10 129.836 3.24589 1.33929Gi/s +ascon_permutation<8>_max 27.8 ns 27.8 ns 10 129.962 3.24905 1.34501Gi/s +ascon_hash/4096_mean 18154 ns 18153 ns 10 84.9931k 20.5894 216.866Mi/s +ascon_hash/4096_median 18147 ns 18146 ns 10 84.9969k 20.5903 216.946Mi/s +ascon_hash/4096_stddev 18.3 ns 17.9 ns 10 15.9394 3.86128m 219.457Ki/s +ascon_hash/4096_cv 0.10 % 0.10 % 10 0.02% 0.02% 0.10% +ascon_hash/4096_min 18131 ns 18131 ns 10 84.9506k 20.5791 216.486Mi/s +ascon_hash/4096_max 18187 ns 18185 ns 10 85.0112k 20.5938 217.13Mi/s +ascon128a_aead_decrypt/256/32_mean 604 ns 604 ns 10 2.82675k 9.8151 454.784Mi/s +ascon128a_aead_decrypt/256/32_median 603 ns 603 ns 10 2.82684k 9.81541 455.15Mi/s +ascon128a_aead_decrypt/256/32_stddev 1.44 ns 1.45 ns 10 2.16866 7.53008m 1.08815Mi/s +ascon128a_aead_decrypt/256/32_cv 0.24 % 0.24 % 10 0.08% 0.08% 0.24% +ascon128a_aead_decrypt/256/32_min 602 ns 602 ns 10 2.82355k 9.80398 452.47Mi/s +ascon128a_aead_decrypt/256/32_max 607 ns 607 ns 10 2.83035k 9.8276 455.894Mi/s +ascon128a_aead_decrypt/1024/32_mean 1862 ns 1862 ns 10 8.71715k 8.25488 540.906Mi/s +ascon128a_aead_decrypt/1024/32_median 1861 ns 1861 ns 10 8.71643k 8.25419 541.141Mi/s +ascon128a_aead_decrypt/1024/32_stddev 3.13 ns 3.12 ns 10 5.02203 4.75571m 927.552Ki/s +ascon128a_aead_decrypt/1024/32_cv 0.17 % 0.17 % 10 0.06% 0.06% 0.17% +ascon128a_aead_decrypt/1024/32_min 1859 ns 1859 ns 10 8.70915k 8.2473 539.329Mi/s +ascon128a_aead_decrypt/1024/32_max 1867 ns 1867 ns 10 8.7249k 8.26221 541.744Mi/s +ascon128a_aead_encrypt/1024/32_mean 1847 ns 1847 ns 10 8.65324k 8.19435 545.216Mi/s +ascon128a_aead_encrypt/1024/32_median 1847 ns 1847 ns 10 8.65273k 8.19387 545.388Mi/s +ascon128a_aead_encrypt/1024/32_stddev 1.86 ns 1.80 ns 10 4.47625 4.23888m 544.224Ki/s +ascon128a_aead_encrypt/1024/32_cv 0.10 % 0.10 % 10 0.05% 0.05% 0.10% +ascon128a_aead_encrypt/1024/32_min 1845 ns 1845 ns 10 8.64628k 8.18777 544.204Mi/s +ascon128a_aead_encrypt/1024/32_max 1851 ns 1851 ns 10 8.66342k 8.204 545.747Mi/s +ascon80pq_aead_encrypt/1024/32_mean 2681 ns 2681 ns 10 12.5584k 11.8924 375.609Mi/s +ascon80pq_aead_encrypt/1024/32_median 2681 ns 2681 ns 10 12.5594k 11.8934 375.677Mi/s +ascon80pq_aead_encrypt/1024/32_stddev 2.83 ns 2.83 ns 10 3.01172 2.852m 405.798Ki/s +ascon80pq_aead_encrypt/1024/32_cv 0.11 % 0.11 % 10 0.02% 0.02% 0.11% +ascon80pq_aead_encrypt/1024/32_min 2678 ns 2678 ns 10 12.5532k 11.8875 374.92Mi/s +ascon80pq_aead_encrypt/1024/32_max 2686 ns 2686 ns 10 12.5622k 11.896 376.014Mi/s +ascon_prf/256/64_mean 530 ns 530 ns 10 2.48466k 7.76457 575.469Mi/s +ascon_prf/256/64_median 530 ns 530 ns 10 2.48501k 7.76564 575.738Mi/s +ascon_prf/256/64_stddev 0.671 ns 0.673 ns 10 1.2669 3.95906m 746.588Ki/s +ascon_prf/256/64_cv 0.13 % 0.13 % 10 0.05% 0.05% 0.13% +ascon_prf/256/64_min 529 ns 529 ns 10 2.48156k 7.75489 574.02Mi/s +ascon_prf/256/64_max 532 ns 532 ns 10 2.48581k 7.76817 576.441Mi/s +ascon80pq_aead_encrypt/64/32_mean 340 ns 340 ns 10 1.58961k 16.5585 269.633Mi/s +ascon80pq_aead_encrypt/64/32_median 340 ns 339 ns 10 1.58956k 16.5579 269.682Mi/s +ascon80pq_aead_encrypt/64/32_stddev 0.483 ns 0.473 ns 10 0.261329 2.72218m 384.221Ki/s +ascon80pq_aead_encrypt/64/32_cv 0.14 % 0.14 % 10 0.02% 0.02% 0.14% +ascon80pq_aead_encrypt/64/32_min 339 ns 339 ns 10 1.58928k 16.555 268.956Mi/s +ascon80pq_aead_encrypt/64/32_max 340 ns 340 ns 10 1.59016k 16.5641 270.1Mi/s +ascon_xof/256/64_mean 1519 ns 1519 ns 10 7.1128k 22.2275 200.93Mi/s +ascon_xof/256/64_median 1517 ns 1517 ns 10 7.11278k 22.2274 201.163Mi/s +ascon_xof/256/64_stddev 2.80 ns 2.77 ns 10 0.465721 1.45538m 374.978Ki/s +ascon_xof/256/64_cv 0.18 % 0.18 % 10 0.01% 0.01% 0.18% +ascon_xof/256/64_min 1517 ns 1517 ns 10 7.11197k 22.2249 200.219Mi/s +ascon_xof/256/64_max 1524 ns 1524 ns 10 7.11357k 22.2299 201.187Mi/s +ascon128_aead_decrypt/4096/32_mean 10361 ns 10361 ns 10 48.4704k 11.7419 379.967Mi/s +ascon128_aead_decrypt/4096/32_median 10365 ns 10365 ns 10 48.4303k 11.7322 379.825Mi/s +ascon128_aead_decrypt/4096/32_stddev 24.3 ns 24.4 ns 10 88.0863 0.0213387 916.649Ki/s +ascon128_aead_decrypt/4096/32_cv 0.23 % 0.24 % 10 0.18% 0.18% 0.24% +ascon128_aead_decrypt/4096/32_min 10331 ns 10330 ns 10 48.3873k 11.7217 378.731Mi/s +ascon128_aead_decrypt/4096/32_max 10395 ns 10395 ns 10 48.6071k 11.775 381.109Mi/s +ascon_mac_verify/64_mean 202 ns 202 ns 10 945.701 9.85105 453.208Mi/s +ascon_mac_verify/64_median 202 ns 202 ns 10 945.853 9.85264 453.334Mi/s +ascon_mac_verify/64_stddev 0.344 ns 0.343 ns 10 0.732957 7.63497m 786.773Ki/s +ascon_mac_verify/64_cv 0.17 % 0.17 % 10 0.08% 0.08% 0.17% +ascon_mac_verify/64_min 202 ns 202 ns 10 944.497 9.83851 451.901Mi/s +ascon_mac_verify/64_max 203 ns 203 ns 10 946.725 9.86172 454.293Mi/s +ascon_mac_verify/256_mean 434 ns 434 ns 10 2.03427k 7.06342 632.682Mi/s +ascon_mac_verify/256_median 434 ns 434 ns 10 2.033k 7.05904 633.129Mi/s +ascon_mac_verify/256_stddev 0.749 ns 0.702 ns 10 2.9101 0.0101045 1.02218Mi/s +ascon_mac_verify/256_cv 0.17 % 0.16 % 10 0.14% 0.14% 0.16% +ascon_mac_verify/256_min 433 ns 433 ns 10 2.0319k 7.05522 630.667Mi/s +ascon_mac_verify/256_max 436 ns 436 ns 10 2.0418k 7.08957 633.629Mi/s +ascon_prf/1024/64_mean 1387 ns 1387 ns 10 6.49455k 5.96925 747.987Mi/s +ascon_prf/1024/64_median 1387 ns 1387 ns 10 6.49606k 5.97064 748.236Mi/s +ascon_prf/1024/64_stddev 2.74 ns 2.75 ns 10 5.70791 5.24624m 1.48142Mi/s +ascon_prf/1024/64_cv 0.20 % 0.20 % 10 0.09% 0.09% 0.20% +ascon_prf/1024/64_min 1382 ns 1382 ns 10 6.48154k 5.9573 745.898Mi/s +ascon_prf/1024/64_max 1391 ns 1391 ns 10 6.50289k 5.97692 750.572Mi/s +ascon_hasha/64_mean 335 ns 335 ns 10 1.5682k 16.3354 273.305Mi/s +ascon_hasha/64_median 335 ns 335 ns 10 1.56818k 16.3352 273.542Mi/s +ascon_hasha/64_stddev 0.649 ns 0.645 ns 10 0.156033 1.62534m 538.206Ki/s +ascon_hasha/64_cv 0.19 % 0.19 % 10 0.01% 0.01% 0.19% +ascon_hasha/64_min 334 ns 334 ns 10 1.56788k 16.3321 272.353Mi/s +ascon_hasha/64_max 336 ns 336 ns 10 1.56843k 16.3378 273.784Mi/s +ascon_xof/64/64_mean 653 ns 653 ns 10 3.05929k 23.9007 186.883Mi/s +ascon_xof/64/64_median 653 ns 653 ns 10 3.05891k 23.8977 186.918Mi/s +ascon_xof/64/64_stddev 0.762 ns 0.752 ns 10 1.34015 0.0104699 220.139Ki/s +ascon_xof/64/64_cv 0.12 % 0.12 % 10 0.04% 0.04% 0.12% +ascon_xof/64/64_min 652 ns 652 ns 10 3.0582k 23.8922 186.477Mi/s +ascon_xof/64/64_max 655 ns 655 ns 10 3.06301k 23.9298 187.1Mi/s +ascon_mac_authenticate/256_mean 429 ns 429 ns 10 2.01021k 7.39048 604.805Mi/s +ascon_mac_authenticate/256_median 429 ns 429 ns 10 2.01013k 7.39019 604.752Mi/s +ascon_mac_authenticate/256_stddev 0.720 ns 0.727 ns 10 3.29322 0.0121074 1.02674Mi/s +ascon_mac_authenticate/256_cv 0.17 % 0.17 % 10 0.16% 0.16% 0.17% +ascon_mac_authenticate/256_min 427 ns 427 ns 10 2.00265k 7.36268 603.503Mi/s +ascon_mac_authenticate/256_max 430 ns 430 ns 10 2.01528k 7.40913 607.191Mi/s +ascon_prfs_verify/4_mean 57.1 ns 57.1 ns 10 267.452 13.3726 333.965Mi/s +ascon_prfs_verify/4_median 57.1 ns 57.1 ns 10 267.638 13.3819 333.931Mi/s +ascon_prfs_verify/4_stddev 0.122 ns 0.122 ns 10 0.502648 0.0251324 731.602Ki/s +ascon_prfs_verify/4_cv 0.21 % 0.21 % 10 0.19% 0.19% 0.21% +ascon_prfs_verify/4_min 56.9 ns 56.9 ns 10 266.466 13.3233 332.892Mi/s +ascon_prfs_verify/4_max 57.3 ns 57.3 ns 10 268.145 13.4073 334.978Mi/s +ascon128_aead_decrypt/1024/32_mean 2749 ns 2749 ns 10 12.8714k 12.1888 366.317Mi/s +ascon128_aead_decrypt/1024/32_median 2748 ns 2748 ns 10 12.8701k 12.1876 366.453Mi/s +ascon128_aead_decrypt/1024/32_stddev 4.39 ns 4.43 ns 10 9.29964 8.80647m 603.36Ki/s +ascon128_aead_decrypt/1024/32_cv 0.16 % 0.16 % 10 0.07% 0.07% 0.16% +ascon128_aead_decrypt/1024/32_min 2744 ns 2744 ns 10 12.8598k 12.1779 365.286Mi/s +ascon128_aead_decrypt/1024/32_max 2757 ns 2757 ns 10 12.8866k 12.2032 367.053Mi/s +ascon_xof/1024/64_mean 4984 ns 4984 ns 10 23.3291k 21.4422 208.207Mi/s +ascon_xof/1024/64_median 4982 ns 4981 ns 10 23.3278k 21.441 208.318Mi/s +ascon_xof/1024/64_stddev 10.5 ns 10.5 ns 10 4.52552 4.15948m 448.444Ki/s +ascon_xof/1024/64_cv 0.21 % 0.21 % 10 0.02% 0.02% 0.21% +ascon_xof/1024/64_min 4975 ns 4975 ns 10 23.3249k 21.4383 207.1Mi/s +ascon_xof/1024/64_max 5010 ns 5010 ns 10 23.3395k 21.4517 208.574Mi/s +ascon80pq_aead_encrypt/256/32_mean 808 ns 808 ns 10 3.78258k 13.134 340.039Mi/s +ascon80pq_aead_encrypt/256/32_median 807 ns 807 ns 10 3.78266k 13.1342 340.296Mi/s +ascon80pq_aead_encrypt/256/32_stddev 1.20 ns 1.20 ns 10 0.203471 706.496u 517.765Ki/s +ascon80pq_aead_encrypt/256/32_cv 0.15 % 0.15 % 10 0.01% 0.01% 0.15% +ascon80pq_aead_encrypt/256/32_min 807 ns 807 ns 10 3.78226k 13.1328 339.209Mi/s +ascon80pq_aead_encrypt/256/32_max 810 ns 810 ns 10 3.7828k 13.1347 340.46Mi/s +ascon128_aead_decrypt/256/32_mean 849 ns 849 ns 10 3.97819k 13.8132 323.427Mi/s +ascon128_aead_decrypt/256/32_median 849 ns 849 ns 10 3.97785k 13.812 323.618Mi/s +ascon128_aead_decrypt/256/32_stddev 1.12 ns 1.12 ns 10 0.6633 2.30313m 434.992Ki/s +ascon128_aead_decrypt/256/32_cv 0.13 % 0.13 % 10 0.02% 0.02% 0.13% +ascon128_aead_decrypt/256/32_min 848 ns 848 ns 10 3.97757k 13.811 322.456Mi/s +ascon128_aead_decrypt/256/32_max 852 ns 852 ns 10 3.97937k 13.8173 323.73Mi/s +ascon_prf/4096/64_mean 4818 ns 4817 ns 10 22.5586k 5.42275 823.54Mi/s +ascon_prf/4096/64_median 4813 ns 4813 ns 10 22.5605k 5.4232 824.286Mi/s +ascon_prf/4096/64_stddev 8.78 ns 8.76 ns 10 29.2276 7.02587m 1.49528Mi/s +ascon_prf/4096/64_cv 0.18 % 0.18 % 10 0.13% 0.13% 0.18% +ascon_prf/4096/64_min 4806 ns 4806 ns 10 22.5135k 5.4119 820.974Mi/s +ascon_prf/4096/64_max 4832 ns 4832 ns 10 22.5988k 5.4324 825.498Mi/s +ascon_prfs_authenticate/4_mean 51.9 ns 51.9 ns 10 243.032 12.1516 367.346Mi/s +ascon_prfs_authenticate/4_median 51.9 ns 51.9 ns 10 242.998 12.1499 367.55Mi/s +ascon_prfs_authenticate/4_stddev 0.114 ns 0.113 ns 10 0.202861 0.0101431 817.607Ki/s +ascon_prfs_authenticate/4_cv 0.22 % 0.22 % 10 0.08% 0.08% 0.22% +ascon_prfs_authenticate/4_min 51.8 ns 51.8 ns 10 242.804 12.1402 365.629Mi/s +ascon_prfs_authenticate/4_max 52.2 ns 52.2 ns 10 243.485 12.1743 368.22Mi/s +``` + +### On ARM Cortex-A72 ( i.e. Raspberry Pi 4B ) + +Compiled with **gcc version 13.2.0 (Ubuntu 13.2.0-4ubuntu3).** + +```bash +$ uname -srm +Linux 6.5.0-1009-raspi aarch64 +``` + +```bash +2024-02-04T15:14:17+04:00 +Running ./build/perfs/perf.out +Run on (4 X 1800 MHz CPU s) +CPU Caches: + L1 Data 32 KiB (x4) + L1 Instruction 48 KiB (x4) + L2 Unified 1024 KiB (x1) +Load Average: 18.33, 12.37, 5.86 +------------------------------------------------------------------------------------------------------------------------- +Benchmark Time CPU Iterations CYCLES CYCLES/ BYTE bytes_per_second +------------------------------------------------------------------------------------------------------------------------- +ascon128a_aead_decrypt/4096/32_mean 26659 ns 26641 ns 10 47.8582k 11.5935 147.773Mi/s +ascon128a_aead_decrypt/4096/32_median 26661 ns 26635 ns 10 47.8025k 11.5801 147.807Mi/s +ascon128a_aead_decrypt/4096/32_stddev 78.4 ns 74.9 ns 10 137.319 0.0332651 423.803Ki/s +ascon128a_aead_decrypt/4096/32_cv 0.29 % 0.28 % 10 0.29% 0.29% 0.28% +ascon128a_aead_decrypt/4096/32_min 26578 ns 26577 ns 10 47.7726k 11.5728 146.739Mi/s +ascon128a_aead_decrypt/4096/32_max 26835 ns 26828 ns 10 48.2191k 11.681 148.126Mi/s +ascon_permutation<12>_mean 119 ns 119 ns 10 213.514 5.33784 320.945Mi/s +ascon_permutation<12>_median 119 ns 119 ns 10 213.761 5.34402 320.765Mi/s +ascon_permutation<12>_stddev 0.310 ns 0.305 ns 10 0.615609 0.0153902 843.918Ki/s +ascon_permutation<12>_cv 0.26 % 0.26 % 10 0.29% 0.29% 0.26% +ascon_permutation<12>_min 119 ns 118 ns 10 212.526 5.31315 319.679Mi/s +ascon_permutation<12>_max 120 ns 119 ns 10 214.016 5.3504 322.078Mi/s +ascon_mac_verify/1024_mean 4685 ns 4683 ns 10 8.41575k 7.96946 215.046Mi/s +ascon_mac_verify/1024_median 4684 ns 4682 ns 10 8.41343k 7.96727 215.11Mi/s +ascon_mac_verify/1024_stddev 7.81 ns 8.37 ns 10 15.944 0.0150985 393.549Ki/s +ascon_mac_verify/1024_cv 0.17 % 0.18 % 10 0.19% 0.19% 0.18% +ascon_mac_verify/1024_min 4673 ns 4672 ns 10 8.39298k 7.9479 214.431Mi/s +ascon_mac_verify/1024_max 4698 ns 4697 ns 10 8.44078k 7.99317 215.542Mi/s +ascon_mac_authenticate/256_mean 1468 ns 1468 ns 10 2.6383k 9.69962 176.703Mi/s +ascon_mac_authenticate/256_median 1468 ns 1468 ns 10 2.63739k 9.69628 176.759Mi/s +ascon_mac_authenticate/256_stddev 3.06 ns 2.97 ns 10 5.14905 0.0189303 365.506Ki/s +ascon_mac_authenticate/256_cv 0.21 % 0.20 % 10 0.20% 0.20% 0.20% +ascon_mac_authenticate/256_min 1464 ns 1464 ns 10 2.63194k 9.67625 176.048Mi/s +ascon_mac_authenticate/256_max 1474 ns 1473 ns 10 2.64756k 9.73367 177.172Mi/s +ascon128a_aead_decrypt/256/32_mean 2223 ns 2222 ns 10 3.99141k 13.859 123.61Mi/s +ascon128a_aead_decrypt/256/32_median 2222 ns 2221 ns 10 3.99155k 13.8595 123.667Mi/s +ascon128a_aead_decrypt/256/32_stddev 4.14 ns 2.53 ns 10 0.918458 3.18909m 144.175Ki/s +ascon128a_aead_decrypt/256/32_cv 0.19 % 0.11 % 10 0.02% 0.02% 0.11% +ascon128a_aead_decrypt/256/32_min 2220 ns 2219 ns 10 3.98957k 13.8527 123.351Mi/s +ascon128a_aead_decrypt/256/32_max 2231 ns 2227 ns 10 3.99242k 13.8626 123.748Mi/s +ascon_hasha/1024_mean 10732 ns 10727 ns 10 19.2737k 18.2516 93.8816Mi/s +ascon_hasha/1024_median 10727 ns 10724 ns 10 19.2733k 18.2512 93.9132Mi/s +ascon_hasha/1024_stddev 13.1 ns 8.06 ns 10 0.867178 821.191u 72.154Ki/s +ascon_hasha/1024_cv 0.12 % 0.08 % 10 0.00% 0.00% 0.08% +ascon_hasha/1024_min 10723 ns 10721 ns 10 19.273k 18.251 93.7443Mi/s +ascon_hasha/1024_max 10760 ns 10743 ns 10 19.2757k 18.2535 93.932Mi/s +ascon_hash/4096_mean 60887 ns 60846 ns 10 109.304k 26.4788 64.7005Mi/s +ascon_hash/4096_median 60866 ns 60834 ns 10 109.306k 26.4791 64.7129Mi/s +ascon_hash/4096_stddev 77.5 ns 44.4 ns 10 12.3617 2.99461m 48.3581Ki/s +ascon_hash/4096_cv 0.13 % 0.07 % 10 0.01% 0.01% 0.07% +ascon_hash/4096_min 60819 ns 60805 ns 10 109.288k 26.4747 64.6Mi/s +ascon_hash/4096_max 61056 ns 60941 ns 10 109.318k 26.482 64.7439Mi/s +ascon_prfs_authenticate/1_mean 161 ns 161 ns 10 289.027 17.0016 100.696Mi/s +ascon_prfs_authenticate/1_median 161 ns 161 ns 10 289.016 17.0009 100.794Mi/s +ascon_prfs_authenticate/1_stddev 0.584 ns 0.392 ns 10 0.0262356 1.54327m 249.768Ki/s +ascon_prfs_authenticate/1_cv 0.36 % 0.24 % 10 0.01% 0.01% 0.24% +ascon_prfs_authenticate/1_min 161 ns 161 ns 10 289.012 17.0007 100.035Mi/s +ascon_prfs_authenticate/1_max 163 ns 162 ns 10 289.098 17.0058 100.828Mi/s +ascon80pq_aead_decrypt/1024/32_mean 7533 ns 7530 ns 10 13.5312k 12.8136 133.741Mi/s +ascon80pq_aead_decrypt/1024/32_median 7530 ns 7529 ns 10 13.5332k 12.8156 133.759Mi/s +ascon80pq_aead_decrypt/1024/32_stddev 5.52 ns 2.77 ns 10 2.99788 2.8389m 50.2877Ki/s +ascon80pq_aead_decrypt/1024/32_cv 0.07 % 0.04 % 10 0.02% 0.02% 0.04% +ascon80pq_aead_decrypt/1024/32_min 7529 ns 7527 ns 10 13.5275k 12.8101 133.655Mi/s +ascon80pq_aead_decrypt/1024/32_max 7544 ns 7535 ns 10 13.5338k 12.8161 133.787Mi/s +ascon_xofa/256/64_mean 3443 ns 3442 ns 10 6.1854k 19.3294 88.6581Mi/s +ascon_xofa/256/64_median 3442 ns 3441 ns 10 6.18535k 19.3292 88.6767Mi/s +ascon_xofa/256/64_stddev 3.12 ns 2.03 ns 10 0.107035 334.485u 53.5191Ki/s +ascon_xofa/256/64_cv 0.09 % 0.06 % 10 0.00% 0.00% 0.06% +ascon_xofa/256/64_min 3441 ns 3441 ns 10 6.18534k 19.3292 88.5178Mi/s +ascon_xofa/256/64_max 3452 ns 3448 ns 10 6.18569k 19.3303 88.6939Mi/s +ascon_hasha/64_mean 1160 ns 1159 ns 10 2.08312k 21.6992 78.9784Mi/s +ascon_hasha/64_median 1159 ns 1159 ns 10 2.08312k 21.6991 78.996Mi/s +ascon_hasha/64_stddev 1.43 ns 0.776 ns 10 0.0337339 351.395u 54.044Ki/s +ascon_hasha/64_cv 0.12 % 0.07 % 10 0.00% 0.00% 0.07% +ascon_hasha/64_min 1159 ns 1159 ns 10 2.08309k 21.6988 78.8331Mi/s +ascon_hasha/64_max 1164 ns 1161 ns 10 2.08321k 21.7001 79.0078Mi/s +ascon128_aead_decrypt/64/32_mean 1048 ns 1047 ns 10 1.8781k 19.5635 87.4218Mi/s +ascon128_aead_decrypt/64/32_median 1046 ns 1045 ns 10 1.87802k 19.5627 87.5944Mi/s +ascon128_aead_decrypt/64/32_stddev 4.73 ns 3.86 ns 10 0.210532 2.19304m 327.984Ki/s +ascon128_aead_decrypt/64/32_cv 0.45 % 0.37 % 10 0.01% 0.01% 0.37% +ascon128_aead_decrypt/64/32_min 1045 ns 1045 ns 10 1.87788k 19.5613 86.5968Mi/s +ascon128_aead_decrypt/64/32_max 1060 ns 1057 ns 10 1.87844k 19.5671 87.6292Mi/s +ascon_prfs_verify/16_mean 204 ns 204 ns 10 366.012 11.4379 149.763Mi/s +ascon_prfs_verify/16_median 204 ns 204 ns 10 366.018 11.4381 149.769Mi/s +ascon_prfs_verify/16_stddev 0.214 ns 0.148 ns 10 0.0433161 1.35363m 111.487Ki/s +ascon_prfs_verify/16_cv 0.11 % 0.07 % 10 0.01% 0.01% 0.07% +ascon_prfs_verify/16_min 204 ns 204 ns 10 365.893 11.4342 149.556Mi/s +ascon_prfs_verify/16_max 204 ns 204 ns 10 366.046 11.4389 149.884Mi/s +ascon_mac_authenticate/1024_mean 4652 ns 4649 ns 10 8.33573k 8.01512 213.338Mi/s +ascon_mac_authenticate/1024_median 4648 ns 4645 ns 10 8.32215k 8.00206 213.536Mi/s +ascon_mac_authenticate/1024_stddev 24.5 ns 21.9 ns 10 24.8572 0.0239012 1.00384Mi/s +ascon_mac_authenticate/1024_cv 0.53 % 0.47 % 10 0.30% 0.30% 0.47% +ascon_mac_authenticate/1024_min 4625 ns 4624 ns 10 8.31201k 7.99231 211.619Mi/s +ascon_mac_authenticate/1024_max 4697 ns 4687 ns 10 8.3779k 8.05568 214.472Mi/s +ascon80pq_aead_encrypt/64/32_mean 1002 ns 1001 ns 10 1.79824k 18.7316 91.42Mi/s +ascon80pq_aead_encrypt/64/32_median 1001 ns 1001 ns 10 1.79739k 18.7228 91.4877Mi/s +ascon80pq_aead_encrypt/64/32_stddev 3.69 ns 2.58 ns 10 2.30936 0.0240559 240.414Ki/s +ascon80pq_aead_encrypt/64/32_cv 0.37 % 0.26 % 10 0.13% 0.13% 0.26% +ascon80pq_aead_encrypt/64/32_min 999 ns 999 ns 10 1.796k 18.7084 90.8685Mi/s +ascon80pq_aead_encrypt/64/32_max 1011 ns 1008 ns 10 1.80279k 18.7791 91.6189Mi/s +ascon128a_aead_encrypt/4096/32_mean 26096 ns 26085 ns 10 46.8721k 11.3547 150.92Mi/s +ascon128a_aead_encrypt/4096/32_median 26070 ns 26066 ns 10 46.8382k 11.3465 151.031Mi/s +ascon128a_aead_encrypt/4096/32_stddev 55.7 ns 54.4 ns 10 100.812 0.0244215 321.02Ki/s +ascon128a_aead_encrypt/4096/32_cv 0.21 % 0.21 % 10 0.22% 0.22% 0.21% +ascon128a_aead_encrypt/4096/32_min 26058 ns 26055 ns 10 46.8358k 11.3459 150.052Mi/s +ascon128a_aead_encrypt/4096/32_max 26243 ns 26236 ns 10 47.1583k 11.424 151.096Mi/s +ascon_mac_verify/256_mean 1510 ns 1510 ns 10 2.71235k 9.41788 181.931Mi/s +ascon_mac_verify/256_median 1510 ns 1509 ns 10 2.71034k 9.41089 181.964Mi/s +ascon_mac_verify/256_stddev 2.66 ns 2.63 ns 10 5.45453 0.0189393 324.88Ki/s +ascon_mac_verify/256_cv 0.18 % 0.17 % 10 0.20% 0.20% 0.17% +ascon_mac_verify/256_min 1507 ns 1506 ns 10 2.70633k 9.39699 181.428Mi/s +ascon_mac_verify/256_max 1514 ns 1514 ns 10 2.72133k 9.44905 182.345Mi/s +ascon_hash/1024_mean 15737 ns 15731 ns 10 28.2679k 26.7688 64.0188Mi/s +ascon_hash/1024_median 15734 ns 15729 ns 10 28.2696k 26.7704 64.0268Mi/s +ascon_hash/1024_stddev 17.6 ns 11.2 ns 10 10.1488 9.61064m 46.7665Ki/s +ascon_hash/1024_cv 0.11 % 0.07 % 10 0.04% 0.04% 0.07% +ascon_hash/1024_min 15723 ns 15720 ns 10 28.2554k 26.757 63.9034Mi/s +ascon_hash/1024_max 15785 ns 15759 ns 10 28.2877k 26.7876 64.0636Mi/s +ascon128_aead_decrypt/1024/32_mean 7363 ns 7358 ns 10 13.2176k 12.5166 136.867Mi/s +ascon128_aead_decrypt/1024/32_median 7359 ns 7356 ns 10 13.2166k 12.5157 136.899Mi/s +ascon128_aead_decrypt/1024/32_stddev 10.6 ns 7.00 ns 10 2.45594 2.3257m 133.218Ki/s +ascon128_aead_decrypt/1024/32_cv 0.14 % 0.10 % 10 0.02% 0.02% 0.10% +ascon128_aead_decrypt/1024/32_min 7352 ns 7352 ns 10 13.2155k 12.5147 136.547Mi/s +ascon128_aead_decrypt/1024/32_max 7388 ns 7375 ns 10 13.2236k 12.5223 136.985Mi/s +ascon80pq_aead_decrypt/4096/32_mean 28215 ns 28207 ns 10 50.6935k 12.2804 139.566Mi/s +ascon80pq_aead_decrypt/4096/32_median 28204 ns 28192 ns 10 50.659k 12.2721 139.642Mi/s +ascon80pq_aead_decrypt/4096/32_stddev 36.7 ns 34.4 ns 10 58.6679 0.0142122 174.179Ki/s +ascon80pq_aead_decrypt/4096/32_cv 0.13 % 0.12 % 10 0.12% 0.12% 0.12% +ascon80pq_aead_decrypt/4096/32_min 28185 ns 28181 ns 10 50.6519k 12.2703 139.222Mi/s +ascon80pq_aead_decrypt/4096/32_max 28281 ns 28277 ns 10 50.8167k 12.3102 139.697Mi/s +ascon128_aead_encrypt/64/32_mean 985 ns 984 ns 10 1.76639k 18.3999 93.0275Mi/s +ascon128_aead_encrypt/64/32_median 983 ns 983 ns 10 1.76431k 18.3782 93.1664Mi/s +ascon128_aead_encrypt/64/32_stddev 4.65 ns 3.93 ns 10 6.3378 0.0660188 378.15Ki/s +ascon128_aead_encrypt/64/32_cv 0.47 % 0.40 % 10 0.36% 0.36% 0.40% +ascon128_aead_encrypt/64/32_min 982 ns 981 ns 10 1.76417k 18.3768 92.2004Mi/s +ascon128_aead_encrypt/64/32_max 994 ns 993 ns 10 1.78442k 18.5877 93.2845Mi/s +ascon_prfs_authenticate/16_mean 166 ns 166 ns 10 298.011 9.31285 183.917Mi/s +ascon_prfs_authenticate/16_median 166 ns 166 ns 10 298.015 9.31296 184.026Mi/s +ascon_prfs_authenticate/16_stddev 0.287 ns 0.177 ns 10 0.0228232 713.225u 201.229Ki/s +ascon_prfs_authenticate/16_cv 0.17 % 0.11 % 10 0.01% 0.01% 0.11% +ascon_prfs_authenticate/16_min 166 ns 166 ns 10 297.955 9.31109 183.645Mi/s +ascon_prfs_authenticate/16_max 166 ns 166 ns 10 298.034 9.31357 184.129Mi/s +ascon80pq_aead_encrypt/1024/32_mean 7227 ns 7225 ns 10 12.9822k 12.2937 139.396Mi/s +ascon80pq_aead_encrypt/1024/32_median 7226 ns 7224 ns 10 12.9807k 12.2924 139.4Mi/s +ascon80pq_aead_encrypt/1024/32_stddev 3.43 ns 2.71 ns 10 4.97417 4.71039m 53.5306Ki/s +ascon80pq_aead_encrypt/1024/32_cv 0.05 % 0.04 % 10 0.04% 0.04% 0.04% +ascon80pq_aead_encrypt/1024/32_min 7221 ns 7220 ns 10 12.9784k 12.2902 139.271Mi/s +ascon80pq_aead_encrypt/1024/32_max 7233 ns 7231 ns 10 12.9945k 12.3054 139.482Mi/s +ascon128_aead_encrypt/4096/32_mean 26854 ns 26829 ns 10 48.1693k 11.6689 146.737Mi/s +ascon128_aead_encrypt/4096/32_median 26829 ns 26815 ns 10 48.1668k 11.6683 146.814Mi/s +ascon128_aead_encrypt/4096/32_stddev 58.2 ns 35.6 ns 10 11.4539 2.77468m 199.447Ki/s +ascon128_aead_encrypt/4096/32_cv 0.22 % 0.13 % 10 0.02% 0.02% 0.13% +ascon128_aead_encrypt/4096/32_min 26800 ns 26795 ns 10 48.1594k 11.6665 146.384Mi/s +ascon128_aead_encrypt/4096/32_max 26955 ns 26893 ns 10 48.1974k 11.6757 146.924Mi/s +ascon80pq_aead_encrypt/4096/32_mean 27135 ns 27118 ns 10 48.7072k 11.7992 145.172Mi/s +ascon80pq_aead_encrypt/4096/32_median 27104 ns 27098 ns 10 48.7k 11.7975 145.279Mi/s +ascon80pq_aead_encrypt/4096/32_stddev 90.1 ns 57.4 ns 10 19.2292 4.65822m 312.829Ki/s +ascon80pq_aead_encrypt/4096/32_cv 0.33 % 0.21 % 10 0.04% 0.04% 0.21% +ascon80pq_aead_encrypt/4096/32_min 27097 ns 27093 ns 10 48.698k 11.797 144.316Mi/s +ascon80pq_aead_encrypt/4096/32_max 27389 ns 27279 ns 10 48.7608k 11.8122 145.305Mi/s +ascon_xofa/1024/64_mean 11128 ns 11117 ns 10 19.9535k 18.3396 93.3382Mi/s +ascon_xofa/1024/64_median 11117 ns 11111 ns 10 19.9501k 18.3365 93.382Mi/s +ascon_xofa/1024/64_stddev 31.5 ns 19.9 ns 10 8.03281 7.3831m 170.693Ki/s +ascon_xofa/1024/64_cv 0.28 % 0.18 % 10 0.04% 0.04% 0.18% +ascon_xofa/1024/64_min 11100 ns 11097 ns 10 19.9462k 18.3329 92.9413Mi/s +ascon_xofa/1024/64_max 11204 ns 11164 ns 10 19.9667k 18.3517 93.5018Mi/s +ascon_xofa/4096/64_mean 41777 ns 41740 ns 10 74.8723k 17.9981 95.0492Mi/s +ascon_xofa/4096/64_median 41669 ns 41659 ns 10 74.8641k 17.9962 95.2322Mi/s +ascon_xofa/4096/64_stddev 275 ns 220 ns 10 13.2602 3.18755m 507.507Ki/s +ascon_xofa/4096/64_cv 0.66 % 0.53 % 10 0.02% 0.02% 0.52% +ascon_xofa/4096/64_min 41649 ns 41645 ns 10 74.8621k 17.9957 93.6647Mi/s +ascon_xofa/4096/64_max 42532 ns 42356 ns 10 74.8995k 18.0047 95.2638Mi/s +ascon_prf/1024/64_mean 4697 ns 4694 ns 10 8.43314k 7.75105 221.037Mi/s +ascon_prf/1024/64_median 4696 ns 4694 ns 10 8.43172k 7.74974 221.026Mi/s +ascon_prf/1024/64_stddev 6.91 ns 4.60 ns 10 4.62962 4.25517m 221.543Ki/s +ascon_prf/1024/64_cv 0.15 % 0.10 % 10 0.05% 0.05% 0.10% +ascon_prf/1024/64_min 4690 ns 4689 ns 10 8.42755k 7.74591 220.64Mi/s +ascon_prf/1024/64_max 4708 ns 4703 ns 10 8.43932k 7.75673 221.293Mi/s +ascon_hasha/256_mean 3073 ns 3071 ns 10 5.51718k 19.1569 89.4297Mi/s +ascon_hasha/256_median 3071 ns 3069 ns 10 5.51534k 19.1505 89.485Mi/s +ascon_hasha/256_stddev 4.02 ns 3.38 ns 10 5.53898 0.0192326 100.828Ki/s +ascon_hasha/256_cv 0.13 % 0.11 % 10 0.10% 0.10% 0.11% +ascon_hasha/256_min 3069 ns 3068 ns 10 5.51526k 19.1502 89.2302Mi/s +ascon_hasha/256_max 3078 ns 3078 ns 10 5.53294k 19.2116 89.5157Mi/s +ascon_permutation<1>_mean 11.4 ns 11.4 ns 10 20.5236 0.51309 3.25824Gi/s +ascon_permutation<1>_median 11.5 ns 11.4 ns 10 20.4985 0.512462 3.25613Gi/s +ascon_permutation<1>_stddev 0.052 ns 0.050 ns 10 0.0962438 2.4061m 14.5894Mi/s +ascon_permutation<1>_cv 0.45 % 0.44 % 10 0.47% 0.47% 0.44% +ascon_permutation<1>_min 11.4 ns 11.4 ns 10 20.4002 0.510005 3.23837Gi/s +ascon_permutation<1>_max 11.5 ns 11.5 ns 10 20.6731 0.516827 3.28183Gi/s +ascon_hash/64_mean 1616 ns 1615 ns 10 2.9025k 30.2344 56.6802Mi/s +ascon_hash/64_median 1616 ns 1616 ns 10 2.90251k 30.2345 56.6651Mi/s +ascon_hash/64_stddev 1.66 ns 1.35 ns 10 2.38657 0.0248601 48.4828Ki/s +ascon_hash/64_cv 0.10 % 0.08 % 10 0.08% 0.08% 0.08% +ascon_hash/64_min 1613 ns 1613 ns 10 2.89958k 30.2039 56.6118Mi/s +ascon_hash/64_max 1618 ns 1617 ns 10 2.9057k 30.2677 56.7592Mi/s +ascon_prf/256/64_mean 1797 ns 1796 ns 10 3.22488k 10.0777 169.939Mi/s +ascon_prf/256/64_median 1798 ns 1796 ns 10 3.22449k 10.0765 169.952Mi/s +ascon_prf/256/64_stddev 2.90 ns 2.15 ns 10 2.44161 7.63004m 208.311Ki/s +ascon_prf/256/64_cv 0.16 % 0.12 % 10 0.08% 0.08% 0.12% +ascon_prf/256/64_min 1793 ns 1793 ns 10 3.22231k 10.0697 169.613Mi/s +ascon_prf/256/64_max 1802 ns 1799 ns 10 3.22806k 10.0877 170.225Mi/s +ascon128_aead_encrypt/256/32_mean 2221 ns 2220 ns 10 3.98897k 13.8506 123.71Mi/s +ascon128_aead_encrypt/256/32_median 2223 ns 2222 ns 10 3.99422k 13.8688 123.592Mi/s +ascon128_aead_encrypt/256/32_stddev 7.79 ns 7.53 ns 10 13.3216 0.0462555 429.949Ki/s +ascon128_aead_encrypt/256/32_cv 0.35 % 0.34 % 10 0.33% 0.33% 0.34% +ascon128_aead_encrypt/256/32_min 2210 ns 2210 ns 10 3.97253k 13.7935 123.047Mi/s +ascon128_aead_encrypt/256/32_max 2233 ns 2232 ns 10 4.01167k 13.9294 124.278Mi/s +ascon128a_aead_decrypt/1024/32_mean 7109 ns 7105 ns 10 12.7644k 12.0875 141.736Mi/s +ascon128a_aead_decrypt/1024/32_median 7103 ns 7101 ns 10 12.7629k 12.0861 141.823Mi/s +ascon128a_aead_decrypt/1024/32_stddev 12.6 ns 8.41 ns 10 3.44679 3.264m 171.583Ki/s +ascon128a_aead_decrypt/1024/32_cv 0.18 % 0.12 % 10 0.03% 0.03% 0.12% +ascon128a_aead_decrypt/1024/32_min 7100 ns 7099 ns 10 12.7617k 12.0849 141.369Mi/s +ascon128a_aead_decrypt/1024/32_max 7134 ns 7124 ns 10 12.7731k 12.0958 141.855Mi/s +ascon128a_aead_encrypt/64/32_mean 950 ns 950 ns 10 1.70515k 17.762 96.4237Mi/s +ascon128a_aead_encrypt/64/32_median 946 ns 946 ns 10 1.69915k 17.6995 96.8222Mi/s +ascon128a_aead_encrypt/64/32_stddev 6.51 ns 6.09 ns 10 10.3819 0.108144 629.458Ki/s +ascon128a_aead_encrypt/64/32_cv 0.68 % 0.64 % 10 0.61% 0.61% 0.64% +ascon128a_aead_encrypt/64/32_min 945 ns 945 ns 10 1.69911k 17.6991 95.3486Mi/s +ascon128a_aead_encrypt/64/32_max 962 ns 960 ns 10 1.72483k 17.9669 96.8595Mi/s +ascon_prfs_verify/1_mean 199 ns 199 ns 10 357.025 21.0014 81.5683Mi/s +ascon_prfs_verify/1_median 199 ns 199 ns 10 357.024 21.0014 81.6103Mi/s +ascon_prfs_verify/1_stddev 0.426 ns 0.265 ns 10 4.15554m 244.443u 111.289Ki/s +ascon_prfs_verify/1_cv 0.21 % 0.13 % 10 0.00% 0.00% 0.13% +ascon_prfs_verify/1_min 199 ns 199 ns 10 357.02 21.0012 81.2893Mi/s +ascon_prfs_verify/1_max 200 ns 199 ns 10 357.034 21.002 81.631Mi/s +ascon128a_aead_encrypt/256/32_mean 2156 ns 2155 ns 10 3.87185k 13.4439 127.46Mi/s +ascon128a_aead_encrypt/256/32_median 2155 ns 2155 ns 10 3.87208k 13.4447 127.47Mi/s +ascon128a_aead_encrypt/256/32_stddev 2.20 ns 1.47 ns 10 1.26759 4.40135m 89.0565Ki/s +ascon128a_aead_encrypt/256/32_cv 0.10 % 0.07 % 10 0.03% 0.03% 0.07% +ascon128a_aead_encrypt/256/32_min 2153 ns 2153 ns 10 3.87028k 13.4385 127.277Mi/s +ascon128a_aead_encrypt/256/32_max 2161 ns 2158 ns 10 3.87337k 13.4492 127.568Mi/s +ascon_xofa/64/64_mean 1534 ns 1533 ns 10 2.75321k 21.5094 79.6371Mi/s +ascon_xofa/64/64_median 1532 ns 1532 ns 10 2.75316k 21.5091 79.6919Mi/s +ascon_xofa/64/64_stddev 2.96 ns 1.97 ns 10 0.0841255 657.23u 104.428Ki/s +ascon_xofa/64/64_cv 0.19 % 0.13 % 10 0.00% 0.00% 0.13% +ascon_xofa/64/64_min 1532 ns 1532 ns 10 2.75313k 21.5088 79.3884Mi/s +ascon_xofa/64/64_max 1541 ns 1538 ns 10 2.7534k 21.5109 79.7026Mi/s +ascon128_aead_decrypt/4096/32_mean 27543 ns 27526 ns 10 49.442k 11.9772 143.02Mi/s +ascon128_aead_decrypt/4096/32_median 27531 ns 27517 ns 10 49.3876k 11.964 143.065Mi/s +ascon128_aead_decrypt/4096/32_stddev 62.2 ns 51.4 ns 10 80.4886 0.0194982 273.194Ki/s +ascon128_aead_decrypt/4096/32_cv 0.23 % 0.19 % 10 0.16% 0.16% 0.19% +ascon128_aead_decrypt/4096/32_min 27478 ns 27474 ns 10 49.3813k 11.9625 142.668Mi/s +ascon128_aead_decrypt/4096/32_max 27640 ns 27594 ns 10 49.5832k 12.0114 143.291Mi/s +ascon_prf/64/64_mean 1061 ns 1061 ns 10 1.90421k 14.8767 115.091Mi/s +ascon_prf/64/64_median 1059 ns 1059 ns 10 1.90195k 14.859 115.314Mi/s +ascon_prf/64/64_stddev 4.74 ns 4.50 ns 10 6.97071 0.0544587 498.729Ki/s +ascon_prf/64/64_cv 0.45 % 0.42 % 10 0.37% 0.37% 0.42% +ascon_prf/64/64_min 1056 ns 1055 ns 10 1.89706k 14.8208 114.335Mi/s +ascon_prf/64/64_max 1068 ns 1068 ns 10 1.91666k 14.9739 115.657Mi/s +ascon80pq_aead_decrypt/256/32_mean 2351 ns 2350 ns 10 4.22187k 14.6593 116.878Mi/s +ascon80pq_aead_decrypt/256/32_median 2351 ns 2350 ns 10 4.22383k 14.6661 116.862Mi/s +ascon80pq_aead_decrypt/256/32_stddev 6.12 ns 5.60 ns 10 8.61586 0.0299162 285.305Ki/s +ascon80pq_aead_decrypt/256/32_cv 0.26 % 0.24 % 10 0.20% 0.20% 0.24% +ascon80pq_aead_decrypt/256/32_min 2341 ns 2341 ns 10 4.20671k 14.6066 116.524Mi/s +ascon80pq_aead_decrypt/256/32_max 2360 ns 2357 ns 10 4.2338k 14.7007 117.342Mi/s +ascon_prf/4096/64_mean 16291 ns 16280 ns 10 29.2429k 7.02955 243.694Mi/s +ascon_prf/4096/64_median 16282 ns 16276 ns 10 29.2472k 7.03057 243.751Mi/s +ascon_prf/4096/64_stddev 21.4 ns 14.4 ns 10 13.4549 3.23434m 220.259Ki/s +ascon_prf/4096/64_cv 0.13 % 0.09 % 10 0.05% 0.05% 0.09% +ascon_prf/4096/64_min 16260 ns 16255 ns 10 29.2135k 7.02249 243.372Mi/s +ascon_prf/4096/64_max 16324 ns 16301 ns 10 29.2574k 7.03304 244.065Mi/s +ascon_hash/256_mean 4444 ns 4441 ns 10 7.96786k 27.6662 61.8508Mi/s +ascon_hash/256_median 4440 ns 4436 ns 10 7.96481k 27.6556 61.9161Mi/s +ascon_hash/256_stddev 18.0 ns 16.3 ns 10 4.81837 0.0167304 230.951Ki/s +ascon_hash/256_cv 0.41 % 0.37 % 10 0.06% 0.06% 0.36% +ascon_hash/256_min 4431 ns 4431 ns 10 7.96441k 27.6542 61.2208Mi/s +ascon_hash/256_max 4494 ns 4486 ns 10 7.97778k 27.7006 61.9925Mi/s +ascon128_aead_decrypt/256/32_mean 2318 ns 2315 ns 10 4.15364k 14.4224 118.645Mi/s +ascon128_aead_decrypt/256/32_median 2314 ns 2312 ns 10 4.15371k 14.4226 118.773Mi/s +ascon128_aead_decrypt/256/32_stddev 10.1 ns 6.63 ns 10 4.19877 0.0145791 346.746Ki/s +ascon128_aead_decrypt/256/32_cv 0.44 % 0.29 % 10 0.10% 0.10% 0.29% +ascon128_aead_decrypt/256/32_min 2309 ns 2308 ns 10 4.14801k 14.4028 117.841Mi/s +ascon128_aead_decrypt/256/32_max 2343 ns 2331 ns 10 4.16071k 14.4469 118.985Mi/s +ascon_xof/4096/64_mean 61434 ns 61387 ns 10 110.238k 26.4996 64.6273Mi/s +ascon_xof/4096/64_median 61374 ns 61343 ns 10 110.24k 26.5 64.6733Mi/s +ascon_xof/4096/64_stddev 124 ns 86.0 ns 10 10.5773 2.54262m 92.6043Ki/s +ascon_xof/4096/64_cv 0.20 % 0.14 % 10 0.01% 0.01% 0.14% +ascon_xof/4096/64_min 61333 ns 61326 ns 10 110.225k 26.4963 64.4471Mi/s +ascon_xof/4096/64_max 61681 ns 61559 ns 10 110.254k 26.5034 64.6917Mi/s +ascon_prfs_verify/4_mean 197 ns 197 ns 10 354.035 17.7017 96.7112Mi/s +ascon_prfs_verify/4_median 197 ns 197 ns 10 354.028 17.7014 96.7668Mi/s +ascon_prfs_verify/4_stddev 0.561 ns 0.363 ns 10 0.0197326 986.632u 181.746Ki/s +ascon_prfs_verify/4_cv 0.28 % 0.18 % 10 0.01% 0.01% 0.18% +ascon_prfs_verify/4_min 197 ns 197 ns 10 354.019 17.701 96.2589Mi/s +ascon_prfs_verify/4_max 199 ns 198 ns 10 354.077 17.7039 96.8489Mi/s +ascon_prfs_authenticate/4_mean 160 ns 160 ns 10 287.028 14.3514 119.378Mi/s +ascon_prfs_authenticate/4_median 160 ns 160 ns 10 287.016 14.3508 119.432Mi/s +ascon_prfs_authenticate/4_stddev 0.258 ns 0.157 ns 10 0.0394284 1.97142m 120.056Ki/s +ascon_prfs_authenticate/4_cv 0.16 % 0.10 % 10 0.01% 0.01% 0.10% +ascon_prfs_authenticate/4_min 160 ns 160 ns 10 287.013 14.3507 119.155Mi/s +ascon_prfs_authenticate/4_max 160 ns 160 ns 10 287.14 14.357 119.457Mi/s +ascon_mac_verify/64_mean 703 ns 702 ns 10 1.26225k 13.1484 130.347Mi/s +ascon_mac_verify/64_median 702 ns 702 ns 10 1.26224k 13.1483 130.349Mi/s +ascon_mac_verify/64_stddev 0.721 ns 0.579 ns 10 0.815607 8.4959m 110.039Ki/s +ascon_mac_verify/64_cv 0.10 % 0.08 % 10 0.06% 0.06% 0.08% +ascon_mac_verify/64_min 702 ns 702 ns 10 1.26116k 13.137 130.177Mi/s +ascon_mac_verify/64_max 704 ns 703 ns 10 1.26389k 13.1655 130.478Mi/s +ascon_hasha/4096_mean 41339 ns 41308 ns 10 74.203k 17.9755 95.3019Mi/s +ascon_hasha/4096_median 41335 ns 41300 ns 10 74.2038k 17.9757 95.3209Mi/s +ascon_hasha/4096_stddev 45.3 ns 29.3 ns 10 9.44499 2.28803m 69.2378Ki/s +ascon_hasha/4096_cv 0.11 % 0.07 % 10 0.01% 0.01% 0.07% +ascon_hasha/4096_min 41289 ns 41277 ns 10 74.1892k 17.9722 95.1827Mi/s +ascon_hasha/4096_max 41416 ns 41360 ns 10 74.2189k 17.9794 95.3742Mi/s +ascon128_aead_encrypt/1024/32_mean 7152 ns 7148 ns 10 12.8296k 12.1492 140.888Mi/s +ascon128_aead_encrypt/1024/32_median 7142 ns 7139 ns 10 12.8305k 12.1501 141.061Mi/s +ascon128_aead_encrypt/1024/32_stddev 30.7 ns 26.8 ns 10 1.91657 1.81493m 536.243Ki/s +ascon128_aead_encrypt/1024/32_cv 0.43 % 0.38 % 10 0.01% 0.01% 0.37% +ascon128_aead_encrypt/1024/32_min 7137 ns 7136 ns 10 12.8272k 12.147 139.408Mi/s +ascon128_aead_encrypt/1024/32_max 7238 ns 7224 ns 10 12.8325k 12.152 141.126Mi/s +ascon_permutation<6>_mean 52.4 ns 52.4 ns 10 94.0049 2.35012 728.615Mi/s +ascon_permutation<6>_median 52.3 ns 52.3 ns 10 94.0035 2.35009 729.256Mi/s +ascon_permutation<6>_stddev 0.149 ns 0.093 ns 10 2.98522m 74.6306u 1.29109Mi/s +ascon_permutation<6>_cv 0.28 % 0.18 % 10 0.00% 0.00% 0.18% +ascon_permutation<6>_min 52.3 ns 52.3 ns 10 94.0024 2.35006 725.276Mi/s +ascon_permutation<6>_max 52.8 ns 52.6 ns 10 94.0119 2.3503 729.49Mi/s +ascon128a_aead_decrypt/64/32_mean 996 ns 996 ns 10 1.7879k 18.6239 91.9671Mi/s +ascon128a_aead_decrypt/64/32_median 995 ns 994 ns 10 1.78637k 18.608 92.076Mi/s +ascon128a_aead_decrypt/64/32_stddev 3.21 ns 3.14 ns 10 5.81908 0.0606155 295.395Ki/s +ascon128a_aead_decrypt/64/32_cv 0.32 % 0.32 % 10 0.33% 0.33% 0.31% +ascon128a_aead_decrypt/64/32_min 994 ns 993 ns 10 1.78355k 18.5787 91.1987Mi/s +ascon128a_aead_decrypt/64/32_max 1004 ns 1004 ns 10 1.80419k 18.7936 92.1632Mi/s +ascon_mac_verify/4096_mean 17358 ns 17345 ns 10 31.157k 7.54773 226.965Mi/s +ascon_mac_verify/4096_median 17354 ns 17344 ns 10 31.1451k 7.54484 226.978Mi/s +ascon_mac_verify/4096_stddev 33.4 ns 28.8 ns 10 48.6116 0.0117761 385.138Ki/s +ascon_mac_verify/4096_cv 0.19 % 0.17 % 10 0.16% 0.16% 0.17% +ascon_mac_verify/4096_min 17313 ns 17305 ns 10 31.1023k 7.53447 226.309Mi/s +ascon_mac_verify/4096_max 17398 ns 17396 ns 10 31.2654k 7.57398 227.496Mi/s +ascon_mac_authenticate/64_mean 663 ns 663 ns 10 1.1908k 14.885 115.073Mi/s +ascon_mac_authenticate/64_median 663 ns 662 ns 10 1.19k 14.875 115.166Mi/s +ascon_mac_authenticate/64_stddev 1.76 ns 1.68 ns 10 3.03662 0.0379577 299.047Ki/s +ascon_mac_authenticate/64_cv 0.26 % 0.25 % 10 0.26% 0.26% 0.25% +ascon_mac_authenticate/64_min 661 ns 661 ns 10 1.18816k 14.852 114.582Mi/s +ascon_mac_authenticate/64_max 666 ns 666 ns 10 1.19688k 14.961 115.408Mi/s +ascon80pq_aead_encrypt/256/32_mean 2256 ns 2254 ns 10 4.04817k 14.0562 121.838Mi/s +ascon80pq_aead_encrypt/256/32_median 2255 ns 2254 ns 10 4.04948k 14.0607 121.835Mi/s +ascon80pq_aead_encrypt/256/32_stddev 12.8 ns 10.4 ns 10 11.616 0.0403334 571.214Ki/s +ascon80pq_aead_encrypt/256/32_cv 0.57 % 0.46 % 10 0.29% 0.29% 0.46% +ascon80pq_aead_encrypt/256/32_min 2241 ns 2241 ns 10 4.02741k 13.9841 120.547Mi/s +ascon80pq_aead_encrypt/256/32_max 2287 ns 2278 ns 10 4.06416k 14.1117 122.577Mi/s +ascon128a_aead_encrypt/1024/32_mean 6938 ns 6936 ns 10 12.465k 11.8039 145.197Mi/s +ascon128a_aead_encrypt/1024/32_median 6937 ns 6936 ns 10 12.4652k 11.8041 145.206Mi/s +ascon128a_aead_encrypt/1024/32_stddev 4.61 ns 2.41 ns 10 1.12986 1.06995m 51.7133Ki/s +ascon128a_aead_encrypt/1024/32_cv 0.07 % 0.03 % 10 0.01% 0.01% 0.03% +ascon128a_aead_encrypt/1024/32_min 6934 ns 6934 ns 10 12.4633k 11.8024 145.065Mi/s +ascon128a_aead_encrypt/1024/32_max 6950 ns 6942 ns 10 12.4665k 11.8054 145.246Mi/s +ascon_xof/64/64_mean 2139 ns 2138 ns 10 3.84123k 30.0096 57.1032Mi/s +ascon_xof/64/64_median 2138 ns 2137 ns 10 3.84121k 30.0094 57.1155Mi/s +ascon_xof/64/64_stddev 1.89 ns 1.19 ns 10 0.0455312 355.713u 32.468Ki/s +ascon_xof/64/64_cv 0.09 % 0.06 % 10 0.00% 0.00% 0.06% +ascon_xof/64/64_min 2137 ns 2137 ns 10 3.84117k 30.0091 57.0226Mi/s +ascon_xof/64/64_max 2143 ns 2141 ns 10 3.84133k 30.0104 57.1276Mi/s +ascon80pq_aead_decrypt/64/32_mean 1052 ns 1051 ns 10 1.88749k 19.6614 87.0759Mi/s +ascon80pq_aead_decrypt/64/32_median 1052 ns 1051 ns 10 1.88751k 19.6616 87.0848Mi/s +ascon80pq_aead_decrypt/64/32_stddev 1.79 ns 1.20 ns 10 2.06251 0.0214845 101.411Ki/s +ascon80pq_aead_decrypt/64/32_cv 0.17 % 0.11 % 10 0.11% 0.11% 0.11% +ascon80pq_aead_decrypt/64/32_min 1049 ns 1049 ns 10 1.88529k 19.6385 86.9185Mi/s +ascon80pq_aead_decrypt/64/32_max 1056 ns 1053 ns 10 1.8898k 19.6854 87.2789Mi/s +ascon_mac_authenticate/4096_mean 17338 ns 17328 ns 10 31.1246k 7.5692 226.311Mi/s +ascon_mac_authenticate/4096_median 17337 ns 17332 ns 10 31.1125k 7.56627 226.264Mi/s +ascon_mac_authenticate/4096_stddev 38.8 ns 36.0 ns 10 68.3174 0.0166142 481.007Ki/s +ascon_mac_authenticate/4096_cv 0.22 % 0.21 % 10 0.22% 0.22% 0.21% +ascon_mac_authenticate/4096_min 17285 ns 17284 ns 10 31.045k 7.54986 225.382Mi/s +ascon_mac_authenticate/4096_max 17402 ns 17399 ns 10 31.2734k 7.60539 226.887Mi/s +ascon_permutation<8>_mean 81.2 ns 81.1 ns 10 145.589 3.63973 470.31Mi/s +ascon_permutation<8>_median 81.1 ns 81.0 ns 10 145.63 3.64075 470.747Mi/s +ascon_permutation<8>_stddev 0.438 ns 0.404 ns 10 0.373235 9.33087m 2.32738Mi/s +ascon_permutation<8>_cv 0.54 % 0.50 % 10 0.26% 0.26% 0.49% +ascon_permutation<8>_min 80.6 ns 80.6 ns 10 144.884 3.62209 464.846Mi/s +ascon_permutation<8>_max 82.2 ns 82.1 ns 10 146.019 3.65048 473.221Mi/s +ascon_xof/1024/64_mean 16278 ns 16264 ns 10 29.1978k 26.8362 63.7961Mi/s +ascon_xof/1024/64_median 16252 ns 16247 ns 10 29.1963k 26.8349 63.8634Mi/s +ascon_xof/1024/64_stddev 51.2 ns 33.6 ns 10 3.77446 3.46918m 134.727Ki/s +ascon_xof/1024/64_cv 0.31 % 0.21 % 10 0.01% 0.01% 0.21% +ascon_xof/1024/64_min 16243 ns 16241 ns 10 29.1949k 26.8336 63.4927Mi/s +ascon_xof/1024/64_max 16398 ns 16342 ns 10 29.2068k 26.8445 63.8879Mi/s +ascon_xof/256/64_mean 4962 ns 4959 ns 10 8.90584k 27.8308 61.5424Mi/s +ascon_xof/256/64_median 4958 ns 4956 ns 10 8.90554k 27.8298 61.5807Mi/s +ascon_xof/256/64_stddev 7.60 ns 5.30 ns 10 0.719311 2.24785m 67.3358Ki/s +ascon_xof/256/64_cv 0.15 % 0.11 % 10 0.01% 0.01% 0.11% +ascon_xof/256/64_min 4955 ns 4954 ns 10 8.90548k 27.8296 61.4113Mi/s +ascon_xof/256/64_max 4975 ns 4969 ns 10 8.90776k 27.8367 61.6039Mi/s +``` + +### On Apple M1 Max + +Compiled with **Apple clang version 15.0.0 (clang-1500.1.0.2.5)**. + +```bash +$ uname -srm +Darwin 23.3.0 arm64 +``` + +```bash +2024-02-04T15:22:49+04:00 +Running ./build/benchmarks/bench.out +Run on (10 X 24 MHz CPU s) +CPU Caches: + L1 Data 64 KiB + L1 Instruction 128 KiB + L2 Unified 4096 KiB (x10) +Load Average: 3.49, 5.55, 6.24 +------------------------------------------------------------------------------------------------- +Benchmark Time CPU Iterations bytes_per_second +------------------------------------------------------------------------------------------------- +ascon128a_aead_encrypt/4096/32_mean 8141 ns 8099 ns 10 486.052Mi/s +ascon128a_aead_encrypt/4096/32_median 8138 ns 8094 ns 10 486.354Mi/s +ascon128a_aead_encrypt/4096/32_stddev 16.1 ns 11.0 ns 10 673.042Ki/s +ascon128a_aead_encrypt/4096/32_cv 0.20 % 0.14 % 10 0.14% +ascon128a_aead_encrypt/4096/32_min 8120 ns 8092 ns 10 484.331Mi/s +ascon128a_aead_encrypt/4096/32_max 8181 ns 8128 ns 10 486.479Mi/s +ascon_prfs_authenticate/16_mean 51.7 ns 51.5 ns 10 592.422Mi/s +ascon_prfs_authenticate/16_median 51.6 ns 51.4 ns 10 593.884Mi/s +ascon_prfs_authenticate/16_stddev 0.282 ns 0.321 ns 10 3.64703Mi/s +ascon_prfs_authenticate/16_cv 0.54 % 0.62 % 10 0.62% +ascon_prfs_authenticate/16_min 51.5 ns 51.3 ns 10 582.783Mi/s +ascon_prfs_authenticate/16_max 52.5 ns 52.4 ns 10 594.848Mi/s +ascon_prf/1024/64_mean 1787 ns 1776 ns 10 584.117Mi/s +ascon_prf/1024/64_median 1785 ns 1776 ns 10 584.224Mi/s +ascon_prf/1024/64_stddev 9.59 ns 0.569 ns 10 191.393Ki/s +ascon_prf/1024/64_cv 0.54 % 0.03 % 10 0.03% +ascon_prf/1024/64_min 1779 ns 1776 ns 10 583.809Mi/s +ascon_prf/1024/64_max 1814 ns 1777 ns 10 584.272Mi/s +ascon_hash/4096_mean 23580 ns 23466 ns 10 167.765Mi/s +ascon_hash/4096_median 23576 ns 23460 ns 10 167.809Mi/s +ascon_hash/4096_stddev 27.7 ns 22.7 ns 10 165.78Ki/s +ascon_hash/4096_cv 0.12 % 0.10 % 10 0.10% +ascon_hash/4096_min 23547 ns 23440 ns 10 167.421Mi/s +ascon_hash/4096_max 23650 ns 23514 ns 10 167.953Mi/s +ascon_hasha/1024_mean 4082 ns 4064 ns 10 247.831Mi/s +ascon_hasha/1024_median 4082 ns 4063 ns 10 247.88Mi/s +ascon_hasha/1024_stddev 3.87 ns 4.11 ns 10 256.226Ki/s +ascon_hasha/1024_cv 0.09 % 0.10 % 10 0.10% +ascon_hasha/1024_min 4074 ns 4060 ns 10 247.262Mi/s +ascon_hasha/1024_max 4087 ns 4073 ns 10 248.055Mi/s +ascon_xof/4096/64_mean 23747 ns 23640 ns 10 167.822Mi/s +ascon_xof/4096/64_median 23750 ns 23635 ns 10 167.856Mi/s +ascon_xof/4096/64_stddev 19.2 ns 16.6 ns 10 120.904Ki/s +ascon_xof/4096/64_cv 0.08 % 0.07 % 10 0.07% +ascon_xof/4096/64_min 23709 ns 23625 ns 10 167.602Mi/s +ascon_xof/4096/64_max 23772 ns 23671 ns 10 167.925Mi/s +ascon_prfs_verify/16_mean 51.7 ns 51.5 ns 10 593.1Mi/s +ascon_prfs_verify/16_median 51.7 ns 51.4 ns 10 593.314Mi/s +ascon_prfs_verify/16_stddev 0.128 ns 0.064 ns 10 758.98Ki/s +ascon_prfs_verify/16_cv 0.25 % 0.13 % 10 0.12% +ascon_prfs_verify/16_min 51.4 ns 51.4 ns 10 591.12Mi/s +ascon_prfs_verify/16_max 51.9 ns 51.6 ns 10 593.897Mi/s +ascon_mac_verify/256_mean 523 ns 521 ns 10 527.587Mi/s +ascon_mac_verify/256_median 523 ns 520 ns 10 527.776Mi/s +ascon_mac_verify/256_stddev 0.979 ns 0.504 ns 10 522.179Ki/s +ascon_mac_verify/256_cv 0.19 % 0.10 % 10 0.10% +ascon_mac_verify/256_min 521 ns 520 ns 10 526.485Mi/s +ascon_mac_verify/256_max 525 ns 522 ns 10 528.274Mi/s +ascon128_aead_encrypt/64/32_mean 397 ns 395 ns 10 231.891Mi/s +ascon128_aead_encrypt/64/32_median 397 ns 395 ns 10 231.795Mi/s +ascon128_aead_encrypt/64/32_stddev 0.879 ns 0.845 ns 10 508.513Ki/s +ascon128_aead_encrypt/64/32_cv 0.22 % 0.21 % 10 0.21% +ascon128_aead_encrypt/64/32_min 395 ns 394 ns 10 231.277Mi/s +ascon128_aead_encrypt/64/32_max 398 ns 396 ns 10 232.656Mi/s +ascon_permutation<8>_mean 31.6 ns 31.5 ns 10 1.18253Gi/s +ascon_permutation<8>_median 31.6 ns 31.5 ns 10 1.18265Gi/s +ascon_permutation<8>_stddev 0.036 ns 0.026 ns 10 1019.52Ki/s +ascon_permutation<8>_cv 0.11 % 0.08 % 10 0.08% +ascon_permutation<8>_min 31.6 ns 31.5 ns 10 1.18028Gi/s +ascon_permutation<8>_max 31.7 ns 31.6 ns 10 1.18344Gi/s +ascon_permutation<1>_mean 5.83 ns 5.80 ns 10 6.42248Gi/s +ascon_permutation<1>_median 5.83 ns 5.80 ns 10 6.42394Gi/s +ascon_permutation<1>_stddev 0.005 ns 0.003 ns 10 3.41816Mi/s +ascon_permutation<1>_cv 0.09 % 0.05 % 10 0.05% +ascon_permutation<1>_min 5.82 ns 5.80 ns 10 6.41538Gi/s +ascon_permutation<1>_max 5.84 ns 5.81 ns 10 6.42528Gi/s +ascon80pq_aead_encrypt/4096/32_mean 11860 ns 11808 ns 10 333.397Mi/s +ascon80pq_aead_encrypt/4096/32_median 11860 ns 11800 ns 10 333.617Mi/s +ascon80pq_aead_encrypt/4096/32_stddev 30.6 ns 24.3 ns 10 700.774Ki/s +ascon80pq_aead_encrypt/4096/32_cv 0.26 % 0.21 % 10 0.21% +ascon80pq_aead_encrypt/4096/32_min 11810 ns 11794 ns 10 331.536Mi/s +ascon80pq_aead_encrypt/4096/32_max 11925 ns 11874 ns 10 333.799Mi/s +ascon_xof/1024/64_mean 6270 ns 6239 ns 10 166.296Mi/s +ascon_xof/1024/64_median 6271 ns 6238 ns 10 166.336Mi/s +ascon_xof/1024/64_stddev 2.31 ns 2.24 ns 10 61.2483Ki/s +ascon_xof/1024/64_cv 0.04 % 0.04 % 10 0.04% +ascon_xof/1024/64_min 6266 ns 6237 ns 10 166.208Mi/s +ascon_xof/1024/64_max 6273 ns 6243 ns 10 166.349Mi/s +ascon128a_aead_decrypt/64/32_mean 325 ns 324 ns 10 282.892Mi/s +ascon128a_aead_decrypt/64/32_median 325 ns 324 ns 10 282.965Mi/s +ascon128a_aead_decrypt/64/32_stddev 0.322 ns 0.224 ns 10 200.262Ki/s +ascon128a_aead_decrypt/64/32_cv 0.10 % 0.07 % 10 0.07% +ascon128a_aead_decrypt/64/32_min 325 ns 323 ns 10 282.462Mi/s +ascon128a_aead_decrypt/64/32_max 326 ns 324 ns 10 283.122Mi/s +ascon_mac_authenticate/64_mean 240 ns 239 ns 10 318.923Mi/s +ascon_mac_authenticate/64_median 240 ns 239 ns 10 319.422Mi/s +ascon_mac_authenticate/64_stddev 0.777 ns 0.767 ns 10 1.02022Mi/s +ascon_mac_authenticate/64_cv 0.32 % 0.32 % 10 0.32% +ascon_mac_authenticate/64_min 240 ns 239 ns 10 317.127Mi/s +ascon_mac_authenticate/64_max 242 ns 241 ns 10 319.875Mi/s +ascon_mac_authenticate/1024_mean 1651 ns 1643 ns 10 603.602Mi/s +ascon_mac_authenticate/1024_median 1651 ns 1643 ns 10 603.619Mi/s +ascon_mac_authenticate/1024_stddev 0.751 ns 0.951 ns 10 357.748Ki/s +ascon_mac_authenticate/1024_cv 0.05 % 0.06 % 10 0.06% +ascon_mac_authenticate/1024_min 1650 ns 1642 ns 10 602.991Mi/s +ascon_mac_authenticate/1024_max 1652 ns 1645 ns 10 604.038Mi/s +ascon80pq_aead_encrypt/1024/32_mean 3125 ns 3111 ns 10 323.752Mi/s +ascon80pq_aead_encrypt/1024/32_median 3123 ns 3109 ns 10 323.931Mi/s +ascon80pq_aead_encrypt/1024/32_stddev 7.81 ns 6.15 ns 10 653.346Ki/s +ascon80pq_aead_encrypt/1024/32_cv 0.25 % 0.20 % 10 0.20% +ascon80pq_aead_encrypt/1024/32_min 3118 ns 3106 ns 10 322.075Mi/s +ascon80pq_aead_encrypt/1024/32_max 3146 ns 3127 ns 10 324.249Mi/s +ascon_prfs_verify/1_mean 54.2 ns 53.9 ns 10 300.748Mi/s +ascon_prfs_verify/1_median 54.4 ns 54.1 ns 10 299.593Mi/s +ascon_prfs_verify/1_stddev 0.415 ns 0.398 ns 10 2.22831Mi/s +ascon_prfs_verify/1_cv 0.77 % 0.74 % 10 0.74% +ascon_prfs_verify/1_min 53.7 ns 53.4 ns 10 298.265Mi/s +ascon_prfs_verify/1_max 54.6 ns 54.4 ns 10 303.615Mi/s +ascon128a_aead_encrypt/1024/32_mean 2174 ns 2164 ns 10 465.402Mi/s +ascon128a_aead_encrypt/1024/32_median 2174 ns 2163 ns 10 465.496Mi/s +ascon128a_aead_encrypt/1024/32_stddev 3.17 ns 1.31 ns 10 287.458Ki/s +ascon128a_aead_encrypt/1024/32_cv 0.15 % 0.06 % 10 0.06% +ascon128a_aead_encrypt/1024/32_min 2167 ns 2163 ns 10 464.672Mi/s +ascon128a_aead_encrypt/1024/32_max 2180 ns 2167 ns 10 465.694Mi/s +ascon80pq_aead_encrypt/256/32_mean 940 ns 936 ns 10 293.532Mi/s +ascon80pq_aead_encrypt/256/32_median 940 ns 936 ns 10 293.579Mi/s +ascon80pq_aead_encrypt/256/32_stddev 0.504 ns 0.373 ns 10 119.768Ki/s +ascon80pq_aead_encrypt/256/32_cv 0.05 % 0.04 % 10 0.04% +ascon80pq_aead_encrypt/256/32_min 940 ns 935 ns 10 293.339Mi/s +ascon80pq_aead_encrypt/256/32_max 941 ns 936 ns 10 293.712Mi/s +ascon_xof/64/64_mean 793 ns 789 ns 10 154.783Mi/s +ascon_xof/64/64_median 793 ns 789 ns 10 154.762Mi/s +ascon_xof/64/64_stddev 0.474 ns 0.307 ns 10 61.7382Ki/s +ascon_xof/64/64_cv 0.06 % 0.04 % 10 0.04% +ascon_xof/64/64_min 792 ns 788 ns 10 154.713Mi/s +ascon_xof/64/64_max 793 ns 789 ns 10 154.858Mi/s +ascon128a_aead_encrypt/64/32_mean 314 ns 312 ns 10 293.091Mi/s +ascon128a_aead_encrypt/64/32_median 314 ns 312 ns 10 293.202Mi/s +ascon128a_aead_encrypt/64/32_stddev 0.634 ns 0.619 ns 10 594.353Ki/s +ascon128a_aead_encrypt/64/32_cv 0.20 % 0.20 % 10 0.20% +ascon128a_aead_encrypt/64/32_min 313 ns 312 ns 10 292.149Mi/s +ascon128a_aead_encrypt/64/32_max 315 ns 313 ns 10 293.71Mi/s +ascon128_aead_decrypt/4096/32_mean 11900 ns 11849 ns 10 332.233Mi/s +ascon128_aead_decrypt/4096/32_median 11905 ns 11851 ns 10 332.18Mi/s +ascon128_aead_decrypt/4096/32_stddev 15.6 ns 5.13 ns 10 147.309Ki/s +ascon128_aead_decrypt/4096/32_cv 0.13 % 0.04 % 10 0.04% +ascon128_aead_decrypt/4096/32_min 11872 ns 11842 ns 10 332.048Mi/s +ascon128_aead_decrypt/4096/32_max 11924 ns 11856 ns 10 332.445Mi/s +ascon_hasha/256_mean 1168 ns 1162 ns 10 236.413Mi/s +ascon_hasha/256_median 1166 ns 1160 ns 10 236.73Mi/s +ascon_hasha/256_stddev 8.10 ns 4.27 ns 10 882.641Ki/s +ascon_hasha/256_cv 0.69 % 0.37 % 10 0.36% +ascon_hasha/256_min 1164 ns 1160 ns 10 234.039Mi/s +ascon_hasha/256_max 1191 ns 1174 ns 10 236.864Mi/s +ascon128_aead_encrypt/256/32_mean 942 ns 939 ns 10 292.509Mi/s +ascon128_aead_encrypt/256/32_median 943 ns 938 ns 10 292.663Mi/s +ascon128_aead_encrypt/256/32_stddev 1.59 ns 1.47 ns 10 467.954Ki/s +ascon128_aead_encrypt/256/32_cv 0.17 % 0.16 % 10 0.16% +ascon128_aead_encrypt/256/32_min 939 ns 938 ns 10 291.364Mi/s +ascon128_aead_encrypt/256/32_max 945 ns 943 ns 10 292.903Mi/s +ascon80pq_aead_decrypt/64/32_mean 404 ns 402 ns 10 227.82Mi/s +ascon80pq_aead_decrypt/64/32_median 404 ns 402 ns 10 227.801Mi/s +ascon80pq_aead_decrypt/64/32_stddev 0.458 ns 0.394 ns 10 228.652Ki/s +ascon80pq_aead_decrypt/64/32_cv 0.11 % 0.10 % 10 0.10% +ascon80pq_aead_decrypt/64/32_min 403 ns 401 ns 10 227.506Mi/s +ascon80pq_aead_decrypt/64/32_max 404 ns 402 ns 10 228.217Mi/s +ascon_prf/256/64_mean 656 ns 653 ns 10 467.031Mi/s +ascon_prf/256/64_median 657 ns 653 ns 10 467.051Mi/s +ascon_prf/256/64_stddev 0.462 ns 0.369 ns 10 269.963Ki/s +ascon_prf/256/64_cv 0.07 % 0.06 % 10 0.06% +ascon_prf/256/64_min 656 ns 653 ns 10 466.455Mi/s +ascon_prf/256/64_max 657 ns 654 ns 10 467.409Mi/s +ascon128_aead_decrypt/256/32_mean 955 ns 950 ns 10 289.109Mi/s +ascon128_aead_decrypt/256/32_median 954 ns 950 ns 10 289.193Mi/s +ascon128_aead_decrypt/256/32_stddev 1.70 ns 1.12 ns 10 348.329Ki/s +ascon128_aead_decrypt/256/32_cv 0.18 % 0.12 % 10 0.12% +ascon128_aead_decrypt/256/32_min 953 ns 949 ns 10 288.197Mi/s +ascon128_aead_decrypt/256/32_max 959 ns 953 ns 10 289.391Mi/s +ascon_permutation<12>_mean 46.8 ns 46.6 ns 10 819.122Mi/s +ascon_permutation<12>_median 46.8 ns 46.5 ns 10 819.527Mi/s +ascon_permutation<12>_stddev 0.087 ns 0.064 ns 10 1.12844Mi/s +ascon_permutation<12>_cv 0.19 % 0.14 % 10 0.14% +ascon_permutation<12>_min 46.7 ns 46.5 ns 10 817.025Mi/s +ascon_permutation<12>_max 47.0 ns 46.7 ns 10 820.124Mi/s +ascon128_aead_encrypt/4096/32_mean 11902 ns 11845 ns 10 332.366Mi/s +ascon128_aead_encrypt/4096/32_median 11897 ns 11839 ns 10 332.534Mi/s +ascon128_aead_encrypt/4096/32_stddev 10.1 ns 10.5 ns 10 300.843Ki/s +ascon128_aead_encrypt/4096/32_cv 0.08 % 0.09 % 10 0.09% +ascon128_aead_encrypt/4096/32_min 11891 ns 11836 ns 10 331.706Mi/s +ascon128_aead_encrypt/4096/32_max 11919 ns 11868 ns 10 332.602Mi/s +ascon128_aead_decrypt/1024/32_mean 3141 ns 3125 ns 10 322.218Mi/s +ascon128_aead_decrypt/1024/32_median 3141 ns 3125 ns 10 322.275Mi/s +ascon128_aead_decrypt/1024/32_stddev 1.37 ns 1.11 ns 10 117.546Ki/s +ascon128_aead_decrypt/1024/32_cv 0.04 % 0.04 % 10 0.04% +ascon128_aead_decrypt/1024/32_min 3140 ns 3124 ns 10 322.02Mi/s +ascon128_aead_decrypt/1024/32_max 3144 ns 3127 ns 10 322.322Mi/s +ascon80pq_aead_decrypt/256/32_mean 956 ns 951 ns 10 288.774Mi/s +ascon80pq_aead_decrypt/256/32_median 955 ns 950 ns 10 289.171Mi/s +ascon80pq_aead_decrypt/256/32_stddev 4.51 ns 4.22 ns 10 1.2665Mi/s +ascon80pq_aead_decrypt/256/32_cv 0.47 % 0.44 % 10 0.44% +ascon80pq_aead_decrypt/256/32_min 953 ns 949 ns 10 285.232Mi/s +ascon80pq_aead_decrypt/256/32_max 968 ns 963 ns 10 289.483Mi/s +ascon_mac_verify/1024_mean 1651 ns 1643 ns 10 613.09Mi/s +ascon_mac_verify/1024_median 1651 ns 1643 ns 10 613.001Mi/s +ascon_mac_verify/1024_stddev 0.757 ns 0.665 ns 10 254.254Ki/s +ascon_mac_verify/1024_cv 0.05 % 0.04 % 10 0.04% +ascon_mac_verify/1024_min 1649 ns 1642 ns 10 612.793Mi/s +ascon_mac_verify/1024_max 1652 ns 1643 ns 10 613.472Mi/s +ascon80pq_aead_decrypt/4096/32_mean 11922 ns 11864 ns 10 331.825Mi/s +ascon80pq_aead_decrypt/4096/32_median 11913 ns 11848 ns 10 332.274Mi/s +ascon80pq_aead_decrypt/4096/32_stddev 37.5 ns 35.6 ns 10 1014.44Ki/s +ascon80pq_aead_decrypt/4096/32_cv 0.31 % 0.30 % 10 0.30% +ascon80pq_aead_decrypt/4096/32_min 11889 ns 11839 ns 10 329.992Mi/s +ascon80pq_aead_decrypt/4096/32_max 12009 ns 11930 ns 10 332.533Mi/s +ascon_xofa/256/64_mean 1293 ns 1287 ns 10 237.069Mi/s +ascon_xofa/256/64_median 1293 ns 1286 ns 10 237.244Mi/s +ascon_xofa/256/64_stddev 3.28 ns 2.06 ns 10 387.094Ki/s +ascon_xofa/256/64_cv 0.25 % 0.16 % 10 0.16% +ascon_xofa/256/64_min 1287 ns 1286 ns 10 236.059Mi/s +ascon_xofa/256/64_max 1300 ns 1293 ns 10 237.273Mi/s +ascon_prf/4096/64_mean 6304 ns 6276 ns 10 632.173Mi/s +ascon_prf/4096/64_median 6302 ns 6272 ns 10 632.539Mi/s +ascon_prf/4096/64_stddev 10.4 ns 12.2 ns 10 1.21871Mi/s +ascon_prf/4096/64_cv 0.16 % 0.19 % 10 0.19% +ascon_prf/4096/64_min 6295 ns 6268 ns 10 628.773Mi/s +ascon_prf/4096/64_max 6332 ns 6310 ns 10 632.908Mi/s +ascon_hash/1024_mean 6091 ns 6062 ns 10 166.121Mi/s +ascon_hash/1024_median 6086 ns 6055 ns 10 166.313Mi/s +ascon_hash/1024_stddev 25.9 ns 24.1 ns 10 669.078Ki/s +ascon_hash/1024_cv 0.43 % 0.40 % 10 0.39% +ascon_hash/1024_min 6064 ns 6051 ns 10 164.27Mi/s +ascon_hash/1024_max 6161 ns 6131 ns 10 166.431Mi/s +ascon_prf/64/64_mean 375 ns 374 ns 10 326.778Mi/s +ascon_prf/64/64_median 375 ns 374 ns 10 326.741Mi/s +ascon_prf/64/64_stddev 0.367 ns 0.203 ns 10 182.215Ki/s +ascon_prf/64/64_cv 0.10 % 0.05 % 10 0.05% +ascon_prf/64/64_min 374 ns 373 ns 10 326.408Mi/s +ascon_prf/64/64_max 376 ns 374 ns 10 326.968Mi/s +ascon_xof/256/64_mean 1902 ns 1892 ns 10 161.303Mi/s +ascon_xof/256/64_median 1901 ns 1892 ns 10 161.318Mi/s +ascon_xof/256/64_stddev 2.25 ns 1.60 ns 10 139.487Ki/s +ascon_xof/256/64_cv 0.12 % 0.08 % 10 0.08% +ascon_xof/256/64_min 1900 ns 1890 ns 10 160.974Mi/s +ascon_xof/256/64_max 1908 ns 1896 ns 10 161.434Mi/s +ascon_prfs_verify/4_mean 53.7 ns 53.5 ns 10 356.751Mi/s +ascon_prfs_verify/4_median 53.6 ns 53.5 ns 10 356.715Mi/s +ascon_prfs_verify/4_stddev 0.332 ns 0.363 ns 10 2.40873Mi/s +ascon_prfs_verify/4_cv 0.62 % 0.68 % 10 0.68% +ascon_prfs_verify/4_min 53.3 ns 53.1 ns 10 352.025Mi/s +ascon_prfs_verify/4_max 54.2 ns 54.2 ns 10 359.303Mi/s +ascon_mac_verify/64_mean 240 ns 239 ns 10 383.672Mi/s +ascon_mac_verify/64_median 240 ns 239 ns 10 383.772Mi/s +ascon_mac_verify/64_stddev 0.266 ns 0.244 ns 10 401.13Ki/s +ascon_mac_verify/64_cv 0.11 % 0.10 % 10 0.10% +ascon_mac_verify/64_min 239 ns 238 ns 10 382.756Mi/s +ascon_mac_verify/64_max 240 ns 239 ns 10 384.06Mi/s +ascon_prfs_authenticate/1_mean 52.8 ns 52.6 ns 10 308.463Mi/s +ascon_prfs_authenticate/1_median 52.7 ns 52.5 ns 10 309.087Mi/s +ascon_prfs_authenticate/1_stddev 0.270 ns 0.309 ns 10 1.78771Mi/s +ascon_prfs_authenticate/1_cv 0.51 % 0.59 % 10 0.58% +ascon_prfs_authenticate/1_min 52.6 ns 52.4 ns 10 303.466Mi/s +ascon_prfs_authenticate/1_max 53.5 ns 53.4 ns 10 309.361Mi/s +ascon_xofa/64/64_mean 550 ns 547 ns 10 223.193Mi/s +ascon_xofa/64/64_median 550 ns 547 ns 10 223.262Mi/s +ascon_xofa/64/64_stddev 0.418 ns 0.313 ns 10 130.825Ki/s +ascon_xofa/64/64_cv 0.08 % 0.06 % 10 0.06% +ascon_xofa/64/64_min 549 ns 547 ns 10 222.956Mi/s +ascon_xofa/64/64_max 550 ns 548 ns 10 223.287Mi/s +ascon128a_aead_decrypt/1024/32_mean 2212 ns 2201 ns 10 457.482Mi/s +ascon128a_aead_decrypt/1024/32_median 2212 ns 2201 ns 10 457.48Mi/s +ascon128a_aead_decrypt/1024/32_stddev 1.36 ns 1.34 ns 10 285.895Ki/s +ascon128a_aead_decrypt/1024/32_cv 0.06 % 0.06 % 10 0.06% +ascon128a_aead_decrypt/1024/32_min 2211 ns 2200 ns 10 456.894Mi/s +ascon128a_aead_decrypt/1024/32_max 2216 ns 2204 ns 10 457.782Mi/s +ascon_prfs_authenticate/4_mean 52.4 ns 52.1 ns 10 366.056Mi/s +ascon_prfs_authenticate/4_median 52.3 ns 52.1 ns 10 366.093Mi/s +ascon_prfs_authenticate/4_stddev 0.071 ns 0.064 ns 10 461.174Ki/s +ascon_prfs_authenticate/4_cv 0.14 % 0.12 % 10 0.12% +ascon_prfs_authenticate/4_min 52.3 ns 52.0 ns 10 365.322Mi/s +ascon_prfs_authenticate/4_max 52.5 ns 52.2 ns 10 366.655Mi/s +ascon80pq_aead_encrypt/64/32_mean 397 ns 395 ns 10 231.628Mi/s +ascon80pq_aead_encrypt/64/32_median 397 ns 395 ns 10 231.686Mi/s +ascon80pq_aead_encrypt/64/32_stddev 0.799 ns 0.644 ns 10 386.159Ki/s +ascon80pq_aead_encrypt/64/32_cv 0.20 % 0.16 % 10 0.16% +ascon80pq_aead_encrypt/64/32_min 396 ns 394 ns 10 230.951Mi/s +ascon80pq_aead_encrypt/64/32_max 398 ns 396 ns 10 232.295Mi/s +ascon_hasha/4096_mean 15748 ns 15672 ns 10 251.192Mi/s +ascon_hasha/4096_median 15745 ns 15670 ns 10 251.225Mi/s +ascon_hasha/4096_stddev 15.9 ns 12.4 ns 10 203.665Ki/s +ascon_hasha/4096_cv 0.10 % 0.08 % 10 0.08% +ascon_hasha/4096_min 15729 ns 15661 ns 10 250.709Mi/s +ascon_hasha/4096_max 15783 ns 15703 ns 10 251.371Mi/s +ascon_mac_authenticate/4096_mean 6171 ns 6141 ns 10 638.625Mi/s +ascon_mac_authenticate/4096_median 6171 ns 6139 ns 10 638.825Mi/s +ascon_mac_authenticate/4096_stddev 3.65 ns 2.71 ns 10 288.236Ki/s +ascon_mac_authenticate/4096_cv 0.06 % 0.04 % 10 0.04% +ascon_mac_authenticate/4096_min 6165 ns 6138 ns 10 638.166Mi/s +ascon_mac_authenticate/4096_max 6176 ns 6145 ns 10 638.855Mi/s +ascon_hash/256_mean 1713 ns 1705 ns 10 161.077Mi/s +ascon_hash/256_median 1713 ns 1705 ns 10 161.1Mi/s +ascon_hash/256_stddev 1.36 ns 1.30 ns 10 125.949Ki/s +ascon_hash/256_cv 0.08 % 0.08 % 10 0.08% +ascon_hash/256_min 1711 ns 1703 ns 10 160.821Mi/s +ascon_hash/256_max 1715 ns 1708 ns 10 161.235Mi/s +ascon_hash/64_mean 604 ns 601 ns 10 152.274Mi/s +ascon_hash/64_median 604 ns 601 ns 10 152.291Mi/s +ascon_hash/64_stddev 0.474 ns 0.437 ns 10 113.218Ki/s +ascon_hash/64_cv 0.08 % 0.07 % 10 0.07% +ascon_hash/64_min 604 ns 601 ns 10 152.091Mi/s +ascon_hash/64_max 605 ns 602 ns 10 152.436Mi/s +ascon80pq_aead_decrypt/1024/32_mean 3139 ns 3125 ns 10 322.297Mi/s +ascon80pq_aead_decrypt/1024/32_median 3141 ns 3124 ns 10 322.333Mi/s +ascon80pq_aead_decrypt/1024/32_stddev 5.00 ns 1.02 ns 10 107.933Ki/s +ascon80pq_aead_decrypt/1024/32_cv 0.16 % 0.03 % 10 0.03% +ascon80pq_aead_decrypt/1024/32_min 3126 ns 3124 ns 10 322.016Mi/s +ascon80pq_aead_decrypt/1024/32_max 3143 ns 3127 ns 10 322.363Mi/s +ascon128_aead_encrypt/1024/32_mean 3135 ns 3119 ns 10 322.868Mi/s +ascon128_aead_encrypt/1024/32_median 3135 ns 3118 ns 10 322.981Mi/s +ascon128_aead_encrypt/1024/32_stddev 1.76 ns 2.51 ns 10 266.009Ki/s +ascon128_aead_encrypt/1024/32_cv 0.06 % 0.08 % 10 0.08% +ascon128_aead_encrypt/1024/32_min 3133 ns 3117 ns 10 322.331Mi/s +ascon128_aead_encrypt/1024/32_max 3138 ns 3124 ns 10 323.081Mi/s +ascon_xofa/1024/64_mean 4208 ns 4187 ns 10 247.793Mi/s +ascon_xofa/1024/64_median 4208 ns 4187 ns 10 247.841Mi/s +ascon_xofa/1024/64_stddev 1.62 ns 1.38 ns 10 83.3247Ki/s +ascon_xofa/1024/64_cv 0.04 % 0.03 % 10 0.03% +ascon_xofa/1024/64_min 4205 ns 4186 ns 10 247.669Mi/s +ascon_xofa/1024/64_max 4210 ns 4189 ns 10 247.856Mi/s +ascon_permutation<6>_mean 24.2 ns 24.1 ns 10 1.54664Gi/s +ascon_permutation<6>_median 24.2 ns 24.1 ns 10 1.54686Gi/s +ascon_permutation<6>_stddev 0.024 ns 0.017 ns 10 1.11125Mi/s +ascon_permutation<6>_cv 0.10 % 0.07 % 10 0.07% +ascon_permutation<6>_min 24.1 ns 24.1 ns 10 1.54517Gi/s +ascon_permutation<6>_max 24.2 ns 24.1 ns 10 1.54784Gi/s +ascon128a_aead_decrypt/256/32_mean 707 ns 703 ns 10 390.579Mi/s +ascon128a_aead_decrypt/256/32_median 707 ns 703 ns 10 390.685Mi/s +ascon128a_aead_decrypt/256/32_stddev 0.965 ns 0.339 ns 10 192.525Ki/s +ascon128a_aead_decrypt/256/32_cv 0.14 % 0.05 % 10 0.05% +ascon128a_aead_decrypt/256/32_min 704 ns 703 ns 10 390.29Mi/s +ascon128a_aead_decrypt/256/32_max 707 ns 704 ns 10 390.75Mi/s +ascon128_aead_decrypt/64/32_mean 405 ns 403 ns 10 227.261Mi/s +ascon128_aead_decrypt/64/32_median 405 ns 403 ns 10 227.33Mi/s +ascon128_aead_decrypt/64/32_stddev 0.508 ns 0.492 ns 10 283.946Ki/s +ascon128_aead_decrypt/64/32_cv 0.13 % 0.12 % 10 0.12% +ascon128_aead_decrypt/64/32_min 403 ns 402 ns 10 226.593Mi/s +ascon128_aead_decrypt/64/32_max 405 ns 404 ns 10 227.579Mi/s +ascon128a_aead_encrypt/256/32_mean 686 ns 683 ns 10 402.05Mi/s +ascon128a_aead_encrypt/256/32_median 686 ns 682 ns 10 402.495Mi/s +ascon128a_aead_encrypt/256/32_stddev 3.41 ns 3.51 ns 10 2.04889Mi/s +ascon128a_aead_encrypt/256/32_cv 0.50 % 0.51 % 10 0.51% +ascon128a_aead_encrypt/256/32_min 684 ns 681 ns 10 396.758Mi/s +ascon128a_aead_encrypt/256/32_max 696 ns 692 ns 10 403.58Mi/s +ascon_mac_authenticate/256_mean 522 ns 519 ns 10 499.515Mi/s +ascon_mac_authenticate/256_median 522 ns 519 ns 10 499.793Mi/s +ascon_mac_authenticate/256_stddev 1.23 ns 0.982 ns 10 964.433Ki/s +ascon_mac_authenticate/256_cv 0.23 % 0.19 % 10 0.19% +ascon_mac_authenticate/256_min 521 ns 519 ns 10 497.401Mi/s +ascon_mac_authenticate/256_max 525 ns 522 ns 10 500.143Mi/s +ascon_xofa/4096/64_mean 15869 ns 15797 ns 10 251.141Mi/s +ascon_xofa/4096/64_median 15873 ns 15799 ns 10 251.117Mi/s +ascon_xofa/4096/64_stddev 16.9 ns 10.2 ns 10 165.57Ki/s +ascon_xofa/4096/64_cv 0.11 % 0.06 % 10 0.06% +ascon_xofa/4096/64_min 15830 ns 15786 ns 10 250.83Mi/s +ascon_xofa/4096/64_max 15888 ns 15817 ns 10 251.309Mi/s +ascon_mac_verify/4096_mean 6172 ns 6142 ns 10 641.006Mi/s +ascon_mac_verify/4096_median 6167 ns 6137 ns 10 641.434Mi/s +ascon_mac_verify/4096_stddev 15.0 ns 16.4 ns 10 1.70233Mi/s +ascon_mac_verify/4096_cv 0.24 % 0.27 % 10 0.27% +ascon_mac_verify/4096_min 6162 ns 6134 ns 10 636.2Mi/s +ascon_mac_verify/4096_max 6214 ns 6188 ns 10 641.774Mi/s +ascon_hasha/64_mean 422 ns 420 ns 10 217.855Mi/s +ascon_hasha/64_median 422 ns 420 ns 10 217.911Mi/s +ascon_hasha/64_stddev 0.396 ns 0.430 ns 10 227.932Ki/s +ascon_hasha/64_cv 0.09 % 0.10 % 10 0.10% +ascon_hasha/64_min 422 ns 420 ns 10 217.347Mi/s +ascon_hasha/64_max 423 ns 421 ns 10 218.039Mi/s +ascon128a_aead_decrypt/4096/32_mean 8259 ns 8219 ns 10 478.977Mi/s +ascon128a_aead_decrypt/4096/32_median 8260 ns 8218 ns 10 479.032Mi/s +ascon128a_aead_decrypt/4096/32_stddev 5.76 ns 6.89 ns 10 410.831Ki/s +ascon128a_aead_decrypt/4096/32_cv 0.07 % 0.08 % 10 0.08% +ascon128a_aead_decrypt/4096/32_min 8247 ns 8212 ns 10 478.432Mi/s +ascon128a_aead_decrypt/4096/32_max 8268 ns 8228 ns 10 479.39Mi/s ``` ## Usage -`ascon` is a header-only C++{>=20} library, which is pretty easy to get started with. +`ascon` is a header-only C++20 library, which is pretty easy to use. - Include proper header file(s) ( living in `include` directory ) in your header/ source file. - Use functions/ constants living under proper namespace of interest. @@ -746,22 +1380,24 @@ ascon_hasha/512_cv 3.42 % 3.42 % 8 Scheme | Header to include | Namespace of interest | Example :-: | :-- | :-- | :-: -Ascon-128 AEAD | `include/aead/ascon128.hpp` | `ascon128_aead::` | [example/ascon128_aead.cpp](./example/ascon128_aead.cpp) -Ascon-128a AEAD | `include/aead/ascon128a.hpp` | `ascon128a_aead::` | [example/ascon128a_aead.cpp](./example/ascon128a_aead.cpp) -Ascon-80pq AEAD | `include/aead/ascon80pq.hpp` | `ascon80pq_aead::` | [example/ascon80pq_aead.cpp](./example/ascon80pq_aead.cpp) -Ascon Hash | `include/hashing/ascon_hash.hpp` | `ascon_hash::` | [example/ascon_hash.cpp](./example/ascon_hash.cpp) -Ascon HashA | `include/hashing/ascon_hasha.hpp` | `ascon_hasha::` | [example/ascon_hasha.cpp](./example/ascon_hasha.cpp) -Ascon Xof | `include/hashing/ascon_xof.hpp` | `ascon_xof::` | [example/ascon_xof.cpp](./example/ascon_xof.cpp) -Ascon XofA | `include/hashing/ascon_xofa.hpp` | `ascon_xofa::` | [example/ascon_xofa.cpp](./example/ascon_xofa.cpp) -Ascon-PRF | `include/auth/ascon_prf.hpp` | `ascon_prf::` | [example/ascon_prf.cpp](./example/ascon_prf.cpp) -Ascon-MAC | `include/auth/ascon_mac.hpp` | `ascon_mac::` | [example/ascon_mac.cpp](./example/ascon_mac.cpp) -Ascon-MAC | `include/auth/ascon_prfs.hpp` | `ascon_prfs::` | [example/ascon_prfs.cpp](./example/ascon_prfs.cpp) +Ascon-128 AEAD | `include/aead/ascon128.hpp` | `ascon128_aead::` | [examples/ascon128_aead.cpp](./examples/ascon128_aead.cpp) +Ascon-128a AEAD | `include/aead/ascon128a.hpp` | `ascon128a_aead::` | [examples/ascon128a_aead.cpp](./examples/ascon128a_aead.cpp) +Ascon-80pq AEAD | `include/aead/ascon80pq.hpp` | `ascon80pq_aead::` | [examples/ascon80pq_aead.cpp](./examples/ascon80pq_aead.cpp) +Ascon Hash | `include/hashing/ascon_hash.hpp` | `ascon_hash::` | [examples/ascon_hash.cpp](./examples/ascon_hash.cpp) +Ascon HashA | `include/hashing/ascon_hasha.hpp` | `ascon_hasha::` | [examples/ascon_hasha.cpp](./examples/ascon_hasha.cpp) +Ascon Xof | `include/hashing/ascon_xof.hpp` | `ascon_xof::` | [examples/ascon_xof.cpp](./examples/ascon_xof.cpp) +Ascon XofA | `include/hashing/ascon_xofa.hpp` | `ascon_xofa::` | [examples/ascon_xofa.cpp](./examples/ascon_xofa.cpp) +Ascon-PRF | `include/auth/ascon_prf.hpp` | `ascon_prf::` | [examples/ascon_prf.cpp](./examples/ascon_prf.cpp) +Ascon-MAC | `include/auth/ascon_mac.hpp` | `ascon_mac::` | [examples/ascon_mac.cpp](./examples/ascon_mac.cpp) +Ascon-MAC | `include/auth/ascon_prfs.hpp` | `ascon_prfs::` | [examples/ascon_prfs.cpp](./examples/ascon_prfs.cpp) -> **Note** Don't forget to also include path ( `-I ./subtle/include` ) to dependency library `subtle`, when compiling translation units, using this library. +> [!TIP] +> Don't forget to also include path ( `-I ./subtle/include` ) to dependency library `subtle`, when compiling your translation units. -Ascon permutation-based hashing schemes such as Ascon-{Hash, HashA, Xof, XofA} are all compile-time evaluable functions i.e. `constexpr`. Meaning if you've an input message, which is known at program compilation time, then it is possible to evaluate aforementioned functions on that message, during program compile-time itself. This can be useful if one needs to compute Ascon-{Hash, HashA, Xof, XofA} digests on static messages, which can be stored as part of program binary. +Ascon permutation -based hashing schemes such as Ascon-{Hash, HashA, Xof, XofA} are all compile-time evaluable functions i.e. `constexpr`. Meaning if you've an input message, which is known at program compilation time, then it is possible to evaluate aforementioned functions on that message, during program compile-time itself. This can be useful if one needs to compute Ascon-{Hash, HashA, Xof, XofA} digests on static messages, which can be stored as part of program binary. -> **Note** Read more about `constexpr` functions @ https://en.cppreference.com/w/cpp/language/constexpr. +> [!NOTE] +> Read more about `constexpr` functions @ https://en.cppreference.com/w/cpp/language/constexpr. ```cpp // main.cpp @@ -824,7 +1460,7 @@ I maintain some examples demonstrating usage of Ascon AEAD, Hash, Xof, PRF and M $ ASCON_HEADERS=./include $ SUBTLE_HEADERS=./subtle/include -$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS example/ascon128_aead.cpp && ./a.out +$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS examples/ascon128_aead.cpp && ./a.out Ascon-128 AEAD Key : 06a819d82123676245b7b88e864b01ac @@ -836,7 +1472,7 @@ Decrypted : 22bbe3e728cc9355298c614a503471b69c27a193db9331e41ba42791b63d12e8b535 # ---------------- -$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS example/ascon128a_aead.cpp && ./a.out +$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS examples/ascon128a_aead.cpp && ./a.out Ascon-128a AEAD Key : 88119fff6f0673cfc8d0269bac8ca328 @@ -848,7 +1484,7 @@ Decrypted : 2b2e331614af85f38500a3fbe182ec4c00bd0b5a200b852f582a63249363892043c0 # ----------------- -$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS example/ascon80pq_aead.cpp && ./a.out +$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS examples/ascon80pq_aead.cpp && ./a.out Ascon-80pq AEAD Key : 93afc9866d8fafb4d4895a97147da2639e652407 @@ -860,7 +1496,7 @@ Decrypted : 6d27382a7c6184fe52ea354574bfc8da49cbd7cb830183820d3e47368489428d89c4 # ----------------- -$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS example/ascon_hash.cpp && ./a.out +$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS examples/ascon_hash.cpp && ./a.out Ascon Hash Message : a2309f40cae3efc99941641caf1c2cddf6fcd52a031ff199dfe5f185bb5142e91539b0d6777ad7fe8c2300d42015b623517f31b5db0a94d7e3c8cb521f03aabb @@ -868,7 +1504,7 @@ Digest : b467a2107aa34754a8679dfbac795660a5a2be927f2b0216a8fad50202d17249 # -------------- -$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS example/ascon_hasha.cpp && ./a.out +$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS examples/ascon_hasha.cpp && ./a.out Ascon HashA Message : b11a401ec0ad387fdc890962e86158432ba31e50b8810e3360b4c6143a73f6f82364f6bd895938b7f0babdab065c17c7e0e7196c4a15eb345eb174f4f1da2de5 @@ -876,7 +1512,7 @@ Digest : aa7463f3284c6b5d84aaf0c56a18ae79a2fbaf0e095111a0e65824e24892e419 # -------------- -$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS example/ascon_xof.cpp && ./a.out +$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS examples/ascon_xof.cpp && ./a.out Ascon XOF Message : 5265ce4d5d0b3a0d89c757e4b14049a4da449be528e9bb7606363717c16bf1f751ff64c4214aebe385ed4629b7eb14ff1a3f0ca6754ce6e54210efd33d117d41 @@ -884,7 +1520,7 @@ Digest : 65e2631e1478b8cec2fcbc8efbd954aefc4b20649d48818f06e95d355e4bda2b4d830f # -------------- -$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS example/ascon_xofa.cpp && ./a.out +$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS examples/ascon_xofa.cpp && ./a.out Ascon XOFA Message : 6970b5465e902633d16179a2c6f68cb8ad52e853bda99cf72b9bb33bbb23d0df6b22b67e7e4dbe53e04abaa63d69ee84b0e8e87a3cdd94c9da105622ffa50755 @@ -892,7 +1528,7 @@ Digest : 52644d6ba60bd3eca3aa2dabfe69ae397ddcdd0f0abd5151bf1d0e23cb4da41b3ab756 # -------------- -$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS example/ascon_prf.cpp && ./a.out +$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS examples/ascon_prf.cpp && ./a.out Ascon-PRF Key : 518d6223f8895a8ad637e6c3fce66084 @@ -901,7 +1537,7 @@ Tag : 46e7936bf2468ead291854196bbaf4e00fc676a06fe33bd6326f31ac968e4aff73e8c3 # -------------- -$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS example/ascon_mac.cpp && ./a.out +$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS examples/ascon_mac.cpp && ./a.out Ascon-MAC Key : 53dffb5673f089f77f363fadcee2c69f @@ -911,10 +1547,13 @@ Receiver Tag : 7fb21a028858927b54e148c6b25e68e2 # -------------- -$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS example/ascon_prfs.cpp && ./a.out +$ g++ -std=c++20 -Wall -O3 -march=native -I $ASCON_HEADERS -I $SUBTLE_HEADERS examples/ascon_prfs.cpp && ./a.out Ascon-PRFShort Key : f4c9dc526a8b03c3467abdc890575afc Message : f6ea9d6f4322de5c Tag : 3947e5220bf37c8ca807f2a1330134ad ``` + +> [!NOTE] +> This library doesn't expose any raw pointer + length -based interfaces, rather everything is wrapped under much safer `std::span` - which one can easily create from `std::{array, vector}` or even raw pointers and length pair. See https://en.cppreference.com/w/cpp/container/span. I made this choice because this gives us much better type safety and compile-time error reporting.