At the moment benchmarking is non-automated, and is run on two of my laptops. See below.
RSA2048 signing |
🥇 ring2,043.4 sigs/sec |
🥈 graviola1,351.5 sigs/sec |
🥉 aws-lc-rs1,264.6 sigs/sec |
golang1,250.8 sigs/sec |
rustcrypto968.32 sigs/sec |
ECDSA-P256 signing |
🥇 graviola86,755 sigs/sec |
🥈 ring65,851 sigs/sec |
🥉 aws-lc-rs63,079 sigs/sec |
golang60,121 sigs/sec |
rustcrypto7,543 sigs/sec |
ECDSA-P384 signing |
🥇 aws-lc-rs13,431 sigs/sec |
🥈 graviola8,748 sigs/sec |
🥉 golang7,192.5 sigs/sec |
ring3,411.5 sigs/sec |
rustcrypto2,255 sigs/sec |
RSA2048 signature verification |
🥇 ring57,438 sigs/sec |
🥈 graviola49,038 sigs/sec |
🥉 aws-lc-rs43,796 sigs/sec |
golang39,064 sigs/sec |
rustcrypto7,858.5 sigs/sec |
ECDSA-P256 signature verification |
🥇 aws-lc-rs24,948 sigs/sec |
🥈 graviola24,706 sigs/sec |
🥉 ring23,104 sigs/sec |
golang19,410 sigs/sec |
rustcrypto4,633.8 sigs/sec |
ECDSA-P384 signature verification |
🥇 aws-lc-rs5,243.1 sigs/sec |
🥈 graviola4,742.3 sigs/sec |
🥉 golang2,320.3 sigs/sec |
ring1,904.7 sigs/sec |
rustcrypto1,224.2 sigs/sec |
X25519 key agreement |
🥇 graviola42,655 kx/sec |
🥈 aws-lc-rs34,135 kx/sec |
🥉 ring26,096 kx/sec |
dalek23,873 kx/sec |
golang13,375 kx/sec |
P256 key agreement |
🥇 graviola23,232 kx/sec |
🥈 ring21,096 kx/sec |
🥉 aws-lc-rs20,796 kx/sec |
golang20,282 kx/sec |
rustcrypto4,603.5 kx/sec |
P384 key agreement |
🥇 graviola4,481.5 kx/sec |
🥈 aws-lc-rs4,460.2 kx/sec |
🥉 golang2,483.2 kx/sec |
ring1,846.8 kx/sec |
rustcrypto1,222.5 kx/sec |
RSA2048 signing |
🥇 ring2,381.7 sigs/sec |
🥈 aws-lc-rs2,304.5 sigs/sec |
🥉 graviola2,253.9 sigs/sec |
golang1,358.4 sigs/sec |
rustcrypto879.9 sigs/sec |
ECDSA-P256 signing |
🥇 graviola91,276 sigs/sec |
🥈 ring78,830 sigs/sec |
🥉 aws-lc-rs77,304 sigs/sec |
golang60,809 sigs/sec |
rustcrypto8,361.7 sigs/sec |
ECDSA-P384 signing |
🥇 aws-lc-rs15,382 sigs/sec |
🥈 graviola9,145 sigs/sec |
🥉 golang6,798 sigs/sec |
ring3,146.7 sigs/sec |
rustcrypto2,137.1 sigs/sec |
RSA2048 signature verification |
🥇 graviola83,041 sigs/sec |
🥈 aws-lc-rs77,596 sigs/sec |
🥉 ring65,362 sigs/sec |
golang46,486 sigs/sec |
rustcrypto7,294.4 sigs/sec |
ECDSA-P256 signature verification |
🥇 aws-lc-rs26,696 sigs/sec |
🥈 ring26,114 sigs/sec |
🥉 graviola24,795 sigs/sec |
golang19,334 sigs/sec |
rustcrypto4,844.6 sigs/sec |
ECDSA-P384 signature verification |
🥇 aws-lc-rs6,234.9 sigs/sec |
🥈 graviola5,049.5 sigs/sec |
🥉 golang2,261.3 sigs/sec |
ring1,749.4 sigs/sec |
rustcrypto1,206.4 sigs/sec |