diff options
Diffstat (limited to '')
| -rw-r--r-- | src/lib/libcrypto/man/EVP_PKEY_CTX_ctrl.3 | 243 |
1 files changed, 239 insertions, 4 deletions
diff --git a/src/lib/libcrypto/man/EVP_PKEY_CTX_ctrl.3 b/src/lib/libcrypto/man/EVP_PKEY_CTX_ctrl.3 index 1805a9283d..ca3321c3cb 100644 --- a/src/lib/libcrypto/man/EVP_PKEY_CTX_ctrl.3 +++ b/src/lib/libcrypto/man/EVP_PKEY_CTX_ctrl.3 | |||
| @@ -1,8 +1,9 @@ | |||
| 1 | .\" $OpenBSD: EVP_PKEY_CTX_ctrl.3,v 1.17 2019/10/29 17:21:07 schwarze Exp $ | 1 | .\" $OpenBSD: EVP_PKEY_CTX_ctrl.3,v 1.18 2019/10/29 18:22:21 schwarze Exp $ |
| 2 | .\" full merge up to: OpenSSL 99d63d46 Oct 26 13:56:48 2016 -0400 | 2 | .\" full merge up to: OpenSSL 99d63d46 Oct 26 13:56:48 2016 -0400 |
| 3 | .\" selective merge up to: OpenSSL df75c2bf Dec 9 01:02:36 2018 +0100 | 3 | .\" selective merge up to: OpenSSL df75c2bf Dec 9 01:02:36 2018 +0100 |
| 4 | .\" | 4 | .\" |
| 5 | .\" This file was written by Dr. Stephen Henson <steve@openssl.org>. | 5 | .\" This file was written by Dr. Stephen Henson <steve@openssl.org> |
| 6 | .\" and Antoine Salon <asalon@vmware.com>. | ||
| 6 | .\" Copyright (c) 2006, 2009, 2013, 2014, 2015, 2018 The OpenSSL Project. | 7 | .\" Copyright (c) 2006, 2009, 2013, 2014, 2015, 2018 The OpenSSL Project. |
| 7 | .\" All rights reserved. | 8 | .\" All rights reserved. |
| 8 | .\" | 9 | .\" |
| @@ -66,11 +67,25 @@ | |||
| 66 | .Nm EVP_PKEY_CTX_set_rsa_keygen_pubexp , | 67 | .Nm EVP_PKEY_CTX_set_rsa_keygen_pubexp , |
| 67 | .Nm EVP_PKEY_CTX_set_rsa_mgf1_md , | 68 | .Nm EVP_PKEY_CTX_set_rsa_mgf1_md , |
| 68 | .Nm EVP_PKEY_CTX_get_rsa_mgf1_md , | 69 | .Nm EVP_PKEY_CTX_get_rsa_mgf1_md , |
| 70 | .Nm EVP_PKEY_CTX_set_rsa_oaep_md , | ||
| 71 | .Nm EVP_PKEY_CTX_get_rsa_oaep_md , | ||
| 72 | .Nm EVP_PKEY_CTX_set0_rsa_oaep_label , | ||
| 73 | .Nm EVP_PKEY_CTX_get0_rsa_oaep_label , | ||
| 69 | .Nm EVP_PKEY_CTX_set_dsa_paramgen_bits , | 74 | .Nm EVP_PKEY_CTX_set_dsa_paramgen_bits , |
| 70 | .Nm EVP_PKEY_CTX_set_dh_paramgen_prime_len , | 75 | .Nm EVP_PKEY_CTX_set_dh_paramgen_prime_len , |
| 71 | .Nm EVP_PKEY_CTX_set_dh_paramgen_generator , | 76 | .Nm EVP_PKEY_CTX_set_dh_paramgen_generator , |
| 72 | .Nm EVP_PKEY_CTX_set_ec_paramgen_curve_nid , | 77 | .Nm EVP_PKEY_CTX_set_ec_paramgen_curve_nid , |
| 73 | .Nm EVP_PKEY_CTX_set_ec_param_enc , | 78 | .Nm EVP_PKEY_CTX_set_ec_param_enc , |
| 79 | .Nm EVP_PKEY_CTX_set_ecdh_cofactor_mode , | ||
| 80 | .Nm EVP_PKEY_CTX_get_ecdh_cofactor_mode , | ||
| 81 | .Nm EVP_PKEY_CTX_set_ecdh_kdf_type , | ||
| 82 | .Nm EVP_PKEY_CTX_get_ecdh_kdf_type , | ||
| 83 | .Nm EVP_PKEY_CTX_set_ecdh_kdf_md , | ||
| 84 | .Nm EVP_PKEY_CTX_get_ecdh_kdf_md , | ||
| 85 | .Nm EVP_PKEY_CTX_set_ecdh_kdf_outlen , | ||
| 86 | .Nm EVP_PKEY_CTX_get_ecdh_kdf_outlen , | ||
| 87 | .Nm EVP_PKEY_CTX_set0_ecdh_kdf_ukm , | ||
| 88 | .Nm EVP_PKEY_CTX_get0_ecdh_kdf_ukm , | ||
| 74 | .Nm EVP_PKEY_CTX_set1_id , | 89 | .Nm EVP_PKEY_CTX_set1_id , |
| 75 | .Nm EVP_PKEY_CTX_get1_id , | 90 | .Nm EVP_PKEY_CTX_get1_id , |
| 76 | .Nm EVP_PKEY_CTX_get1_id_len | 91 | .Nm EVP_PKEY_CTX_get1_id_len |
| @@ -143,6 +158,27 @@ | |||
| 143 | .Fa "EVP_PKEY_CTX *ctx" | 158 | .Fa "EVP_PKEY_CTX *ctx" |
| 144 | .Fa "const EVP_MD **pmd" | 159 | .Fa "const EVP_MD **pmd" |
| 145 | .Fc | 160 | .Fc |
| 161 | .Ft int | ||
| 162 | .Fo EVP_PKEY_CTX_set_rsa_oaep_md | ||
| 163 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 164 | .Fa "const EVP_MD *md" | ||
| 165 | .Fc | ||
| 166 | .Ft int | ||
| 167 | .Fo EVP_PKEY_CTX_get_rsa_oaep_md | ||
| 168 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 169 | .Fa "const EVP_MD **pmd" | ||
| 170 | .Fc | ||
| 171 | .Ft int | ||
| 172 | .Fo EVP_PKEY_CTX_set0_rsa_oaep_label | ||
| 173 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 174 | .Fa "unsigned char *label" | ||
| 175 | .Fa "int len" | ||
| 176 | .Fc | ||
| 177 | .Ft int | ||
| 178 | .Fo EVP_PKEY_CTX_get0_rsa_oaep_label | ||
| 179 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 180 | .Fa "unsigned char **plabel" | ||
| 181 | .Fc | ||
| 146 | .In openssl/dsa.h | 182 | .In openssl/dsa.h |
| 147 | .Ft int | 183 | .Ft int |
| 148 | .Fo EVP_PKEY_CTX_set_dsa_paramgen_bits | 184 | .Fo EVP_PKEY_CTX_set_dsa_paramgen_bits |
| @@ -172,6 +208,55 @@ | |||
| 172 | .Fa "int param_enc" | 208 | .Fa "int param_enc" |
| 173 | .Fc | 209 | .Fc |
| 174 | .Ft int | 210 | .Ft int |
| 211 | .Fo EVP_PKEY_CTX_set_ecdh_cofactor_mode | ||
| 212 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 213 | .Fa "int cofactor_mode" | ||
| 214 | .Fc | ||
| 215 | .Ft int | ||
| 216 | .Fo EVP_PKEY_CTX_get_ecdh_cofactor_mode | ||
| 217 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 218 | .Fc | ||
| 219 | .Ft int | ||
| 220 | .Fo EVP_PKEY_CTX_set_ecdh_kdf_type | ||
| 221 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 222 | .Fa "int kdf" | ||
| 223 | .Fc | ||
| 224 | .Ft int | ||
| 225 | .Fo EVP_PKEY_CTX_get_ecdh_kdf_type | ||
| 226 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 227 | .Fc | ||
| 228 | .Ft int | ||
| 229 | .Fo EVP_PKEY_CTX_set_ecdh_kdf_md | ||
| 230 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 231 | .Fa "const EVP_MD *md" | ||
| 232 | .Fc | ||
| 233 | .Ft int | ||
| 234 | .Fo EVP_PKEY_CTX_get_ecdh_kdf_md | ||
| 235 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 236 | .Fa "const EVP_MD **pmd" | ||
| 237 | .Fc | ||
| 238 | .Ft int | ||
| 239 | .Fo EVP_PKEY_CTX_set_ecdh_kdf_outlen | ||
| 240 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 241 | .Fa "int len" | ||
| 242 | .Fc | ||
| 243 | .Ft int | ||
| 244 | .Fo EVP_PKEY_CTX_get_ecdh_kdf_outlen | ||
| 245 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 246 | .Fa "int *plen" | ||
| 247 | .Fc | ||
| 248 | .Ft int | ||
| 249 | .Fo EVP_PKEY_CTX_set0_ecdh_kdf_ukm | ||
| 250 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 251 | .Fa "unsigned char *ukm" | ||
| 252 | .Fa "int len" | ||
| 253 | .Fc | ||
| 254 | .Ft int | ||
| 255 | .Fo EVP_PKEY_CTX_get0_ecdh_kdf_ukm | ||
| 256 | .Fa "EVP_PKEY_CTX *ctx" | ||
| 257 | .Fa "unsigned char **pukm" | ||
| 258 | .Fc | ||
| 259 | .Ft int | ||
| 175 | .Fo EVP_PKEY_CTX_set1_id | 260 | .Fo EVP_PKEY_CTX_set1_id |
| 176 | .Fa "EVP_PKEY_CTX *ctx" | 261 | .Fa "EVP_PKEY_CTX *ctx" |
| 177 | .Fa "void *id" | 262 | .Fa "void *id" |
| @@ -332,6 +417,49 @@ The padding mode must have been set to | |||
| 332 | .Dv RSA_PKCS1_OAEP_PADDING | 417 | .Dv RSA_PKCS1_OAEP_PADDING |
| 333 | or | 418 | or |
| 334 | .Dv RSA_PKCS1_PSS_PADDING . | 419 | .Dv RSA_PKCS1_PSS_PADDING . |
| 420 | .Pp | ||
| 421 | The | ||
| 422 | .Fn EVP_PKEY_CTX_set_rsa_oaep_md | ||
| 423 | macro sets the message digest type used in RSA OAEP to | ||
| 424 | .Fa md . | ||
| 425 | The padding mode must have been set to | ||
| 426 | .Dv RSA_PKCS1_OAEP_PADDING . | ||
| 427 | .Pp | ||
| 428 | The | ||
| 429 | .Fn EVP_PKEY_CTX_get_rsa_oaep_md | ||
| 430 | macro gets the message digest type used in RSA OAEP to | ||
| 431 | .Pf * Fa md . | ||
| 432 | The padding mode must have been set to | ||
| 433 | .Dv RSA_PKCS1_OAEP_PADDING . | ||
| 434 | .Pp | ||
| 435 | The | ||
| 436 | .Fn EVP_PKEY_CTX_set0_rsa_oaep_label | ||
| 437 | macro sets the RSA OAEP label to | ||
| 438 | .Fa label | ||
| 439 | and its length to | ||
| 440 | .Fa len . | ||
| 441 | If | ||
| 442 | .Fa label | ||
| 443 | is | ||
| 444 | .Dv NULL | ||
| 445 | or | ||
| 446 | .Fa len | ||
| 447 | is 0, the label is cleared. | ||
| 448 | The library takes ownership of the label so the caller should not | ||
| 449 | free the original memory pointed to by | ||
| 450 | .Fa label . | ||
| 451 | The padding mode must have been set to | ||
| 452 | .Dv RSA_PKCS1_OAEP_PADDING . | ||
| 453 | .Pp | ||
| 454 | The | ||
| 455 | .Fn EVP_PKEY_CTX_get0_rsa_oaep_label | ||
| 456 | macro gets the RSA OAEP label to | ||
| 457 | .Pf * Fa plabel . | ||
| 458 | The return value is the label length. | ||
| 459 | The padding mode must have been set to | ||
| 460 | .Dv RSA_PKCS1_OAEP_PADDING . | ||
| 461 | The resulting pointer is owned by the library and should not be | ||
| 462 | freed by the caller. | ||
| 335 | .Ss DSA parameters | 463 | .Ss DSA parameters |
| 336 | The macro | 464 | The macro |
| 337 | .Fn EVP_PKEY_CTX_set_dsa_paramgen_bits | 465 | .Fn EVP_PKEY_CTX_set_dsa_paramgen_bits |
| @@ -369,6 +497,94 @@ when generating EC parameters or an EC key. | |||
| 369 | The encoding can be set to 0 for explicit parameters or to | 497 | The encoding can be set to 0 for explicit parameters or to |
| 370 | .Dv OPENSSL_EC_NAMED_CURVE | 498 | .Dv OPENSSL_EC_NAMED_CURVE |
| 371 | to use named curve form. | 499 | to use named curve form. |
| 500 | .Ss ECDH parameters | ||
| 501 | The | ||
| 502 | .Fn EVP_PKEY_CTX_set_ecdh_cofactor_mode | ||
| 503 | macro sets the cofactor mode to | ||
| 504 | .Fa cofactor_mode | ||
| 505 | for ECDH key derivation. | ||
| 506 | Possible values are 1 to enable cofactor key derivation, 0 to disable | ||
| 507 | it, or -1 to clear the stored cofactor mode and fall back to the | ||
| 508 | private key cofactor mode. | ||
| 509 | .Pp | ||
| 510 | The | ||
| 511 | .Fn EVP_PKEY_CTX_get_ecdh_cofactor_mode | ||
| 512 | macro returns the cofactor mode for | ||
| 513 | .Fa ctx | ||
| 514 | used for ECDH key derivation. | ||
| 515 | Possible return values are 1 when cofactor key derivation is enabled | ||
| 516 | or 0 otherwise. | ||
| 517 | .Ss ECDH key derivation function parameters | ||
| 518 | The | ||
| 519 | .Fn EVP_PKEY_CTX_set_ecdh_kdf_type | ||
| 520 | macro sets the key derivation function type to | ||
| 521 | .Fa kdf | ||
| 522 | for ECDH key derivation. | ||
| 523 | Possible values are | ||
| 524 | .Dv EVP_PKEY_ECDH_KDF_NONE | ||
| 525 | or | ||
| 526 | .Dv EVP_PKEY_ECDH_KDF_X9_63 | ||
| 527 | which uses the key derivation specified in X9.63. | ||
| 528 | When using key derivation, the | ||
| 529 | .Fa kdf_md | ||
| 530 | and | ||
| 531 | .Fa kdf_outlen | ||
| 532 | parameters must also be specified. | ||
| 533 | .Pp | ||
| 534 | The | ||
| 535 | .Fn EVP_PKEY_CTX_get_ecdh_kdf_type | ||
| 536 | macro returns the key derivation function type for | ||
| 537 | .Fa ctx | ||
| 538 | used for ECDH key derivation. | ||
| 539 | Possible return values are | ||
| 540 | .Dv EVP_PKEY_ECDH_KDF_NONE | ||
| 541 | or | ||
| 542 | .Dv EVP_PKEY_ECDH_KDF_X9_63 . | ||
| 543 | .Pp | ||
| 544 | The | ||
| 545 | .Fn EVP_PKEY_CTX_set_ecdh_kdf_md | ||
| 546 | macro sets the key derivation function message digest to | ||
| 547 | .Fa md | ||
| 548 | for ECDH key derivation. | ||
| 549 | Note that X9.63 specifies that this digest should be SHA1, | ||
| 550 | but OpenSSL tolerates other digests. | ||
| 551 | .Pp | ||
| 552 | The | ||
| 553 | .Fn EVP_PKEY_CTX_get_ecdh_kdf_md | ||
| 554 | macro gets the key derivation function message digest for | ||
| 555 | .Fa ctx | ||
| 556 | used for ECDH key derivation. | ||
| 557 | .Pp | ||
| 558 | The | ||
| 559 | .Fn EVP_PKEY_CTX_set_ecdh_kdf_outlen | ||
| 560 | macro sets the key derivation function output length to | ||
| 561 | .Fa len | ||
| 562 | for ECDH key derivation. | ||
| 563 | .Pp | ||
| 564 | The | ||
| 565 | .Fn EVP_PKEY_CTX_get_ecdh_kdf_outlen | ||
| 566 | macro gets the key derivation function output length for | ||
| 567 | .Fa ctx | ||
| 568 | used for ECDH key derivation. | ||
| 569 | .Pp | ||
| 570 | The | ||
| 571 | .Fn EVP_PKEY_CTX_set0_ecdh_kdf_ukm | ||
| 572 | macro sets the user key material to | ||
| 573 | .Fa ukm | ||
| 574 | for ECDH key derivation. | ||
| 575 | This parameter is optional and corresponds to the shared info | ||
| 576 | in X9.63 terms. | ||
| 577 | The library takes ownership of the user key material, so the caller | ||
| 578 | should not free the original memory pointed to by | ||
| 579 | .Fa ukm . | ||
| 580 | .Pp | ||
| 581 | The | ||
| 582 | .Fn EVP_PKEY_CTX_get0_ecdh_kdf_ukm | ||
| 583 | macro gets the user key material for | ||
| 584 | .Fa ctx . | ||
| 585 | The return value is the user key material length. | ||
| 586 | The resulting pointer is owned by the library and should not be | ||
| 587 | freed by the caller. | ||
| 372 | .Ss Other parameters | 588 | .Ss Other parameters |
| 373 | The | 589 | The |
| 374 | .Fn EVP_PKEY_CTX_set1_id , | 590 | .Fn EVP_PKEY_CTX_set1_id , |
| @@ -443,9 +659,19 @@ first appeared in OpenSSL 1.0.1 and have been available since | |||
| 443 | .Ox 5.3 . | 659 | .Ox 5.3 . |
| 444 | .Pp | 660 | .Pp |
| 445 | The functions | 661 | The functions |
| 446 | .Fn EVP_PKEY_CTX_get_signature_md | 662 | .Fn EVP_PKEY_CTX_get_signature_md , |
| 663 | .Fn EVP_PKEY_CTX_set_ec_param_enc , | ||
| 664 | .Fn EVP_PKEY_CTX_set_ecdh_cofactor_mode , | ||
| 665 | .Fn EVP_PKEY_CTX_get_ecdh_cofactor_mode , | ||
| 666 | .Fn EVP_PKEY_CTX_set_ecdh_kdf_type , | ||
| 667 | .Fn EVP_PKEY_CTX_get_ecdh_kdf_type , | ||
| 668 | .Fn EVP_PKEY_CTX_set_ecdh_kdf_md , | ||
| 669 | .Fn EVP_PKEY_CTX_get_ecdh_kdf_md , | ||
| 670 | .Fn EVP_PKEY_CTX_set_ecdh_kdf_outlen , | ||
| 671 | .Fn EVP_PKEY_CTX_get_ecdh_kdf_outlen , | ||
| 672 | .Fn EVP_PKEY_CTX_set0_ecdh_kdf_ukm , | ||
| 447 | and | 673 | and |
| 448 | .Fn EVP_PKEY_CTX_set_ec_param_enc | 674 | .Fn EVP_PKEY_CTX_get0_ecdh_kdf_ukm |
| 449 | first appeared in OpenSSL 1.0.2 and have been available since | 675 | first appeared in OpenSSL 1.0.2 and have been available since |
| 450 | .Ox 6.6 . | 676 | .Ox 6.6 . |
| 451 | .Pp | 677 | .Pp |
| @@ -456,3 +682,12 @@ and | |||
| 456 | .Fn EVP_PKEY_CTX_get1_id_len | 682 | .Fn EVP_PKEY_CTX_get1_id_len |
| 457 | first appeared in OpenSSL 1.1.1 and have been available since | 683 | first appeared in OpenSSL 1.1.1 and have been available since |
| 458 | .Ox 6.6 . | 684 | .Ox 6.6 . |
| 685 | .Pp | ||
| 686 | The functions | ||
| 687 | .Fn EVP_PKEY_CTX_set_rsa_oaep_md , | ||
| 688 | .Fn EVP_PKEY_CTX_get_rsa_oaep_md , | ||
| 689 | .Fn EVP_PKEY_CTX_set0_rsa_oaep_label , | ||
| 690 | and | ||
| 691 | .Fn EVP_PKEY_CTX_get0_rsa_oaep_label | ||
| 692 | first appeared in OpenSSL 1.0.2 and have been available since | ||
| 693 | .Ox 6.7 . | ||
