[#EVP_PKEY_sign] = EVP_PKEY_sign :mrdocs: Create a signature over data using an initialized signing context. == Synopsis Declared in `<openssl/evp.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- int EVP_PKEY_sign( xref:EVP_PKEY_CTX.adoc[EVP_PKEY_CTX]* ctx, unsigned char* sig, size_t* siglen, unsigned char const* tbs, size_t tbslen); ---- == Return Value 1 on success, 0 or a negative value on failure. == Parameters [cols="1,4"] |=== | Name| Description | *ctx* | Context previously prepared with EVP_PKEY_sign_init() (and optional controls). | *sig* | Output buffer for the signature, or NULL to only query the required length. | *siglen* | On entry, capacity of `sig` when non‐NULL; on return, signature length in bytes. | *tbs* | Message or digest bytes to sign. | *tbslen* | Length of `tbs` in bytes. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#