]> git.ipfire.org Git - thirdparty/openssl.git/blame - doc/crypto/d2i_DSAPublicKey.pod
Fix nits in pod files.
[thirdparty/openssl.git] / doc / crypto / d2i_DSAPublicKey.pod
CommitLineData
9de6bb8a
DSH
1=pod
2
3=head1 NAME
4
5d2i_DSAPublicKey, i2d_DSAPublicKey, d2i_DSAPrivateKey, i2d_DSAPrivateKey,
01d358a3
DSH
6d2i_DSA_PUBKEY, i2d_DSA_PUBKEY, d2i_DSAparams, i2d_DSAparams,
7d2i_DSA_SIG, i2d_DSA_SIG - DSA key encoding and parsing functions.
9de6bb8a
DSH
8
9=head1 SYNOPSIS
10
11 #include <openssl/dsa.h>
2abd5b7a 12 #include <openssl/x509.h>
9de6bb8a
DSH
13
14 DSA * d2i_DSAPublicKey(DSA **a, const unsigned char **pp, long length);
15
16 int i2d_DSAPublicKey(const DSA *a, unsigned char **pp);
17
18 DSA * d2i_DSA_PUBKEY(DSA **a, const unsigned char **pp, long length);
19
20 int i2d_DSA_PUBKEY(const DSA *a, unsigned char **pp);
21
01d358a3
DSH
22 DSA *d2i_DSA_PUBKEY_bio(BIO *bp, DSA **dsa);
23 DSA *d2i_DSA_PUBKEY_fp(FILE *fp, DSA **dsa);
24
25 int i2d_DSA_PUBKEY_bio(BIO *bp, DSA *dsa);
26 int i2d_DSA_PUBKEY_fp(FILE *fp, DSA *dsa);
27
9de6bb8a
DSH
28 DSA * d2i_DSAPrivateKey(DSA **a, const unsigned char **pp, long length);
29
30 int i2d_DSAPrivateKey(const DSA *a, unsigned char **pp);
31
32 DSA * d2i_DSAparams(DSA **a, const unsigned char **pp, long length);
33
34 int i2d_DSAparams(const DSA *a, unsigned char **pp);
35
36 DSA * d2i_DSA_SIG(DSA_SIG **a, const unsigned char **pp, long length);
37
38 int i2d_DSA_SIG(const DSA_SIG *a, unsigned char **pp);
39
40=head1 DESCRIPTION
41
42d2i_DSAPublicKey() and i2d_DSAPublicKey() decode and encode the DSA public key
43components structure.
44
2abd5b7a
RL
45d2i_DSA_PUBKEY() and i2d_DSA_PUBKEY() decode and encode an DSA public key using
46a SubjectPublicKeyInfo (certificate public key) structure.
9de6bb8a 47
01d358a3
DSH
48d2i_DSA_PUBKEY_bio(), d2i_DSA_PUBKEY_fp(), i2d_DSA_PUBKEY_bio() and
49i2d_DSA_PUBKEY_fp() are similar to d2i_DSA_PUBKEY() and i2d_DSA_PUBKEY()
50except they decode or encode using a B<BIO> or B<FILE> pointer.
51
9de6bb8a
DSH
52d2i_DSAPrivateKey(), i2d_DSAPrivateKey() decode and encode the DSA private key
53components.
54
55d2i_DSAparams(), i2d_DSAparams() decode and encode the DSA parameters using
56a B<Dss-Parms> structure as defined in RFC2459.
57
58d2i_DSA_SIG(), i2d_DSA_SIG() decode and encode a DSA signature using a
59B<Dss-Sig-Value> structure as defined in RFC2459.
60
61The usage of all of these functions is similar to the d2i_X509() and
9b86974e 62i2d_X509() described in the L<d2i_X509(3)> manual page.
9de6bb8a
DSH
63
64=head1 NOTES
65
66The B<DSA> structure passed to the private key encoding functions should have
67all the private key components present.
68
1bc74519 69The data encoded by the private key functions is unencrypted and therefore
9de6bb8a
DSH
70offers no private key security.
71
72The B<DSA_PUBKEY> functions should be used in preference to the B<DSAPublicKey>
73functions when encoding public keys because they use a standard format.
74
0c787647
DSH
75The B<DSAPublicKey> functions use a non standard format which is a
76B<SEQUENCE> consisting of the B<p>, B<q>, B<g> and B<pub_key> fields
77respectively.
9de6bb8a 78
186bb907 79The B<DSAPrivateKey> functions also use a non standard structure consisting
9de6bb8a
DSH
80consisting of a SEQUENCE containing the B<p>, B<q>, B<g> and B<pub_key> and
81B<priv_key> fields respectively.
82
83=head1 SEE ALSO
84
9b86974e 85L<d2i_X509(3)>
9de6bb8a
DSH
86
87=head1 HISTORY
88
89TBA
90
91=cut
e2f92610
RS
92
93=head1 COPYRIGHT
94
95Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved.
96
97Licensed under the OpenSSL license (the "License"). You may not use
98this file except in compliance with the License. You can obtain a copy
99in the file LICENSE in the source distribution or at
100L<https://www.openssl.org/source/license.html>.
101
102=cut