Support multi-prime RSA (RFC 8017)
authorPaul Yang <yang.yang@baishancloud.com>
Tue, 1 Aug 2017 18:19:43 +0000 (02:19 +0800)
committerPaul Yang <yang.yang@baishancloud.com>
Tue, 21 Nov 2017 06:38:42 +0000 (14:38 +0800)
commit665d899fa6d3571da016925067ebcf1789d7d19c
tree1674f352dc0feee9e68e6221d21c5d79bd1935ab
parentb0004708730f300a2e5c6a11c887caab50b6c42a
Support multi-prime RSA (RFC 8017)

* Introduce RSA_generate_multi_prime_key to generate multi-prime
  RSA private key. As well as the following functions:
    RSA_get_multi_prime_extra_count
    RSA_get0_multi_prime_factors
    RSA_get0_multi_prime_crt_params
    RSA_set0_multi_prime_params
    RSA_get_version
* Support EVP operations for multi-prime RSA
* Support ASN.1 operations for multi-prime RSA
* Support multi-prime check in RSA_check_key_ex
* Support multi-prime RSA in apps/genrsa and apps/speed
* Support multi-prime RSA manipulation functions
* Test cases and documentation are added
* CHANGES is updated

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
(Merged from https://github.com/openssl/openssl/pull/4241)
29 files changed:
CHANGES
apps/genrsa.c
apps/speed.c
crypto/err/openssl.txt
crypto/rsa/build.info
crypto/rsa/rsa_ameth.c
crypto/rsa/rsa_asn1.c
crypto/rsa/rsa_chk.c
crypto/rsa/rsa_err.c
crypto/rsa/rsa_gen.c
crypto/rsa/rsa_lib.c
crypto/rsa/rsa_locl.h
crypto/rsa/rsa_meth.c
crypto/rsa/rsa_mp.c [new file with mode: 0644]
crypto/rsa/rsa_ossl.c
crypto/rsa/rsa_pmeth.c
doc/man1/genpkey.pod
doc/man1/genrsa.pod
doc/man1/speed.pod
doc/man3/RSA_generate_key.pod
doc/man3/RSA_get0_key.pod
doc/man3/RSA_meth_new.pod
include/openssl/rsa.h
include/openssl/rsaerr.h
test/build.info
test/recipes/15-test_mp_rsa.t [new file with mode: 0644]
test/recipes/15-test_mp_rsa_data/plain_text [new file with mode: 0644]
test/rsa_mp_test.c [new file with mode: 0644]
util/libcrypto.num