Lines Matching defs:rsa
83 #include <openssl/rsa.h>
117 unsigned char *to, RSA *rsa, int padding);
119 unsigned char *to, RSA *rsa, int padding);
121 unsigned char *to, RSA *rsa, int padding);
123 unsigned char *to, RSA *rsa, int padding);
124 static int pk11_RSA_init(RSA *rsa);
125 static int pk11_RSA_finish(RSA *rsa);
127 unsigned char *sigret, unsigned int *siglen, const RSA *rsa);
130 const RSA *rsa);
137 unsigned char *to, RSA *rsa);
139 unsigned char *to, RSA *rsa);
141 unsigned char *to, RSA *rsa);
143 unsigned char *to, RSA *rsa);
145 static CK_OBJECT_HANDLE pk11_get_public_rsa_key(RSA* rsa, PK11_SESSION *sp);
146 static CK_OBJECT_HANDLE pk11_get_private_rsa_key(RSA* rsa, PK11_SESSION *sp);
148 static int pk11_check_new_rsa_key_pub(PK11_SESSION *sp, const RSA *rsa);
149 static int pk11_check_new_rsa_key_priv(PK11_SESSION *sp, const RSA *rsa);
465 unsigned char *to, RSA *rsa, int padding)
470 num = BN_num_bytes(rsa->n);
500 r = pk11_RSA_public_encrypt_low(num, buf, to, rsa);
516 unsigned char *to, RSA *rsa, int padding)
521 num = BN_num_bytes(rsa->n);
544 r = pk11_RSA_private_encrypt_low(num, buf, to, rsa);
556 unsigned char *to, RSA *rsa, int padding)
565 num = BN_num_bytes(rsa->n);
587 if (BN_ucmp(&f, rsa->n) >= 0) {
594 r = pk11_RSA_private_decrypt_low(flen, from, buf, rsa);
644 unsigned char *to, RSA *rsa, int padding)
652 num = BN_num_bytes(rsa->n);
672 if (BN_ucmp(&f, rsa->n) >= 0) {
678 r = pk11_RSA_public_decrypt_low(flen, from, buf, rsa);
724 const unsigned char *from, unsigned char *to, RSA *rsa)
738 (void) pk11_check_new_rsa_key_pub(sp, rsa);
743 pk11_get_public_rsa_key(rsa, sp);
779 const unsigned char *from, unsigned char *to, RSA *rsa)
793 (void) pk11_check_new_rsa_key_priv(sp, rsa);
798 pk11_get_private_rsa_key(rsa, sp);
836 const unsigned char *from, unsigned char *to, RSA *rsa)
850 (void) pk11_check_new_rsa_key_priv(sp, rsa);
855 pk11_get_private_rsa_key(rsa, sp);
893 const unsigned char *from, unsigned char *to, RSA *rsa)
907 (void) pk11_check_new_rsa_key_pub(sp, rsa);
912 pk11_get_public_rsa_key(rsa, sp);
942 pk11_RSA_init(RSA *rsa)
946 * rsa_verify functions. See rsa.h for details.
948 rsa->flags |= RSA_FLAG_SIGN_VER;
954 pk11_RSA_finish(RSA *rsa)
961 if (rsa->_method_mod_n != NULL) {
962 BN_MONT_CTX_free(rsa->_method_mod_n);
964 if (rsa->_method_mod_p != NULL) {
965 BN_MONT_CTX_free(rsa->_method_mod_p);
967 if (rsa->_method_mod_q != NULL) {
968 BN_MONT_CTX_free(rsa->_method_mod_q);
976 * rsa/rsa_sign.c. We replaced the decrypt function call by C_Sign of PKCS#11.
977 * See more details in rsa/rsa_sign.c
981 unsigned char *sigret, unsigned int *siglen, const RSA *rsa)
1031 j = RSA_size(rsa);
1051 (void) pk11_check_new_rsa_key_priv(sp, rsa);
1056 pk11_get_private_rsa_key((RSA *)rsa, sp);
1091 const RSA *rsa)
1138 j = RSA_size(rsa);
1158 (void) pk11_check_new_rsa_key_pub(sp, rsa);
1163 pk11_get_public_rsa_key((RSA *)rsa, sp);
1204 RSA *rsa = NULL;
1230 rsa = EVP_PKEY_get1_RSA(pkey);
1231 if (rsa == NULL) {
1240 (void) pk11_check_new_rsa_key_priv(sp, rsa);
1242 pk11_get_private_rsa_key(rsa, sp);
1244 (void) pk11_check_new_rsa_key_pub(sp, rsa);
1246 pk11_get_public_rsa_key(rsa, sp);
1255 if (rsa != NULL) {
1256 RSA_free(rsa);
1275 RSA *rsa = NULL;
1342 rsa = sp->opdata_rsa_priv = RSA_new_method(e);
1346 rsa = sp->opdata_rsa_pub = RSA_new_method(e);
1348 if (rsa == NULL) {
1362 sp->opdata_rsa_priv = rsa;
1364 sp->opdata_rsa_pub = rsa;
1368 attr_to_BN(&get_templ[0], attr_data[0], &rsa->n);
1369 attr_to_BN(&get_templ[1], attr_data[1], &rsa->e);
1384 if (EVP_PKEY_set1_RSA(pkey, rsa) == 0) {
1410 pk11_get_public_rsa_key(rsa, sp);
1420 if (rsa != NULL) {
1421 RSA_free(rsa);
1494 * Get a public key object in a session from a given rsa structure. If the
1499 * We use the session field from sp, and we cache rsa->(n|e) in
1503 pk11_get_public_rsa_key(RSA* rsa, PK11_SESSION *sp)
1528 a_key_template[5].ulValueLen = BN_num_bytes(rsa->n);
1536 BN_bn2bin(rsa->n, a_key_template[5].pValue);
1538 a_key_template[6].ulValueLen = BN_num_bytes(rsa->e);
1546 BN_bn2bin(rsa->e, a_key_template[6].pValue);
1583 if ((sp->opdata_rsa_n_num = BN_dup(rsa->n)) == NULL) {
1589 if ((sp->opdata_rsa_e_num = BN_dup(rsa->e)) == NULL) {
1599 sp->opdata_rsa_pub = rsa;
1633 pk11_get_private_rsa_key(RSA* rsa, PK11_SESSION *sp)
1668 if (init_template_value(rsa->n, &a_key_template[6].pValue,
1670 init_template_value(rsa->e, &a_key_template[7].pValue,
1672 init_template_value(rsa->d, &a_key_template[8].pValue,
1674 init_template_value(rsa->p, &a_key_template[9].pValue,
1676 init_template_value(rsa->q, &a_key_template[10].pValue,
1678 init_template_value(rsa->dmp1, &a_key_template[11].pValue,
1680 init_template_value(rsa->dmq1, &a_key_template[12].pValue,
1682 init_template_value(rsa->iqmp, &a_key_template[13].pValue,
1696 if (rsa->d == NULL) {
1735 if (rsa->d == NULL) {
1759 if (rsa->d != NULL) {
1760 if ((sp->opdata_rsa_d_num = BN_dup(rsa->d)) == NULL) {
1774 if ((sp->opdata_rsa_n_num = BN_dup(rsa->n)) == NULL) {
1780 if ((sp->opdata_rsa_e_num = BN_dup(rsa->e)) == NULL) {
1790 sp->opdata_rsa_priv = rsa;
1829 pk11_check_new_rsa_key_pub(PK11_SESSION *sp, const RSA *rsa)
1843 if (sp->opdata_rsa_pub == rsa &&
1844 BN_cmp(sp->opdata_rsa_n_num, rsa->n) == 0 &&
1845 BN_cmp(sp->opdata_rsa_e_num, rsa->e) == 0) {
1874 pk11_check_new_rsa_key_priv(PK11_SESSION *sp, const RSA *rsa)
1885 if (sp->opdata_rsa_priv == rsa &&
1886 BN_cmp(sp->opdata_rsa_n_num, rsa->n) == 0 &&
1887 BN_cmp(sp->opdata_rsa_e_num, rsa->e) == 0) {