DSA_SIZE(3) | Library Functions Manual | DSA_SIZE(3)

# NAME

`DSA_size`, `DSA_bits` — get DSA signature or key size

# SYNOPSIS

library “libcrypto”
`#include <openssl/dsa.h>`

int
`DSA_size`(const DSA *dsa);

int
`DSA_bits`(const DSA *dsa);

# DESCRIPTION

`DSA_size`() returns the maximum size of an ASN.1 encoded DSA signature for the key dsa in bytes. It can be used to determine how much memory must be allocated for a DSA signature.

dsa->q must not be `NULL`.

`DSA_bits`() returns the number of significant bits in the public domain parameter p contained in dsa. This is also the number of bits in the public key.

# RETURN VALUES

`DSA_size`() returns the size of the signature in bytes.

`DSA_bits`() returns the size of the public key in bits.

# SEE ALSO

DSA_get0_pqg(3), DSA_new(3), DSA_security_bits(3), DSA_sign(3)

# HISTORY

`DSA_size`() first appeared in SSLeay 0.6.0 and has been available since OpenBSD 2.4.

`DSA_bits`() first appeared in OpenSSL 1.1.0 and has been available since OpenBSD 7.1.

June 8, 2025 | Debian