| OLD | NEW |
| 1 =pod | 1 =pod |
| 2 | 2 |
| 3 =head1 NAME | 3 =head1 NAME |
| 4 | 4 |
| 5 EVP_SignInit, EVP_SignUpdate, EVP_SignFinal - EVP signing functions | 5 EVP_SignInit, EVP_SignUpdate, EVP_SignFinal - EVP signing functions |
| 6 | 6 |
| 7 =head1 SYNOPSIS | 7 =head1 SYNOPSIS |
| 8 | 8 |
| 9 #include <openssl/evp.h> | 9 #include <openssl/evp.h> |
| 10 | 10 |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 70 | 70 |
| 71 Since only a copy of the digest context is ever finalized the context must | 71 Since only a copy of the digest context is ever finalized the context must |
| 72 be cleaned up after use by calling EVP_MD_CTX_cleanup() or a memory leak | 72 be cleaned up after use by calling EVP_MD_CTX_cleanup() or a memory leak |
| 73 will occur. | 73 will occur. |
| 74 | 74 |
| 75 =head1 BUGS | 75 =head1 BUGS |
| 76 | 76 |
| 77 Older versions of this documentation wrongly stated that calls to | 77 Older versions of this documentation wrongly stated that calls to |
| 78 EVP_SignUpdate() could not be made after calling EVP_SignFinal(). | 78 EVP_SignUpdate() could not be made after calling EVP_SignFinal(). |
| 79 | 79 |
| 80 Since the private key is passed in the call to EVP_SignFinal() any error |
| 81 relating to the private key (for example an unsuitable key and digest |
| 82 combination) will not be indicated until after potentially large amounts of |
| 83 data have been passed through EVP_SignUpdate(). |
| 84 |
| 85 It is not possible to change the signing parameters using these function. |
| 86 |
| 87 The previous two bugs are fixed in the newer EVP_SignDigest*() function. |
| 88 |
| 80 =head1 SEE ALSO | 89 =head1 SEE ALSO |
| 81 | 90 |
| 82 L<EVP_VerifyInit(3)|EVP_VerifyInit(3)>, | 91 L<EVP_VerifyInit(3)|EVP_VerifyInit(3)>, |
| 83 L<EVP_DigestInit(3)|EVP_DigestInit(3)>, L<err(3)|err(3)>, | 92 L<EVP_DigestInit(3)|EVP_DigestInit(3)>, L<err(3)|err(3)>, |
| 84 L<evp(3)|evp(3)>, L<hmac(3)|hmac(3)>, L<md2(3)|md2(3)>, | 93 L<evp(3)|evp(3)>, L<hmac(3)|hmac(3)>, L<md2(3)|md2(3)>, |
| 85 L<md5(3)|md5(3)>, L<mdc2(3)|mdc2(3)>, L<ripemd(3)|ripemd(3)>, | 94 L<md5(3)|md5(3)>, L<mdc2(3)|mdc2(3)>, L<ripemd(3)|ripemd(3)>, |
| 86 L<sha(3)|sha(3)>, L<dgst(1)|dgst(1)> | 95 L<sha(3)|sha(3)>, L<dgst(1)|dgst(1)> |
| 87 | 96 |
| 88 =head1 HISTORY | 97 =head1 HISTORY |
| 89 | 98 |
| 90 EVP_SignInit(), EVP_SignUpdate() and EVP_SignFinal() are | 99 EVP_SignInit(), EVP_SignUpdate() and EVP_SignFinal() are |
| 91 available in all versions of SSLeay and OpenSSL. | 100 available in all versions of SSLeay and OpenSSL. |
| 92 | 101 |
| 93 EVP_SignInit_ex() was added in OpenSSL 0.9.7. | 102 EVP_SignInit_ex() was added in OpenSSL 0.9.7. |
| 94 | 103 |
| 95 =cut | 104 =cut |
| OLD | NEW |