12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- =pod
- =head1 NAME
- X509_get0_distinguishing_id, X509_set0_distinguishing_id,
- X509_REQ_get0_distinguishing_id, X509_REQ_set0_distinguishing_id
- - get or set the Distinguishing ID for certificate operations
- =head1 SYNOPSIS
- #include <openssl/x509.h>
- ASN1_OCTET_STRING *X509_get0_distinguishing_id(X509 *x);
- void X509_set0_distinguishing_id(X509 *x, ASN1_OCTET_STRING *distid);
- ASN1_OCTET_STRING *X509_REQ_get0_distinguishing_id(X509_REQ *x);
- void X509_REQ_set0_distinguishing_id(X509_REQ *x, ASN1_OCTET_STRING *distid);
- =head1 DESCRIPTION
- The Distinguishing ID is defined in FIPS 196 as follows:
- =over 4
- =item I<Distinguishing identifier>
- Information which unambiguously distinguishes
- an entity in the authentication process.
- =back
- The SM2 signature algorithm requires a Distinguishing ID value when generating
- and verifying a signature, but the Ddistinguishing ID may also find other uses.
- In the context of SM2, the Distinguishing ID is often referred to as the "SM2
- ID".
- For the purpose off verifying a certificate or a certification request, a
- Distinguishing ID may be attached to it, so functions like L<X509_verify(3)>
- or L<X509_REQ_verify(3)> have easy access to that identity for signature
- verification.
- X509_get0_distinguishing_id() gets the Distinguishing ID value of a certificate
- B<x> by returning an B<ASN1_OCTET_STRING> object which should not be freed by
- the caller.
- X509_set0_distinguishing_id() assigns B<distid> to the certificate B<x>.
- Calling this function transfers the memory management of the value to the X509
- object, and therefore the value that has been passed in should not be freed by
- the caller after this function has been called.
- X509_REQ_get0_distinguishing_id() and X509_REQ_set0_distinguishing_id()
- have the same functionality as X509_get0_distinguishing_id() and
- X509_set0_distinguishing_id() except that they deal with B<X509_REQ>
- objects instead of B<X509>.
- =head1 RETURN VALUES
- X509_set0_distinguishing_id() and X509_REQ_set0_distinguishing_id() do not
- return a value.
- =head1 SEE ALSO
- L<X509_verify(3)>, L<SM2(7)>
- =head1 COPYRIGHT
- Copyright 2019-2020 The OpenSSL Project Authors. All Rights Reserved.
- Licensed under the Apache License 2.0 (the "License"). You may not use
- this file except in compliance with the License. You can obtain a copy
- in the file LICENSE in the source distribution or at
- L<https://www.openssl.org/source/license.html>.
- =cut
|