blob: 07cfda4908975e9b7733df523dd8fa499d16a0ac [file] [log] [blame]
Rich Salz3e5d9da2017-01-12 16:39:41 -05001=pod
2
3=head1 NAME
4
5X509_digest, X509_CRL_digest,
6X509_pubkey_digest,
7X509_NAME_digest,
8X509_REQ_digest
9PKCS7_ISSUER_AND_SERIAL_digest,
10- get digest of various objects
11
12=head1 SYNOPSIS
13
14 #include <openssl/x509.h>
15
16 int X509_digest(const X509 *data, const EVP_MD *type, unsigned char *md,
17 unsigned int *len);
18
19 int X509_CRL_digest(const X509_CRL *data, const EVP_MD *type, unsigned char *md,
20 unsigned int *len);
21
22 int X509_pubkey_digest(const X509 *data, const EVP_MD *type,
23 unsigned char *md, unsigned int *len);
24
25 int X509_REQ_digest(const X509_REQ *data, const EVP_MD *type,
26 unsigned char *md, unsigned int *len);
27
28 int X509_NAME_digest(const X509_NAME *data, const EVP_MD *type,
29 unsigned char *md, unsigned int *len);
30
31 int PKCS7_ISSUER_AND_SERIAL_digest(PKCS7_ISSUER_AND_SERIAL *data,
32 const EVP_MD *type, unsigned char *md,
33 unsigned int *len);
34
35=head1 DESCRIPTION
36
37X509_pubkey_digest() returns a digest of the DER representation of the public
38key in the specified X509 B<data> object.
39All other functions described here return a digest of the DER representation
40of their entire B<data> objects.
41
42The B<type> parameter specifies the digest to
43be used, such as EVP_sha1(). The B<md> is a pointer to the buffer where the
44digest will be copied and is assumed to be large enough; the constant
45B<EVP_MAX_MD_SIZE> is suggested. The B<len> parameter, if not NULL, points
46to a place where the digest size will be stored.
47
48=head1 RETURN VALUES
49
50All functions described here return 1 for success and 0 for failure.
51
52=head1 SEE ALSO
53
Rich Salz9e183d22017-03-11 08:56:44 -050054L<EVP_sha1(3)>
Rich Salz3e5d9da2017-01-12 16:39:41 -050055
56=head1 COPYRIGHT
57
58Copyright 2017 The OpenSSL Project Authors. All Rights Reserved.
59
60Licensed under the OpenSSL license (the "License"). You may not use
61this file except in compliance with the License. You can obtain a copy
62in the file LICENSE in the source distribution or at
63L<https://www.openssl.org/source/license.html>.
64
65=cut