In this blog series, we are giving our users more details about wolfSSL‘s new SP Math All math library. So far, we have introduced SP Math All, and provided comparisons to both wolfSSL’s normal Big Integer library and wolfSSL’s TFM library. And up next, what about OpenSSL? Is the SP Math All better than OpenSSL?
When compiling OpenSSL, you will get the highly optimized and large implementations by default. wolfSSL already has the Single Precision code that is as good or better! If you choose to compile OpenSSL without assembly then wolfSSL wins again.
Compiling both with no assembly and the SP Math All fast variation (the smaller of the two fast builds) has the following results:
|Architecture: x64||Percent Faster (wolfSSL vs. OpenSSL)|
|RSA 2048 Sign||8.27%|
|RSA 2048 Verify||29.75%|
|ECC P-256 Agree||20.56%|
|ECC P-256 Sign||25.31%|
|ECC P-256 Verify||24.13%|
Better across the aboard! And the size? It is difficult to obtain an accurate number for OpenSSL without writing a custom application. But looking at the size of the BN symbols indicates to us that OpenSSL would be as much as twice the size.
So you can see, the new SP Math All implementation is perfect for all your needs regardless of whether you are developing a memory limited embedded application, other embedded application or a mobile app. And don’t forget that Single Precision implements RSA and ECC algorithms at specific sizes to run blindingly fast in your mobile, desktop or server app and co-exists with SP Math All.