DSA_do_sign - raw DSA signature operations
#include <openssl/dsa.h> DSA_SIG *DSA_do_sign(const unsigned char *dgst, int dlen, DSA *dsa); int DSA_do_verify(const unsigned char *dgst, int dgst_len, DSA_SIG *sig, DSA *dsa);
DSA_do_sign(3openssl) OpenSSL DSA_do_sign(3openssl)
NAME
DSA_do_sign, DSA_do_verify - raw DSA signature operations
SYNOPSIS
#include <openssl/dsa.h>
DSA_SIG *DSA_do_sign(const unsigned char *dgst, int dlen, DSA *dsa);
int DSA_do_verify(const unsigned char *dgst, int dgst_len,
DSA_SIG *sig, DSA *dsa);
DESCRIPTION
DSA_do_sign() computes a digital signature on the len byte message
digest dgst using the private key dsa and returns it in a newly
allocated DSA_SIG structure.
DSA_sign_setup(3) may be used to precompute part of the signing
operation for each signature in case signature generation is time-
critical.
DSA_do_verify() verifies that the signature sig matches a given message
digest dgst of size len. dsa is the signer's public key.
RETURN VALUES
DSA_do_sign() returns the signature, NULL on error. DSA_do_verify()
returns 1 for a valid signature, 0 for an incorrect signature and -1 on
error. The error codes can be obtained by ERR_get_error(3).
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+---------------+--------------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+--------------------------+
|Availability | library/security/openssl |
+---------------+--------------------------+
|Stability | Pass-through uncommitted |
+---------------+--------------------------+
SEE ALSO
dsa(3), ERR_get_error(3), rand(3), DSA_SIG_new(3), DSA_sign(3)
HISTORY
DSA_do_sign() and DSA_do_verify() were added in OpenSSL 0.9.3.
NOTES
Source code for open source software components in Oracle Solaris can
be found at https://www.oracle.com/downloads/opensource/solaris-source-
code-downloads.html.
This software was built from source available at
https://github.com/oracle/solaris-userland. The original community
source was downloaded from
https://www.openssl.org/source/openssl-1.0.2ze.tar.gz.
Further information about this software can be found on the open source
community website at https://www.openssl.org/.
1.0.2ze 2022-05-03 DSA_do_sign(3openssl)