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 |