summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/rsa/rsa_crpt.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge remainder of rsa_crpt.c into rsa_eay.ctb2023-08-091-127/+0
| | | | | Most of these are one line wrappers around methods implemented in rsa_eay.c by default.
* Move RSA blinding API from rsa_crpt.c to rsa_blinding.ctb2023-08-091-101/+1
|
* Move RSA_blinding_{on,off}() to the bottom of the filetb2023-08-091-29/+29
|
* Merge BN_BLINDING_create_param() into BN_BLINDING_new()tb2023-08-091-2/+2
|
* Drop the unused BN_BLINDING argument of BN_BLINDING_create_param()tb2023-08-081-4/+5
|
* Simplify RSA_setup_blinding()tb2023-08-081-21/+16
| | | | | | | Make this look a bit more like other code we cleaned up avoiding nesting and unnecessary else branches. ok jsing
* Make BN_BLINDING internaltb2023-07-281-2/+1
| | | | | | | | | | RSA is pretty bad. In my most optimistic moments I dream of a world that stopped using it. That won't happen during my lifetime, unfortunately. Blinding is one way of making it a little less leaky. Unfortunately this side-channel leak mitigation leaked out of the library for no good reason. Let's at least fix that aspect of it. ok jsing
* Hide symbols in rsabeck2023-07-081-1/+11
| | | | ok tb@
* Make internal header file names consistenttb2022-11-261-3/+3
| | | | | | | | | | | | | | | | Libcrypto currently has a mess of *_lcl.h, *_locl.h, and *_local.h names used for internal headers. Move all these headers we inherited from OpenSSL to *_local.h, reserving the name *_internal.h for our own code. Similarly, move dtls_locl.h and ssl_locl.h to dtls_local and ssl_local.h. constant_time_locl.h is moved to constant_time.h since it's special. Adjust all .c files in libcrypto, libssl and regress. The diff is mechanical with the exception of tls13_quic.c, where #include <ssl_locl.h> was fixed manually. discussed with jsing, no objection bcook
* Prepare to make RSA and RSA_METHOD opaque by including rsa_locl.htb2022-01-071-1/+2
| | | | | | where it will be needed in the upcoming bump. discussed with jsing
* Provide RSA_bits()tb2018-02-181-1/+7
| | | | ok jsing
* Send the function codes from the error functions to the bit bucket,beck2017-01-291-4/+3
| | | | | | as was done earlier in libssl. Thanks inoguchi@ for noticing libssl had more reacharounds into this. ok jsing@ inoguchi@
* Add ct and nonct versions of BN_mod_inverse for internal usebeck2017-01-211-2/+4
| | | | ok jsing@
* call BN_init on temporaries to avoid use-before-set warningsbcook2016-07-071-1/+2
| | | | ok beck@
* Remove flags for disabling constant-time operations.bcook2016-06-301-10/+6
| | | | | | | | This removes support for DSA_FLAG_NO_EXP_CONSTTIME, DH_FLAG_NO_EXP_CONSTTIME, and RSA_FLAG_NO_CONSTTIME flags, making all of these operations unconditionally constant-time. Based on the original patch by César Pereid. ok beck@
* Enable building with -DOPENSSL_NO_DEPRECATED.doug2015-02-111-1/+2
| | | | | | | | | | | | | | | If you didn't enable deprecated code, there were missing err.h and bn.h includes. This commit allows building with or without deprecated code. This was not derived from an OpenSSL commit. However, they recently enabled OPENSSL_NO_DEPRECATED in git and fixed these header problems in a different way. Verified with clang that this only changes line numbers in the generated asm. ok miod@
* BN_CTX_get() can fail - consistently check its return value.jsing2015-02-091-5/+6
| | | | | | | | | | | | | | | There are currently cases where the return from each call is checked, the return from only the last call is checked and cases where it is not checked at all (including code in bn, ec and engine). Checking the last return value is valid as once the function fails it will continue to return NULL. However, in order to be consistent check each call with the same idiom. This makes it easy to verify. Note there are still a handful of cases that do not follow the idiom - these will be handled separately. ok beck@ doug@
* None of these need to include <openssl/rand.h>jsing2014-10-181-2/+1
|
* Only import cryptlib.h in the four source files that actually need it.jsing2014-07-111-4/+4
| | | | | | | | Remove the openssl public includes from cryptlib.h and add a small number of includes into the source files that actually need them. While here, also sort/group/tidy the includes. ok beck@ miod@
* Explicitly include <openssl/opensslconf.h> in every file that referencesjsing2014-07-101-1/+4
| | | | | | | | | an OPENSSL_NO_* define. This avoids relying on something else pulling it in for us, plus it fixes several cases where the #ifndef OPENSSL_NO_XYZ is never going to do anything, since OPENSSL_NO_XYZ will never defined, due to the fact that opensslconf.h has not been included. This also includes some miscellaneous sorting/tidying of headers.
* RSA_setup_blinding() gets a BN with BN_CTX_get(), returns `out of memory'miod2014-07-101-6/+1
| | | | | | | | if it fails, then never uses it anymore, and may invoke a function which needs more than one BN from the BN_CTX anyway, so this is pointless - remove the BN_CTX_get() call and the test. ok jsing
* Stop playing with the RSA_FLAG_BLINDING flag. It does nothing.jsing2014-07-101-3/+1
| | | | ok miod@
* BN_free, BN_clear_free, BN_CTX_free, BN_BLINDING_free and BN_MONT_CTX_freejsing2014-07-101-5/+3
| | | | | | all have implicit NULL checks, so we do not need them here. ok miod@
* More KNF.jsing2014-07-091-9/+9
|
* KNFmiod2014-07-091-73/+78
|
* tags as requested by miod and teduderaadt2014-06-121-1/+1
|
* Do not feed RSA private key information to the random subsystem asderaadt2014-04-171-8/+0
| | | | | | | | entropy. It might be fed to a pluggable random subsystem.... What were they thinking?! ok guenther
* remove FIPS mode support. people who require FIPS can buy something thattedu2014-04-151-32/+0
| | | | | meets their needs, but dumping it in here only penalizes the rest of us. ok beck deraadt
* import OpenSSL-1.0.1cdjm2012-10-131-0/+257