Comparison of key pair generation speed between RSA and ECDSA (ECC)

Japanese Version

Assumption

Investigated with OpenSSL’s speed command.
https://www.openssl.org/docs/man1.1.1/man1/openssl-speed.html

PC Specs
Intel(R) Celeron(R) N5095 @ 2.00 GHz 2.00 GHz
Mounted RAM: 16.0 GB
Windows 11 Pro

Methods

Investigation commands entered into the Windows command prompt.

echo ------RSA------ >>C:\temp\keygen-time.txt
echo Start RSA2048 >>C:\temp\keygen-time.txt
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
openssl genrsa 2048 > cert2048.key
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
echo Start RSA3072 >>C:\temp\keygen-time.txt
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
openssl genrsa 3072 > cert3072.key
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
echo Start RSA4096 >>C:\temp\keygen-time.txt
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
openssl genrsa 4096 > cert4096.key
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
echo Start RSA7680 >>C:\temp\keygen-time.txt
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
openssl genrsa 7680 > cert7680.key
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
echo Start RSA15360 >>C:\temp\keygen-time.txt
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
openssl genrsa 15360 > cert15360.key
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
echo ------ECC------ >>C:\temp\keygen-time.txt
echo Start P-256 >>C:\temp\keygen-time.txt
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
openssl ecparam -name prime256v1 -genkey -out certprime256v1.key
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
echo Start P-384 >>C:\temp\keygen-time.txt
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
openssl ecparam -name secp384r1 -genkey -out certecc384.key
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
echo Start P-521 >>C:\temp\keygen-time.txt
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
openssl ecparam -name secp521r1 -genkey -out certecc521.key
echo %DATE% %TIME% >>C:\temp\keygen-time.txt
exit

Results

------RSA------ 
Start RSA2048 
2023/01/21  6:01:58.40 
2023/01/21  6:01:58.68 
Start RSA3072 
2023/01/21  6:01:58.69 
2023/01/21  6:01:59.21 
Start RSA4096 
2023/01/21  6:01:59.23 
2023/01/21  6:02:03.35 
Start RSA7680 
2023/01/21  6:02:03.36 
2023/01/21  6:02:24.90 
Start RSA15360 
2023/01/21  6:02:24.91 
2023/01/21  6:06:22.68 
------ECC------ 
Start P-256 
2023/01/21  6:06:22.70 
2023/01/21  6:06:22.74 
Start P-384 
2023/01/21  6:06:22.76 
2023/01/21  6:06:22.80 
Start P-521 
2023/01/21  6:06:22.81 
2023/01/21  6:06:22.86  

Survey Results

Key pair generation for RSA 3072bits and below was possible in less than 1 second, while RSA 4096bits took 3 seconds, RSA 7360bits 36 seconds, and RSA 15360bits 3 minutes and 15 seconds, suggesting that RSA 4096bits and below are within the practical range.
On the other hand, ECDSA 256 bits to 521 bits are all considered to be within the practical range of 0.04 to 0.05 seconds.

cryptographic
algorithms
1st
Key pair
Generation time (sec)
2nd
Key pair
Generation time (sec)
3rd
Key pair
Generation time (sec)
Average
Key pair
Generation time (sec)
RSA 2048 bits0.280.870.670.61
RSA 3072 bits0.520.611.150.76
RSA 4096 bits4.123.342.473.31
RSA 7360 bits21.541:01.5126.1736.41
RSA 15360 bits3:57.772:47.713:00.213:15.23
ECDSA 256 bits0.040.040.050.04
ECDSA 384 bits0.040.040.040.04
ECDSA 521 bits0.050.050.050.05

Related Sites

タイトルとURLをコピーしました