New utility 'pkeyutl' a general purpose version of 'rsautl'.
This commit is contained in:
@@ -68,7 +68,7 @@ extern const EVP_PKEY_ASN1_METHOD dh_asn1_meth;
|
||||
extern const EVP_PKEY_ASN1_METHOD eckey_asn1_meth;
|
||||
|
||||
/* Keep this sorted in type order !! */
|
||||
const EVP_PKEY_ASN1_METHOD *standard_methods[] =
|
||||
static const EVP_PKEY_ASN1_METHOD *standard_methods[] =
|
||||
{
|
||||
#ifndef OPENSSL_NO_RSA
|
||||
&rsa_asn1_meths[0],
|
||||
|
||||
@@ -903,7 +903,16 @@ void EVP_PKEY_asn1_set_ctrl(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
long arg1, void *arg2));
|
||||
|
||||
|
||||
|
||||
#define EVP_PKEY_OP_UNDEFINED 0
|
||||
#define EVP_PKEY_OP_PARAMGEN 1
|
||||
#define EVP_PKEY_OP_KEYGEN 2
|
||||
#define EVP_PKEY_OP_SIGN 3
|
||||
#define EVP_PKEY_OP_VERIFY 4
|
||||
#define EVP_PKEY_OP_VERIFYRECOVER 5
|
||||
#define EVP_PKEY_OP_SIGNCTX 6
|
||||
#define EVP_PKEY_OP_VERIFYCTX 7
|
||||
#define EVP_PKEY_OP_ENCRYPT 8
|
||||
#define EVP_PKEY_OP_DECRYPT 9
|
||||
|
||||
const EVP_PKEY_METHOD *EVP_PKEY_meth_find(int type, ENGINE *e);
|
||||
EVP_PKEY_CTX *EVP_PKEY_CTX_new(EVP_PKEY *pkey);
|
||||
@@ -912,6 +921,27 @@ int EVP_PKEY_CTX_ctrl(EVP_PKEY_CTX *ctx, int keytype, int optype,
|
||||
int cmd, int p1, void *p2);
|
||||
|
||||
|
||||
int EVP_PKEY_sign_init(EVP_PKEY_CTX *ctx);
|
||||
int EVP_PKEY_sign(EVP_PKEY_CTX *ctx,
|
||||
unsigned char *sig, int *siglen,
|
||||
unsigned char *tbs, int tbslen);
|
||||
int EVP_PKEY_verify_init(EVP_PKEY_CTX *ctx);
|
||||
int EVP_PKEY_verify(EVP_PKEY_CTX *ctx,
|
||||
unsigned char *sig, int *siglen,
|
||||
unsigned char *tbs, int tbslen);
|
||||
int EVP_PKEY_verify_recover_init(EVP_PKEY_CTX *ctx);
|
||||
int EVP_PKEY_verify_recover(EVP_PKEY_CTX *ctx,
|
||||
unsigned char *rout, int *routlen,
|
||||
unsigned char *sig, int siglen);
|
||||
int EVP_PKEY_encrypt_init(EVP_PKEY_CTX *ctx);
|
||||
int EVP_PKEY_encrypt(EVP_PKEY_CTX *ctx,
|
||||
unsigned char *out, int *outlen,
|
||||
unsigned char *in, int inlen);
|
||||
int EVP_PKEY_decrypt_init(EVP_PKEY_CTX *ctx);
|
||||
int EVP_PKEY_decrypt(EVP_PKEY_CTX *ctx,
|
||||
unsigned char *out, int *outlen,
|
||||
unsigned char *in, int inlen);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
|
||||
@@ -91,22 +91,22 @@ static ERR_STRING_DATA EVP_str_functs[]=
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY2PKCS8_BROKEN), "EVP_PKEY2PKCS8_broken"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_COPY_PARAMETERS), "EVP_PKEY_copy_parameters"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_CTX_CTRL), "EVP_PKEY_CTX_ctrl"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_DECRYPT), "EVP_PKEY_DECRYPT"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_DECRYPT_INIT), "EVP_PKEY_DECRYPT_INIT"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_ENCRYPT), "EVP_PKEY_ENCRYPT"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_ENCRYPT_INIT), "EVP_PKEY_ENCRYPT_INIT"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_DECRYPT), "EVP_PKEY_decrypt"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_DECRYPT_INIT), "EVP_PKEY_decrypt_init"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_ENCRYPT), "EVP_PKEY_encrypt"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_ENCRYPT_INIT), "EVP_PKEY_encrypt_init"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_GET1_DH), "EVP_PKEY_get1_DH"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_GET1_DSA), "EVP_PKEY_get1_DSA"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_GET1_ECDSA), "EVP_PKEY_GET1_ECDSA"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_GET1_EC_KEY), "EVP_PKEY_get1_EC_KEY"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_GET1_RSA), "EVP_PKEY_get1_RSA"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_NEW), "EVP_PKEY_new"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_SIGN), "EVP_PKEY_SIGN"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_SIGN_INIT), "EVP_PKEY_SIGN_INIT"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_VERIFY), "EVP_PKEY_VERIFY"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_VERIFY_INIT), "EVP_PKEY_VERIFY_INIT"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_VERIFY_RECOVER), "EVP_PKEY_VERIFY_RECOVER"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_VERIFY_RECOVER_INIT), "EVP_PKEY_VERIFY_RECOVER_INIT"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_SIGN), "EVP_PKEY_sign"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_SIGN_INIT), "EVP_PKEY_sign_init"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_VERIFY), "EVP_PKEY_verify"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_VERIFY_INIT), "EVP_PKEY_verify_init"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_VERIFY_RECOVER), "EVP_PKEY_verify_recover"},
|
||||
{ERR_FUNC(EVP_F_EVP_PKEY_VERIFY_RECOVER_INIT), "EVP_PKEY_verify_recover_init"},
|
||||
{ERR_FUNC(EVP_F_EVP_RIJNDAEL), "EVP_RIJNDAEL"},
|
||||
{ERR_FUNC(EVP_F_EVP_SIGNFINAL), "EVP_SignFinal"},
|
||||
{ERR_FUNC(EVP_F_EVP_VERIFYFINAL), "EVP_VerifyFinal"},
|
||||
|
||||
@@ -248,17 +248,6 @@ struct evp_pkey_ctx_st
|
||||
void *data;
|
||||
} /* EVP_PKEY_CTX */;
|
||||
|
||||
#define EVP_PKEY_OP_UNDEFINED 0
|
||||
#define EVP_PKEY_OP_PARAMGEN 1
|
||||
#define EVP_PKEY_OP_KEYGEN 2
|
||||
#define EVP_PKEY_OP_SIGN 3
|
||||
#define EVP_PKEY_OP_VERIFY 4
|
||||
#define EVP_PKEY_OP_VERIFYRECOVER 5
|
||||
#define EVP_PKEY_OP_SIGNCTX 6
|
||||
#define EVP_PKEY_OP_VERIFYCTX 7
|
||||
#define EVP_PKEY_OP_ENCRYPT 8
|
||||
#define EVP_PKEY_OP_DECRYPT 9
|
||||
|
||||
struct evp_pkey_method_st
|
||||
{
|
||||
int pkey_id;
|
||||
|
||||
@@ -68,7 +68,7 @@ STACK *app_pkey_methods = NULL;
|
||||
|
||||
extern EVP_PKEY_METHOD rsa_pkey_meth;
|
||||
|
||||
const EVP_PKEY_METHOD *standard_methods[] =
|
||||
static const EVP_PKEY_METHOD *standard_methods[] =
|
||||
{
|
||||
&rsa_pkey_meth
|
||||
};
|
||||
|
||||
@@ -98,7 +98,7 @@ static ERR_STRING_DATA PEM_str_functs[]=
|
||||
{ERR_FUNC(PEM_F_PEM_PK8PKEY), "PEM_PK8PKEY"},
|
||||
{ERR_FUNC(PEM_F_PEM_READ), "PEM_read"},
|
||||
{ERR_FUNC(PEM_F_PEM_READ_BIO), "PEM_read_bio"},
|
||||
{ERR_FUNC(PEM_F_PEM_READ_BIO_PARAMETERS), "PEM_READ_BIO_PARAMETERS"},
|
||||
{ERR_FUNC(PEM_F_PEM_READ_BIO_PARAMETERS), "PEM_read_bio_Parameters"},
|
||||
{ERR_FUNC(PEM_F_PEM_READ_BIO_PRIVATEKEY), "PEM_READ_BIO_PRIVATEKEY"},
|
||||
{ERR_FUNC(PEM_F_PEM_READ_PRIVATEKEY), "PEM_READ_PRIVATEKEY"},
|
||||
{ERR_FUNC(PEM_F_PEM_SEALFINAL), "PEM_SealFinal"},
|
||||
|
||||
Reference in New Issue
Block a user