summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/rsa
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/rsa')
-rw-r--r--src/lib/libcrypto/rsa/rsa_ameth.c60
-rw-r--r--src/lib/libcrypto/rsa/rsa_eay.c27
-rw-r--r--src/lib/libcrypto/rsa/rsa_null.c25
-rw-r--r--src/lib/libcrypto/rsa/rsa_pmeth.c45
4 files changed, 64 insertions, 93 deletions
diff --git a/src/lib/libcrypto/rsa/rsa_ameth.c b/src/lib/libcrypto/rsa/rsa_ameth.c
index fdd11835ad..f0a346a70e 100644
--- a/src/lib/libcrypto/rsa/rsa_ameth.c
+++ b/src/lib/libcrypto/rsa/rsa_ameth.c
@@ -657,42 +657,40 @@ static int rsa_item_sign(EVP_MD_CTX *ctx, const ASN1_ITEM *it, void *asn,
657 return 2; 657 return 2;
658 } 658 }
659 659
660const EVP_PKEY_ASN1_METHOD rsa_asn1_meths[] = 660const EVP_PKEY_ASN1_METHOD rsa_asn1_meths[] = {
661 { 661 {
662 { 662 .pkey_id = EVP_PKEY_RSA,
663 EVP_PKEY_RSA, 663 .pkey_base_id = EVP_PKEY_RSA,
664 EVP_PKEY_RSA, 664 .pkey_flags = ASN1_PKEY_SIGPARAM_NULL,
665 ASN1_PKEY_SIGPARAM_NULL,
666 665
667 "RSA", 666 .pem_str = "RSA",
668 "OpenSSL RSA method", 667 .info = "OpenSSL RSA method",
669 668
670 rsa_pub_decode, 669 .pub_decode = rsa_pub_decode,
671 rsa_pub_encode, 670 .pub_encode = rsa_pub_encode,
672 rsa_pub_cmp, 671 .pub_cmp = rsa_pub_cmp,
673 rsa_pub_print, 672 .pub_print = rsa_pub_print,
674 673
675 rsa_priv_decode, 674 .priv_decode = rsa_priv_decode,
676 rsa_priv_encode, 675 .priv_encode = rsa_priv_encode,
677 rsa_priv_print, 676 .priv_print = rsa_priv_print,
678 677
679 int_rsa_size, 678 .pkey_size = int_rsa_size,
680 rsa_bits, 679 .pkey_bits = rsa_bits,
681 680
682 0,0,0,0,0,0, 681 .sig_print = rsa_sig_print,
683 682
684 rsa_sig_print, 683 .pkey_free = int_rsa_free,
685 int_rsa_free, 684 .pkey_ctrl = rsa_pkey_ctrl,
686 rsa_pkey_ctrl, 685 .old_priv_decode = old_rsa_priv_decode,
687 old_rsa_priv_decode, 686 .old_priv_encode = old_rsa_priv_encode,
688 old_rsa_priv_encode, 687 .item_verify = rsa_item_verify,
689 rsa_item_verify, 688 .item_sign = rsa_item_sign
690 rsa_item_sign 689 },
691 },
692 690
693 { 691 {
694 EVP_PKEY_RSA2, 692 .pkey_id = EVP_PKEY_RSA2,
695 EVP_PKEY_RSA, 693 .pkey_base_id = EVP_PKEY_RSA,
696 ASN1_PKEY_ALIAS 694 .pkey_flags = ASN1_PKEY_ALIAS
697 } 695 }
698 }; 696};
diff --git a/src/lib/libcrypto/rsa/rsa_eay.c b/src/lib/libcrypto/rsa/rsa_eay.c
index dcf0c16a8f..845e28877e 100644
--- a/src/lib/libcrypto/rsa/rsa_eay.c
+++ b/src/lib/libcrypto/rsa/rsa_eay.c
@@ -128,22 +128,17 @@ static int RSA_eay_private_decrypt(int flen, const unsigned char *from,
128static int RSA_eay_mod_exp(BIGNUM *r0, const BIGNUM *i, RSA *rsa, BN_CTX *ctx); 128static int RSA_eay_mod_exp(BIGNUM *r0, const BIGNUM *i, RSA *rsa, BN_CTX *ctx);
129static int RSA_eay_init(RSA *rsa); 129static int RSA_eay_init(RSA *rsa);
130static int RSA_eay_finish(RSA *rsa); 130static int RSA_eay_finish(RSA *rsa);
131static RSA_METHOD rsa_pkcs1_eay_meth={ 131static RSA_METHOD rsa_pkcs1_eay_meth = {
132 "Eric Young's PKCS#1 RSA", 132 .name = "Eric Young's PKCS#1 RSA",
133 RSA_eay_public_encrypt, 133 .rsa_pub_enc = RSA_eay_public_encrypt,
134 RSA_eay_public_decrypt, /* signature verification */ 134 .rsa_pub_dec = RSA_eay_public_decrypt, /* signature verification */
135 RSA_eay_private_encrypt, /* signing */ 135 .rsa_priv_enc = RSA_eay_private_encrypt, /* signing */
136 RSA_eay_private_decrypt, 136 .rsa_priv_dec = RSA_eay_private_decrypt,
137 RSA_eay_mod_exp, 137 .rsa_mod_exp = RSA_eay_mod_exp,
138 BN_mod_exp_mont, /* XXX probably we should not use Montgomery if e == 3 */ 138 .bn_mod_exp = BN_mod_exp_mont, /* XXX probably we should not use Montgomery if e == 3 */
139 RSA_eay_init, 139 .init = RSA_eay_init,
140 RSA_eay_finish, 140 .finish = RSA_eay_finish,
141 0, /* flags */ 141};
142 NULL,
143 0, /* rsa_sign */
144 0, /* rsa_verify */
145 NULL /* rsa_keygen */
146 };
147 142
148const RSA_METHOD *RSA_PKCS1_SSLeay(void) 143const RSA_METHOD *RSA_PKCS1_SSLeay(void)
149 { 144 {
diff --git a/src/lib/libcrypto/rsa/rsa_null.c b/src/lib/libcrypto/rsa/rsa_null.c
index 2f2202f142..5b9317cb6c 100644
--- a/src/lib/libcrypto/rsa/rsa_null.c
+++ b/src/lib/libcrypto/rsa/rsa_null.c
@@ -82,22 +82,15 @@ static int RSA_null_mod_exp(const BIGNUM *r0, const BIGNUM *i, RSA *rsa);
82#endif 82#endif
83static int RSA_null_init(RSA *rsa); 83static int RSA_null_init(RSA *rsa);
84static int RSA_null_finish(RSA *rsa); 84static int RSA_null_finish(RSA *rsa);
85static RSA_METHOD rsa_null_meth={ 85static RSA_METHOD rsa_null_meth = {
86 "Null RSA", 86 .name = "Null RSA",
87 RSA_null_public_encrypt, 87 .rsa_pub_enc = RSA_null_public_encrypt,
88 RSA_null_public_decrypt, 88 .rsa_pub_dec = RSA_null_public_decrypt,
89 RSA_null_private_encrypt, 89 .rsa_priv_enc = RSA_null_private_encrypt,
90 RSA_null_private_decrypt, 90 .rsa_priv_dec = RSA_null_private_decrypt,
91 NULL, 91 .init = RSA_null_init,
92 NULL, 92 .finish = RSA_null_finish,
93 RSA_null_init, 93};
94 RSA_null_finish,
95 0,
96 NULL,
97 NULL,
98 NULL,
99 NULL
100 };
101 94
102const RSA_METHOD *RSA_null_method(void) 95const RSA_METHOD *RSA_null_method(void)
103 { 96 {
diff --git a/src/lib/libcrypto/rsa/rsa_pmeth.c b/src/lib/libcrypto/rsa/rsa_pmeth.c
index adec632b3b..09ef090172 100644
--- a/src/lib/libcrypto/rsa/rsa_pmeth.c
+++ b/src/lib/libcrypto/rsa/rsa_pmeth.c
@@ -609,41 +609,26 @@ static int pkey_rsa_keygen(EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)
609 return ret; 609 return ret;
610 } 610 }
611 611
612const EVP_PKEY_METHOD rsa_pkey_meth = 612const EVP_PKEY_METHOD rsa_pkey_meth = {
613 { 613 .pkey_id = EVP_PKEY_RSA,
614 EVP_PKEY_RSA, 614 .flags = EVP_PKEY_FLAG_AUTOARGLEN,
615 EVP_PKEY_FLAG_AUTOARGLEN,
616 pkey_rsa_init,
617 pkey_rsa_copy,
618 pkey_rsa_cleanup,
619
620 0,0,
621
622 0,
623 pkey_rsa_keygen,
624
625 0,
626 pkey_rsa_sign,
627
628 0,
629 pkey_rsa_verify,
630
631 0,
632 pkey_rsa_verifyrecover,
633 615
616 .init = pkey_rsa_init,
617 .copy = pkey_rsa_copy,
618 .cleanup = pkey_rsa_cleanup,
634 619
635 0,0,0,0, 620 .keygen = pkey_rsa_keygen,
636 621
637 0, 622 .sign = pkey_rsa_sign,
638 pkey_rsa_encrypt,
639 623
640 0, 624 .verify = pkey_rsa_verify,
641 pkey_rsa_decrypt,
642 625
643 0,0, 626 .verify_recover = pkey_rsa_verifyrecover,
644 627
645 pkey_rsa_ctrl, 628 .encrypt = pkey_rsa_encrypt,
646 pkey_rsa_ctrl_str
647 629
630 .decrypt = pkey_rsa_decrypt,
648 631
649 }; 632 .ctrl = pkey_rsa_ctrl,
633 .ctrl_str = pkey_rsa_ctrl_str
634};