[#DSA_generate_key]
= DSA&lowbar;generate&lowbar;key
:mrdocs:

Generate a DSA public&sol;private key pair from parameters already in `a&period;`

== Synopsis

Declared in `&lt;openssl&sol;dsa&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lsqb;&lsqb;deprecated&rsqb;&rsqb;
int
DSA&lowbar;generate&lowbar;key(xref:DSA.adoc[DSA]* a);
----

[WARNING]
====
https://en.cppreference.com/cpp/language/attributes/deprecated[Deprecated^]. Use of this entity is allowed but discouraged.
====
== Description

Deprecated&semi; prefer EVP&lowbar;PKEY&lowbar;keygen&lowbar;init() &sol; EVP&lowbar;PKEY&lowbar;keygen() for DSA&period; The CSPRNG must be seeded&semi; failure to seed or reseed causes this call to fail&period;

== Return Value

1 on success, or 0 on failure&period;

== Parameters

[cols="1,4"]
|===
| Name| Description
| *a*
| DSA object that already holds domain parameters&semi; receives pub&lowbar;key and priv&lowbar;key&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
