RSA_SET_METHOD(3ssl) OpenSSL RSA_SET_METHOD(3ssl) RSA_set_default_method, RSA_get_default_method, RSA_set_method, RSA_get_method, RSA_PKCS1_OpenSSL, RSA_flags, RSA_new_method - RSA #include OpenSSL 3.0 OPENSSL_API_COMPAT openssl_user_macros(7): void RSA_set_default_method(const RSA_METHOD *meth); const RSA_METHOD *RSA_get_default_method(void); int RSA_set_method(RSA *rsa, const RSA_METHOD *meth); const RSA_METHOD *RSA_get_method(const RSA *rsa); const RSA_METHOD *RSA_PKCS1_OpenSSL(void); int RSA_flags(const RSA *rsa); RSA *RSA_new_method(ENGINE *engine); . OSSL_PROVIDER . RSA_METHOD OpenSSL RSA. . : RSA ENGINE. RSA_METHOD OpenSSL RSA_PKCS1_OpenSSL(). RSA_set_default_method() meth RSA . : ENGINE RSA . OpenSSL . RSA_get_default_method() RSA_METHOD . ENGINE . RSA_set_method() meth rsa. RSA_METHOD RSA ENGINE ENGINE . RSA RSA_METHOD ( ENGINE ) RSA_METHOD . RSA_get_method() RSA_METHOD rsa. ENGINE RSA RSA_set_method(). RSA_flags() RSA_METHOD rsa. . RSA_new_method() RSA engine RSA. engine ENGINE RSA ENGINE RSA_METHOD RSA_set_default_method(). RSA_flags() rsa. RSA_new_method() RSA method RSA. method NULL . RSA_METHOD typedef struct rsa_meth_st { /* name of the implementation */ const char *name; /* encrypt */ int (*rsa_pub_enc)(int flen, unsigned char *from, unsigned char *to, RSA *rsa, int padding); /* verify arbitrary data */ int (*rsa_pub_dec)(int flen, unsigned char *from, unsigned char *to, RSA *rsa, int padding); /* sign arbitrary data */ int (*rsa_priv_enc)(int flen, unsigned char *from, unsigned char *to, RSA *rsa, int padding); /* decrypt */ int (*rsa_priv_dec)(int flen, unsigned char *from, unsigned char *to, RSA *rsa, int padding); /* compute r0 = r0 ^ I mod rsa->n (May be NULL for some implementations) */ int (*rsa_mod_exp)(BIGNUM *r0, BIGNUM *I, RSA *rsa); /* compute r = a ^ p mod m (May be NULL for some implementations) */ int (*bn_mod_exp)(BIGNUM *r, BIGNUM *a, const BIGNUM *p, const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *m_ctx); /* called at RSA_new */ int (*init)(RSA *rsa); /* called at RSA_free */ int (*finish)(RSA *rsa); /* * RSA_FLAG_EXT_PKEY - rsa_mod_exp is called for private key * operations, even if p,q,dmp1,dmq1,iqmp * are NULL * RSA_METHOD_FLAG_NO_CHECK - don't check pub/private match */ int flags; char *app_data; /* ?? */ int (*rsa_sign)(int type, const unsigned char *m, unsigned int m_length, unsigned char *sigret, unsigned int *siglen, const RSA *rsa); int (*rsa_verify)(int dtype, const unsigned char *m, unsigned int m_length, const unsigned char *sigbuf, unsigned int siglen, const RSA *rsa); /* keygen. If NULL built-in RSA key generation will be used */ int (*rsa_keygen)(RSA *rsa, int bits, BIGNUM *e, BN_GENCB *cb); } RSA_METHOD; RSA_PKCS1_OpenSSL() RSA_PKCS1_null_method() RSA_get_default_method() RSA_get_method() RSA_METHODs . RSA_set_default_method() . RSA_set_method() 1 . . RSA_new_method() NULL ERR_get_error(3) . . RSA_flags() . RSA flags RSA flags RSA_METHOD RSA ( ). flags RSA RSA RSA_flags() - RSA_flags() RSA_default_flags() ( ). RSA_new(3) OpenSSL 3.0. RSA_null_method() NULL OpenSSL 1.1.1. 2000-2026 OpenSSL. . Apache 2.0 ( ""). . LICENSE . 3 . . : . 3.6.2 7 2026 RSA_SET_METHOD(3ssl)