Link Copied
Hi Chen Chen,
Have you noticed these two articles on AES benchmark?
http://software.intel.com/en-us/articles/boosting-openssl-aes-encryption-with-intel-ipp/
The first one includes some benchmark steps, and the second is one common issue.
Thanks,
Chao
Hi,
It seems that I am reopening an old question, comparing once again OpenSSL with Intel IPP. I am interested in performance of RSA key pair generation comparing Intel IPP and OpenSSL. My tests show once again that OpenSSL version outperforms Intel IPP Crypto libraries. My testing methodology is defined as follows:
int runs = 10; int repetitions = 10; myInt64 values[repetitions]; measurement_init(); for (int i = 0; i < repetitions; ++i) { measurement_start(); for (int j = 0; j < runs; ++j) { status = ippsRSA_GenerateKeys( pSrcPublicExp, pModulus, pPublicExp, pPrivateExp, privateKey, scratchBuffer, nTrials, primeGen, ippsPRNGen, randomGen ); } measurement_stop(); meas_values = meas_values / runs; } measurement_finish(values); qsort(values, meas_i, sizeof(myInt64), cmpMyInt64); printf("%4d : %llu\n", bitsRSA, values[repetitions / 2]);
Obtained results are available bellow:
More information detailing this short experiment is available here, and the timing code is available here.
How different is the Intel IPP version of RSA key generation algorithm (ippsRSA_GenerateKeys) compared to OpenSSL (RSA_generate_key)? Can we expect improvements in the newer versions of Intel IPP Cryptography libraries ?
Allen,
Thanks for sharing the result. Here is feedback from the engineer expert:
Actually, RSA key generation was not considered as the processing function and it is not considered as the major functions that need to be optimized.
The main computation functions for the RSA is the RSA_Decrypt and RSA_Encrypt. Did you test them as well?
thanks,
Chao
Chao,
My focus was the RSA key generation only, and I did not look into RSA_Encrypt / RSA_Decrypt functions. I acknowledge the fact that ippsRSA_GenerateKeys is not a processing function, however I had the impression that Intel IPP aims at optimizing all functions that are part of IPP.
Thanks for the explanation,
Alen
Hi,
I'm exploring ways to integrate Intel Ipp cryptography optimizations in the Android BoringSSL Framework. (BoringSSL is a fork of OpenSSL).
I was looking for reference/results and found these two articles in this post. But both of these redirect to ipp crypto reference. (https://software.intel.com/en-us/ipp-crypto-reference-2019). If anyone has the below articles, can you please send it to me or post it here ?
http://software.intel.com/en-us/articles/boosting-openssl-aes-encryption.
http://software.intel.com/en-us/articles/performance-of-crypto-sample-fo.
Thanks in Advance.
For more complete information about compiler optimizations, see our Optimization Notice.