Last active
October 19, 2017 03:56
-
-
Save kcchu/99cf83c516bccc26b7fdeb8bc7e85f7a to your computer and use it in GitHub Desktop.
Benchmark result of Rust crypto libraries: ring, rust-crypto and sodiumoxide
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Benchmark code: https://github.com/briansmith/crypto-bench | |
# 2.9 GHz Intel Core i7, Ubuntu 17.04 | |
$ (cd ring && cargo bench); (cd rust_crypto && cargo bench); (cd sodiumoxide && cargo bench) | |
Finished release [optimized + debuginfo] target(s) in 0.51 secs | |
Running target/release/deps/crypto_bench_ring-c8db2f09335823cf | |
running 60 tests | |
test aead::seal_in_place::aes_128_gcm::tls12_1350 ... bench: 411 ns/iter (+/- 2) = 3284 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls12_16 ... bench: 125 ns/iter (+/- 40) = 128 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls12_8192 ... bench: 1,589 ns/iter (+/- 455) = 5155 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls12_finished ... bench: 134 ns/iter (+/- 21) = 89 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls13_1350 ... bench: 375 ns/iter (+/- 29) = 3600 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls13_8192 ... bench: 1,578 ns/iter (+/- 134) = 5191 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls13_finished ... bench: 116 ns/iter (+/- 34) = 275 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls12_1350 ... bench: 488 ns/iter (+/- 39) = 2766 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls12_16 ... bench: 135 ns/iter (+/- 3) = 118 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls12_8192 ... bench: 2,098 ns/iter (+/- 208) = 3904 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls12_finished ... bench: 141 ns/iter (+/- 40) = 85 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls13_1350 ... bench: 473 ns/iter (+/- 37) = 2854 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls13_8192 ... bench: 2,092 ns/iter (+/- 147) = 3915 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls13_finished ... bench: 126 ns/iter (+/- 16) = 253 MB/s | |
test aead::seal_in_place::chacha20_poly1305::tls12_1350 ... bench: 1,019 ns/iter (+/- 132) = 1324 MB/s | |
test aead::seal_in_place::chacha20_poly1305::tls12_16 ... bench: 359 ns/iter (+/- 43) = 44 MB/s | |
test aead::seal_in_place::chacha20_poly1305::tls12_8192 ... bench: 4,112 ns/iter (+/- 832) = 1992 MB/s | |
test aead::seal_in_place::chacha20_poly1305::tls12_finished ... bench: 378 ns/iter (+/- 73) = 31 MB/s | |
test aead::seal_in_place::chacha20_poly1305::tls13_1350 ... bench: 1,000 ns/iter (+/- 97) = 1350 MB/s | |
test aead::seal_in_place::chacha20_poly1305::tls13_8192 ... bench: 4,095 ns/iter (+/- 165) = 2000 MB/s | |
test aead::seal_in_place::chacha20_poly1305::tls13_finished ... bench: 343 ns/iter (+/- 35) = 93 MB/s | |
test agreement::p256::generate_key_pair ... bench: 14,823 ns/iter (+/- 1,575) | |
test agreement::p256::generate_key_pair_and_agree_ephemeral ... bench: 69,712 ns/iter (+/- 8,599) | |
test agreement::p256::generate_private_key ... bench: 475 ns/iter (+/- 129) | |
test agreement::p384::generate_key_pair ... bench: 442,641 ns/iter (+/- 81,271) | |
test agreement::p384::generate_key_pair_and_agree_ephemeral ... bench: 879,574 ns/iter (+/- 114,567) | |
test agreement::p384::generate_private_key ... bench: 775 ns/iter (+/- 102) | |
test agreement::x25519::generate_key_pair ... bench: 38,562 ns/iter (+/- 7,857) | |
test agreement::x25519::generate_key_pair_and_agree_ephemeral ... bench: 79,803 ns/iter (+/- 6,533) | |
test agreement::x25519::generate_private_key ... bench: 373 ns/iter (+/- 30) | |
test digest::sha1::_1000 ... bench: 4,106 ns/iter (+/- 1,644) = 243 MB/s | |
test digest::sha1::_16 ... bench: 287 ns/iter (+/- 31) = 55 MB/s | |
test digest::sha1::_2000 ... bench: 7,867 ns/iter (+/- 443) = 254 MB/s | |
test digest::sha1::_256 ... bench: 1,208 ns/iter (+/- 228) = 211 MB/s | |
test digest::sha1::_8192 ... bench: 30,450 ns/iter (+/- 2,772) = 269 MB/s | |
test digest::sha1::block_len ... bench: 510 ns/iter (+/- 105) = 125 MB/s | |
test digest::sha256::_1000 ... bench: 2,293 ns/iter (+/- 564) = 436 MB/s | |
test digest::sha256::_16 ... bench: 214 ns/iter (+/- 31) = 74 MB/s | |
test digest::sha256::_2000 ... bench: 5,093 ns/iter (+/- 992) = 392 MB/s | |
test digest::sha256::_256 ... bench: 815 ns/iter (+/- 186) = 314 MB/s | |
test digest::sha256::_8192 ... bench: 19,206 ns/iter (+/- 5,752) = 426 MB/s | |
test digest::sha256::block_len ... bench: 347 ns/iter (+/- 43) = 184 MB/s | |
test digest::sha384::_1000 ... bench: 1,753 ns/iter (+/- 579) = 570 MB/s | |
test digest::sha384::_16 ... bench: 270 ns/iter (+/- 23) = 59 MB/s | |
test digest::sha384::_2000 ... bench: 3,104 ns/iter (+/- 1,314) = 644 MB/s | |
test digest::sha384::_256 ... bench: 685 ns/iter (+/- 184) = 373 MB/s | |
test digest::sha384::_8192 ... bench: 13,153 ns/iter (+/- 3,048) = 622 MB/s | |
test digest::sha384::block_len ... bench: 521 ns/iter (+/- 150) = 245 MB/s | |
test digest::sha512::_1000 ... bench: 1,617 ns/iter (+/- 91) = 618 MB/s | |
test digest::sha512::_16 ... bench: 258 ns/iter (+/- 74) = 62 MB/s | |
test digest::sha512::_2000 ... bench: 3,366 ns/iter (+/- 740) = 594 MB/s | |
test digest::sha512::_256 ... bench: 651 ns/iter (+/- 205) = 393 MB/s | |
test digest::sha512::_8192 ... bench: 13,019 ns/iter (+/- 3,063) = 629 MB/s | |
test digest::sha512::block_len ... bench: 470 ns/iter (+/- 54) = 272 MB/s | |
test pbkdf2::hmac_sha256 ... bench: 42,100,941 ns/iter (+/- 8,456,599) | |
test pbkdf2::hmac_sha384 ... bench: 67,269,280 ns/iter (+/- 28,548,713) | |
test pbkdf2::hmac_sha512 ... bench: 91,416,839 ns/iter (+/- 16,560,689) | |
test pbkdf2::hmac_sha512_256 ... bench: 63,498,663 ns/iter (+/- 17,615,139) | |
test signature::ed25519::generate_key_pair ... bench: 34,553 ns/iter (+/- 7,012) | |
test signature::ed25519::sign_empty ... bench: 31,930 ns/iter (+/- 5,131) | |
test result: ok. 0 passed; 0 failed; 0 ignored; 60 measured; 0 filtered out | |
Finished release [optimized + debuginfo] target(s) in 0.37 secs | |
Running target/release/deps/crypto_bench_rust_crypto-fd0680115badf6cf | |
running 53 tests | |
test aead::seal_in_place::aes_128_gcm::tls12_1350 ... bench: 20,649 ns/iter (+/- 695) = 65 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls12_16 ... bench: 2,741 ns/iter (+/- 176) = 5 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls12_8192 ... bench: 100,346 ns/iter (+/- 8,973) = 81 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls12_finished ... bench: 2,700 ns/iter (+/- 639) = 4 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls13_1350 ... bench: 19,878 ns/iter (+/- 6,211) = 67 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls13_8192 ... bench: 100,045 ns/iter (+/- 8,825) = 81 MB/s | |
test aead::seal_in_place::aes_128_gcm::tls13_finished ... bench: 2,890 ns/iter (+/- 341) = 11 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls12_1350 ... bench: 19,247 ns/iter (+/- 2,377) = 70 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls12_16 ... bench: 2,689 ns/iter (+/- 180) = 5 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls12_8192 ... bench: 105,833 ns/iter (+/- 10,513) = 77 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls12_finished ... bench: 2,733 ns/iter (+/- 153) = 4 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls13_1350 ... bench: 19,145 ns/iter (+/- 1,852) = 70 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls13_8192 ... bench: 101,676 ns/iter (+/- 13,915) = 80 MB/s | |
test aead::seal_in_place::aes_256_gcm::tls13_finished ... bench: 2,836 ns/iter (+/- 352) = 11 MB/s | |
test aead::seal_in_place::chacha20_poly1305_old::tls12_1350 ... bench: 5,558 ns/iter (+/- 238) = 242 MB/s | |
test aead::seal_in_place::chacha20_poly1305_old::tls12_16 ... bench: 419 ns/iter (+/- 42) = 38 MB/s | |
test aead::seal_in_place::chacha20_poly1305_old::tls12_8192 ... bench: 31,515 ns/iter (+/- 1,864) = 259 MB/s | |
test aead::seal_in_place::chacha20_poly1305_old::tls12_finished ... bench: 425 ns/iter (+/- 28) = 28 MB/s | |
test aead::seal_in_place::chacha20_poly1305_old::tls13_1350 ... bench: 5,897 ns/iter (+/- 218) = 228 MB/s | |
test aead::seal_in_place::chacha20_poly1305_old::tls13_8192 ... bench: 31,145 ns/iter (+/- 3,044) = 263 MB/s | |
test aead::seal_in_place::chacha20_poly1305_old::tls13_finished ... bench: 447 ns/iter (+/- 36) = 71 MB/s | |
test agreement::x25519::generate_key_pair ... bench: 117,363 ns/iter (+/- 27,003) | |
test agreement::x25519::generate_key_pair_and_agree_ephemeral ... bench: 219,423 ns/iter (+/- 31,535) | |
test agreement::x25519::generate_private_key ... bench: 358 ns/iter (+/- 40) | |
test digest::sha1::_1000 ... bench: 1,807 ns/iter (+/- 218) = 553 MB/s | |
test digest::sha1::_16 ... bench: 130 ns/iter (+/- 32) = 123 MB/s | |
test digest::sha1::_2000 ... bench: 3,532 ns/iter (+/- 892) = 566 MB/s | |
test digest::sha1::_256 ... bench: 558 ns/iter (+/- 29) = 458 MB/s | |
test digest::sha1::_8192 ... bench: 14,323 ns/iter (+/- 1,030) = 571 MB/s | |
test digest::sha1::block_len ... bench: 243 ns/iter (+/- 29) = 263 MB/s | |
test digest::sha256::_1000 ... bench: 4,308 ns/iter (+/- 350) = 232 MB/s | |
test digest::sha256::_16 ... bench: 288 ns/iter (+/- 58) = 55 MB/s | |
test digest::sha256::_2000 ... bench: 8,481 ns/iter (+/- 949) = 235 MB/s | |
test digest::sha256::_256 ... bench: 1,368 ns/iter (+/- 278) = 187 MB/s | |
test digest::sha256::_8192 ... bench: 34,370 ns/iter (+/- 5,326) = 238 MB/s | |
test digest::sha256::block_len ... bench: 560 ns/iter (+/- 39) = 114 MB/s | |
test digest::sha384::_1000 ... bench: 2,680 ns/iter (+/- 238) = 373 MB/s | |
test digest::sha384::_16 ... bench: 353 ns/iter (+/- 29) = 45 MB/s | |
test digest::sha384::_2000 ... bench: 5,292 ns/iter (+/- 519) = 377 MB/s | |
test digest::sha384::_256 ... bench: 1,043 ns/iter (+/- 97) = 245 MB/s | |
test digest::sha384::_8192 ... bench: 21,966 ns/iter (+/- 3,690) = 372 MB/s | |
test digest::sha384::block_len ... bench: 684 ns/iter (+/- 74) = 187 MB/s | |
test digest::sha512::_1000 ... bench: 2,772 ns/iter (+/- 197) = 360 MB/s | |
test digest::sha512::_16 ... bench: 375 ns/iter (+/- 43) = 42 MB/s | |
test digest::sha512::_2000 ... bench: 5,458 ns/iter (+/- 539) = 366 MB/s | |
test digest::sha512::_256 ... bench: 1,012 ns/iter (+/- 149) = 252 MB/s | |
test digest::sha512::_8192 ... bench: 21,070 ns/iter (+/- 1,284) = 388 MB/s | |
test digest::sha512::block_len ... bench: 703 ns/iter (+/- 152) = 182 MB/s | |
test pbkdf2::hmac_sha1 ... bench: 50,000,482 ns/iter (+/- 9,819,069) | |
test pbkdf2::hmac_sha256 ... bench: 119,026,748 ns/iter (+/- 33,473,318) | |
test pbkdf2::hmac_sha512 ... bench: 159,859,927 ns/iter (+/- 31,564,042) | |
test signature::ed25519::generate_key_pair ... bench: 45,738 ns/iter (+/- 18,157) | |
test signature::ed25519::sign_empty ... bench: 49,439 ns/iter (+/- 21,297) | |
test result: ok. 0 passed; 0 failed; 0 ignored; 53 measured; 0 filtered out | |
Finished release [optimized + debuginfo] target(s) in 6.2 secs | |
Running target/release/deps/crypto_bench_sodiumoxide-c3766008b3bb0131 | |
running 15 tests | |
test aead::xsalsa20poly1305_1350 ... bench: 4,120 ns/iter (+/- 524) = 327 MB/s | |
test aead::xsalsa20poly1305_16 ... bench: 455 ns/iter (+/- 59) = 35 MB/s | |
test aead::xsalsa20poly1305_8192 ... bench: 21,516 ns/iter (+/- 3,195) = 380 MB/s | |
test digest::sha256::_1000 ... bench: 5,901 ns/iter (+/- 1,021) = 169 MB/s | |
test digest::sha256::_16 ... bench: 476 ns/iter (+/- 153) = 33 MB/s | |
test digest::sha256::_2000 ... bench: 11,773 ns/iter (+/- 2,954) = 169 MB/s | |
test digest::sha256::_256 ... bench: 1,885 ns/iter (+/- 419) = 135 MB/s | |
test digest::sha256::_8192 ... bench: 51,165 ns/iter (+/- 11,620) = 160 MB/s | |
test digest::sha256::block_len ... bench: 836 ns/iter (+/- 185) = 76 MB/s | |
test digest::sha512::_1000 ... bench: 4,697 ns/iter (+/- 347) = 212 MB/s | |
test digest::sha512::_16 ... bench: 789 ns/iter (+/- 278) = 20 MB/s | |
test digest::sha512::_2000 ... bench: 10,329 ns/iter (+/- 1,807) = 193 MB/s | |
test digest::sha512::_256 ... bench: 2,152 ns/iter (+/- 349) = 118 MB/s | |
test digest::sha512::_8192 ... bench: 37,219 ns/iter (+/- 14,387) = 220 MB/s | |
test digest::sha512::block_len ... bench: 1,540 ns/iter (+/- 200) = 83 MB/s | |
test result: ok. 0 passed; 0 failed; 0 ignored; 15 measured; 0 filtered out | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment