1=pod 2 3=head1 NAME 4 5DSA_do_sign, DSA_do_verify - raw DSA signature operations 6 7=head1 SYNOPSIS 8 9 #include <openssl/dsa.h> 10 11The following functions have been deprecated since OpenSSL 3.0, and can be 12hidden entirely by defining B<OPENSSL_API_COMPAT> with a suitable version value, 13see L<openssl_user_macros(7)>: 14 15 DSA_SIG *DSA_do_sign(const unsigned char *dgst, int dlen, DSA *dsa); 16 17 int DSA_do_verify(const unsigned char *dgst, int dgst_len, 18 DSA_SIG *sig, DSA *dsa); 19 20=head1 DESCRIPTION 21 22All of the functions described on this page are deprecated. 23Applications should instead use L<EVP_PKEY_sign_init(3)>, L<EVP_PKEY_sign(3)>, 24L<EVP_PKEY_verify_init(3)> and L<EVP_PKEY_verify(3)>. 25 26DSA_do_sign() computes a digital signature on the B<len> byte message 27digest B<dgst> using the private key B<dsa> and returns it in a 28newly allocated B<DSA_SIG> structure. 29 30L<DSA_sign_setup(3)> may be used to precompute part 31of the signing operation in case signature generation is 32time-critical. 33 34DSA_do_verify() verifies that the signature B<sig> matches a given 35message digest B<dgst> of size B<len>. B<dsa> is the signer's public 36key. 37 38=head1 RETURN VALUES 39 40DSA_do_sign() returns the signature, NULL on error. DSA_do_verify() 41returns 1 for a valid signature, 0 for an incorrect signature and -1 42on error. The error codes can be obtained by 43L<ERR_get_error(3)>. 44 45=head1 SEE ALSO 46 47L<DSA_new(3)>, L<ERR_get_error(3)>, L<RAND_bytes(3)>, 48L<DSA_SIG_new(3)>, 49L<DSA_sign(3)> 50 51=head1 HISTORY 52 53All of these functions were deprecated in OpenSSL 3.0. 54 55=head1 COPYRIGHT 56 57Copyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved. 58 59Licensed under the Apache License 2.0 (the "License"). You may not use 60this file except in compliance with the License. You can obtain a copy 61in the file LICENSE in the source distribution or at 62L<https://www.openssl.org/source/license.html>. 63 64=cut 65