Sortix
Sortix Download Manual Development Source Code News Blog More
current nightly

Sortix cross-nightly manual

This manual documents Sortix cross-nightly. You can instead view this document in the latest official manual.

NAME

ASN1_item_digest — DER-encode and hash an ASN.1 value

SYNOPSIS

#include <openssl/x509.h>
int
ASN1_item_digest(const ASN1_ITEM *it, const EVP_MD *type, void *val_in, unsigned char *md, unsigned int *s);

DESCRIPTION

ASN1_item_digest() assumes that val_in is an ASN1_VALUE of the type specified by it, encodes it into DER format by calling ASN1_item_i2d(3), hashes the resulting byte array using the digest type by calling EVP_Digest(3), places the digest value into *md, and, unless s is NULL, places the length in bytes of the digest into *s. Providing a buffer *md large enough to contain the digest is the responsibility of the caller; providing a buffer of EVP_MAX_MD_SIZE bytes is recommended.

RETURN VALUES

ASN1_item_digest() returns 1 for success or 0 if encoding or hashing fails.

SEE ALSO

ASN1_item_i2d(3), ASN1_item_sign(3), EVP_Digest(3)

HISTORY

ASN1_item_digest() first appeared in OpenSSL 0.9.7 and has been available since OpenBSD 3.1.
Copyright 2011-2025 Jonas 'Sortie' Termansen and contributors.
Sortix's source code is free software under the ISC license.
#sortix on irc.sortix.org
@sortix_org