ctz
graviola
BlogDocsChangelog

GitHub Actions run

17 days ago 8357ce9 3a6db5:3a6dbc-hkdf pull_request

Compare

Base
Search a run

Head
Implement HKDF
#110
3a6db5:3a6dbc-hkdf
17 days ago
CPU Simulation

Compare
Suggested base runs: •

Benchmarks

aws-lc-rs[32B]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
4.2 µs
aws-lc-rs
graviola-bench/benches/p384.rs::benches::ecdh::p384-ecdh
924.1 µs
aws-lc-rs[8KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
22.2 µs
aws-lc-rs[2KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
10.9 µs
aws-lc-rs[16KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
49.7 µs
graviola[2KB]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
17.5 µs
graviola
graviola-bench/benches/p256.rs::benches::keygen::p256-keygen
120.4 µs
aws-lc-rs[32B]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
4.8 µs
graviola[16KB]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
112.4 µs
graviola[32B]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
3.8 µs
p256-rustcrypto
graviola-bench/benches/p256.rs::benches::keygen::p256-keygen
511.2 µs
ring
graviola-bench/benches/p384.rs::benches::ecdh::p384-ecdh
3.7 ms
ring[16KB]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
63.5 µs
ring
graviola-bench/benches/p256.rs::benches::keygen::p256-keygen
125.2 µs
graviola
graviola-bench/benches/p384.rs::benches::ecdh::p384-ecdh
1.4 ms
p384-rustcrypto
graviola-bench/benches/p384.rs::benches::ecdh::p384-ecdh
5.3 ms
graviola[2KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
8.4 µs
ring[2KB]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
12.3 µs
graviola[16KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
45 µs
graviola
graviola-bench/benches/p384.rs::benches::ecdsa_verify::p384-ecdsa-verify
1.2 ms
graviola
graviola-bench/benches/p384.rs::benches::ecdsa_sign::p384-ecdsa-sign
714.6 µs
graviola[32B]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
3 µs
ring[32B]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
3.2 µs
rustcrypto
graviola-bench/benches/p384.rs::benches::ecdsa_sign::p384-ecdsa-sign
3 ms
graviola[8KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
18.5 µs
aws-lc-rs
graviola-bench/benches/p384.rs::benches::ecdsa_sign::p384-ecdsa-sign
445.8 µs
aws-lc-rs
graviola-bench/benches/p384.rs::benches::ecdsa_verify::p384-ecdsa-verify
879.1 µs
rustcrypto[16KB]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
81.5 µs
ring
graviola-bench/benches/p384.rs::benches::ecdsa_sign::p384-ecdsa-sign
2 ms
ring[16KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
48.5 µs
rustcrypto[32B]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
11 µs
graviola
graviola-bench/benches/p384.rs::benches::keygen::p384-keygen
658.9 µs
p384-rustcrypto
graviola-bench/benches/p384.rs::benches::keygen::p384-keygen
2.7 ms
aws-lc-rs
graviola-bench/benches/p384.rs::benches::keygen::p384-keygen
269.3 µs
ring[2KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
9.9 µs
rustcrypto[2KB]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
19.7 µs
rustcrypto
graviola-bench/benches/p384.rs::benches::ecdsa_verify::p384-ecdsa-verify
5.3 ms
ring
graviola-bench/benches/p384.rs::benches::ecdsa_verify::p384-ecdsa-verify
3.6 ms
ring
graviola-bench/benches/rsa_priv.rs::benches::rsa2048_pkcs1_sha256_sign::rsa2048-pkcs1-sha256-sign
3.5 ms
ring[32B]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
3.6 µs
aws-lc-rs[255 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha256::hkdf-sha256
434.9 µs
aws-lc-rs
graviola-bench/benches/rsa_priv.rs::benches::rsa2048_pkcs1_sha256_sign::rsa2048-pkcs1-sha256-sign
2.4 ms
graviola[1 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha256::hkdf-sha256
15.7 µs
graviola
graviola-bench/benches/rsa_priv.rs::benches::rsa2048_pkcs1_sha256_sign::rsa2048-pkcs1-sha256-sign
2.5 ms
graviola
graviola-bench/benches/rsa_pub.rs::benches::rsa2048_pkcs1_sha256_verify::rsa2048-pkcs1-sha256-verify
87 µs
ring
graviola-bench/benches/p384.rs::benches::keygen::p384-keygen
1.9 ms
ring[8KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
21.1 µs
graviola[255 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha256::hkdf-sha256
809.4 µs
rustcrypto
graviola-bench/benches/rsa_priv.rs::benches::rsa2048_pkcs1_sha256_sign::rsa2048-pkcs1-sha256-sign
8.1 ms
rustcrypto[16KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
66.2 µs
rustcrypto[32B]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
3.1 µs
rustcrypto[2KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
11 µs
ring[1 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha256::hkdf-sha256
12.1 µs
ring
graviola-bench/benches/rsa_pub.rs::benches::rsa2048_pkcs1_sha256_verify::rsa2048-pkcs1-sha256-verify
141.4 µs
rustcrypto[8KB]
graviola-bench/benches/aes_gcm.rs::benches::aes128_gcm::aes128-gcm
29.1 µs
aws-lc-rs[1 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha256::hkdf-sha256
15.8 µs
aws-lc-rs[32B]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
6.3 µs
graviola[32B]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
3.2 µs
rustcrypto[1 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha256::hkdf-sha256
17 µs
aws-lc-rs
graviola-bench/benches/rsa_pub.rs::benches::rsa2048_pkcs1_sha256_verify::rsa2048-pkcs1-sha256-verify
127.1 µs
rustcrypto
graviola-bench/benches/rsa_pub.rs::benches::rsa2048_pkcs1_sha256_verify::rsa2048-pkcs1-sha256-verify
955.3 µs
ring[255 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha256::hkdf-sha256
423.2 µs
ring[8KB]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
86.8 µs
ring[32B]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
4.5 µs
graviola[64KB]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
1.4 ms
ring[64KB]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
663.3 µs
rustcrypto[8KB]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
146.7 µs
aws-lc-rs[64KB]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
665.1 µs
graviola[8KB]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
183.8 µs
rustcrypto[64KB]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
1.1 ms
aws-lc-rs[2KB]
graviola-bench/benches/hmac.rs::benches::sha256::hmac-sha256
32 µs
aws-lc-rs[32B]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
7.4 µs
aws-lc-rs[64KB]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
484.5 µs
aws-lc-rs[32B]
graviola-bench/benches/hmac.rs::benches::sha256::hmac-sha256
11.4 µs
graviola[32B]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
4.5 µs
rustcrypto[32B]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
7.1 µs
graviola[8KB]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
88 µs
graviola[2KB]
graviola-bench/benches/hmac.rs::benches::sha256::hmac-sha256
53.9 µs
rustcrypto[255 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha256::hkdf-sha256
607.9 µs
graviola[32B]
graviola-bench/benches/hmac.rs::benches::sha256::hmac-sha256
8.7 µs
ring[2KB]
graviola-bench/benches/hmac.rs::benches::sha256::hmac-sha256
28.5 µs
ring[32B]
graviola-bench/benches/hmac.rs::benches::sha256::hmac-sha256
7.9 µs
graviola[2KB]
graviola-bench/benches/hmac.rs::benches::sha384::hmac-sha384
33.1 µs
aws-lc-rs[8KB]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
67.2 µs
rustcrypto[2KB]
graviola-bench/benches/hmac.rs::benches::sha256::hmac-sha256
46.4 µs
aws-lc-rs[32B]
graviola-bench/benches/hmac.rs::benches::sha384::hmac-sha384
13.3 µs
ring[2KB]
graviola-bench/benches/hmac.rs::benches::sha384::hmac-sha384
24.5 µs
rustcrypto[2KB]
graviola-bench/benches/hmac.rs::benches::sha384::hmac-sha384
33.6 µs
aws-lc-rs[8KB]
graviola-bench/benches/sha2.rs::benches::sha256::sha256
88.6 µs
libcrux-ml-kem
graviola-bench/benches/mlkem768.rs::benches::mlkem768_decaps::mlkem768-decaps
123.1 µs
rustcrypto[64KB]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
746.1 µs
ring[32B]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
5.4 µs
graviola[64KB]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
638.6 µs
aws-lc-rs[2KB]
graviola-bench/benches/hmac.rs::benches::sha384::hmac-sha384
28.2 µs
aws-lc-rs
graviola-bench/benches/mlkem768.rs::benches::mlkem768_keygen::mlkem768-keygen
182.3 µs
aws-lc-rs[2KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
11.3 µs
graviola[32B]
graviola-bench/benches/hmac.rs::benches::sha384::hmac-sha384
8.8 µs
rustcrypto[32B]
graviola-bench/benches/hmac.rs::benches::sha256::hmac-sha256
11.3 µs
aws-lc-rs[16KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
51.3 µs
ring[32B]
graviola-bench/benches/hmac.rs::benches::sha384::hmac-sha384
9.5 µs
graviola[16KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
46.9 µs
rustcrypto
graviola-bench/benches/mlkem768.rs::benches::mlkem768_decaps::mlkem768-decaps
348.6 µs
libcrux-ml-kem
graviola-bench/benches/mlkem768.rs::benches::mlkem768_encaps::mlkem768-encaps
113 µs
graviola
graviola-bench/benches/p256.rs::benches::ecdh::p256-ecdh
425.3 µs
aws-lc-rs
graviola-bench/benches/mlkem768.rs::benches::mlkem768_encaps::mlkem768-encaps
204.5 µs
rustcrypto
graviola-bench/benches/mlkem768.rs::benches::mlkem768_keygen::mlkem768-keygen
275.9 µs
ring[64KB]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
482.3 µs
libcrux-ml-kem
graviola-bench/benches/mlkem768.rs::benches::mlkem768_keygen::mlkem768-keygen
110 µs
aws-lc-rs
graviola-bench/benches/mlkem768.rs::benches::mlkem768_decaps::mlkem768-decaps
239.6 µs
aws-lc-rs[8KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
23 µs
rustcrypto[32B]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
3.9 µs
ring[8KB]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
65 µs
ring
graviola-bench/benches/p256.rs::benches::ecdsa_sign::p256-ecdsa-sign
151.4 µs
ring
graviola-bench/benches/p256.rs::benches::ecdh::p256-ecdh
343 µs
aws-lc-rs
graviola-bench/benches/p256.rs::benches::ecdh::p256-ecdh
345.6 µs
dalek
graviola-bench/benches/x25519.rs::benches::x25519::x25519-ecdh
361 µs
rustcrypto[32B]
graviola-bench/benches/hmac.rs::benches::sha384::hmac-sha384
9.5 µs
p256-rustcrypto
graviola-bench/benches/p256.rs::benches::ecdh::p256-ecdh
1 ms
aws-lc-rs
graviola-bench/benches/x25519.rs::benches::x25519::x25519-ecdh
202 µs
rustcrypto[8KB]
graviola-bench/benches/sha2.rs::benches::sha512::sha512
97.5 µs
aws-lc-rs
graviola-bench/benches/p256.rs::benches::ecdsa_sign::p256-ecdsa-sign
170.3 µs
aws-lc-rs[32B]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
4.8 µs
aws-lc-rs
graviola-bench/benches/p256.rs::benches::ecdsa_verify::p256-ecdsa-verify
268.9 µs
graviola[2KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
9.1 µs
ring
graviola-bench/benches/x25519.rs::benches::x25519::x25519-ecdh
273.8 µs
graviola[32B]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
3 µs
graviola
graviola-bench/benches/x25519.rs::benches::x25519::x25519-ecdh
154.2 µs
graviola
graviola-bench/benches/p256.rs::benches::ecdsa_verify::p256-ecdsa-verify
284.5 µs
aws-lc-rs
graviola-bench/benches/p256.rs::benches::keygen::p256-keygen
127.9 µs
rustcrypto
graviola-bench/benches/mlkem768.rs::benches::mlkem768_encaps::mlkem768-encaps
274 µs
ring[2KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
10.5 µs
ring[32B]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
3.7 µs
graviola[16KB]
graviola-bench/benches/xchacha20poly1305.rs::benches::bench_chacha20poly1305::xchacha20poly1305
112.8 µs
ring[8KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
22.3 µs
rustcrypto[16KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
68.4 µs
rustcrypto[32B]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
3.2 µs
graviola
graviola-bench/benches/p256.rs::benches::ecdsa_sign::p256-ecdsa-sign
182.4 µs
rustcrypto[16KB]
graviola-bench/benches/xchacha20poly1305.rs::benches::bench_chacha20poly1305::xchacha20poly1305
81.8 µs
ring[16KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
50.2 µs
rustcrypto[32B]
graviola-bench/benches/xchacha20poly1305.rs::benches::bench_chacha20poly1305::xchacha20poly1305
11.3 µs
ring
graviola-bench/benches/p256.rs::benches::ecdsa_verify::p256-ecdsa-verify
260 µs
rustcrypto[2KB]
graviola-bench/benches/xchacha20poly1305.rs::benches::bench_chacha20poly1305::xchacha20poly1305
20 µs
rustcrypto[8KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
30.3 µs
graviola[8KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
19.5 µs
rustcrypto
graviola-bench/benches/p256.rs::benches::ecdsa_verify::p256-ecdsa-verify
1 ms
rustcrypto
graviola-bench/benches/p256.rs::benches::ecdsa_sign::p256-ecdsa-sign
642.2 µs
graviola[32B]
graviola-bench/benches/xchacha20poly1305.rs::benches::bench_chacha20poly1305::xchacha20poly1305
4.2 µs
rustcrypto[2KB]
graviola-bench/benches/aes_gcm.rs::benches::aes256_gcm::aes256-gcm
11.8 µs
graviola[2KB]
graviola-bench/benches/xchacha20poly1305.rs::benches::bench_chacha20poly1305::xchacha20poly1305
17.8 µs
aws-lc-rs[2KB]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
13.2 µs
aws-lc-rs[16KB]
graviola-bench/benches/chacha20poly1305.rs::benches::bench_chacha20poly1305::chacha20poly1305
64.4 µs
aws-lc-rs[255 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha384::hkdf-sha384
565.1 µs
ring[1 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha384::hkdf-sha384
14.7 µs
aws-lc-rs[1 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha384::hkdf-sha384
19.3 µs
graviola[1 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha384::hkdf-sha384
14.2 µs
rustcrypto[1 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha384::hkdf-sha384
16.5 µs
graviola[255 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha384::hkdf-sha384
577.7 µs
rustcrypto[255 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha384::hkdf-sha384
749 µs
ring[255 * HashLen]
graviola-bench/benches/hkdf.rs::benches::sha384::hkdf-sha384
560.2 µs
© 2025 CodSpeed Technology
Home Terms Privacy Docs