blob: ab814a3f66e64facbbc3e993a7aec4e951474197 [file] [log] [blame]
Jean-Paul Calderone897bc252008-02-18 20:50:23 -05001<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html>
3<head>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -04004<title>3.1.2 X509 objects </title>
5<META NAME="description" CONTENT="3.1.2 X509 objects ">
Jean-Paul Calderone897bc252008-02-18 20:50:23 -05006<META NAME="keywords" CONTENT="pyOpenSSL">
7<META NAME="resource-type" CONTENT="document">
8<META NAME="distribution" CONTENT="global">
9<link rel="STYLESHEET" href="pyOpenSSL.css">
10<LINK REL="next" href="openssl-x509name.html">
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040011<LINK REL="previous" href="openssl-x509ext.html">
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050012<LINK REL="up" href="openssl-crypto.html">
13<LINK REL="next" href="openssl-x509name.html">
14</head>
15<body>
16<DIV CLASS="navigation">
17<table align="center" width="100%" cellpadding="0" cellspacing="2">
18<tr>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040019<td><A href="openssl-x509ext.html"><img src="previous.gif"
Jean-Paul Calderone215d51b2009-11-13 09:19:21 -050020 border="0" height="32"
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050021 alt="Previous Page" width="32"></A></td>
22<td><A href="openssl-crypto.html"><img src="up.gif"
Jean-Paul Calderone215d51b2009-11-13 09:19:21 -050023 border="0" height="32"
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050024 alt="Up One Level" width="32"></A></td>
25<td><A href="openssl-x509name.html"><img src="next.gif"
Jean-Paul Calderone215d51b2009-11-13 09:19:21 -050026 border="0" height="32"
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050027 alt="Next Page" width="32"></A></td>
28<td align="center" width="100%">Python OpenSSL Manual</td>
29<td><A href="contents.html"><img src="contents.gif"
Jean-Paul Calderone215d51b2009-11-13 09:19:21 -050030 border="0" height="32"
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050031 alt="Contents" width="32"></A></td>
32<td><img src="blank.gif"
33 border="0" height="32"
34 alt="" width="32"></td>
35<td><img src="blank.gif"
36 border="0" height="32"
37 alt="" width="32"></td>
38</tr></table>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040039<b class="navlabel">Previous:</b> <a class="sectref" href="openssl-x509ext.html">3.1.1 X509Extension objects</A>
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050040<b class="navlabel">Up:</b> <a class="sectref" href="openssl-crypto.html">3.1 crypto </A>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040041<b class="navlabel">Next:</b> <a class="sectref" href="openssl-x509name.html">3.1.3 X509Name objects</A>
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050042<br><hr>
43</DIV>
44<!--End of Navigation Panel-->
45
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040046<H3><A NAME="SECTION000412000000000000000">&nbsp;</A>
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050047<BR>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400483.1.2 X509 objects
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050049</H3>
50
51<P>
52X509 objects have the following methods:
53
54<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040055<dl><dt><b><a name='l2h-41'><tt class='method'>get_issuer</tt></a></b>()
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050056<dd>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -050057Return an X509Name object representing the issuer of the certificate.
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050058</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -050059
60<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040061<dl><dt><b><a name='l2h-42'><tt class='method'>get_pubkey</tt></a></b>()
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050062<dd>
63Return a PKey object representing the public key of the certificate.
64</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -050065
66<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040067<dl><dt><b><a name='l2h-43'><tt class='method'>get_serial_number</tt></a></b>()
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050068<dd>
69Return the certificate serial number.
70</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -050071
72<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040073<dl><dt><b><a name='l2h-44'><tt class='method'>get_subject</tt></a></b>()
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050074<dd>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -050075Return an X509Name object representing the subject of the certificate.
76</dl>
77
78<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040079<dl><dt><b><a name='l2h-45'><tt class='method'>get_version</tt></a></b>()
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050080<dd>
81Return the certificate version.
82</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -050083
84<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040085<dl><dt><b><a name='l2h-46'><tt class='method'>get_notBefore</tt></a></b>()
Jean-Paul Calderone525ef802008-03-09 20:39:42 -040086<dd>
87Return a string giving the time before which the certificate is not valid. The
88string is formatted as an ASN1 GENERALIZEDTIME:
89<dl><dd><pre class="verbatim">
90 YYYYMMDDhhmmssZ
91 YYYYMMDDhhmmss+hhmm
92 YYYYMMDDhhmmss-hhmm
93</pre></dl>
Jean-Paul Calderone24c99262008-03-09 21:48:06 -040094If no value exists for this field, <code>None</code> is returned.
Jean-Paul Calderone525ef802008-03-09 20:39:42 -040095</dl>
96
97<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -040098<dl><dt><b><a name='l2h-47'><tt class='method'>get_notAfter</tt></a></b>()
Jean-Paul Calderone525ef802008-03-09 20:39:42 -040099<dd>
100Return a string giving the time after which the certificate is not valid. The
101string is formatted as an ASN1 GENERALIZEDTIME:
102<dl><dd><pre class="verbatim">
103 YYYYMMDDhhmmssZ
104 YYYYMMDDhhmmss+hhmm
105 YYYYMMDDhhmmss-hhmm
106</pre></dl>
Jean-Paul Calderone24c99262008-03-09 21:48:06 -0400107If no value exists for this field, <code>None</code> is returned.
Jean-Paul Calderone525ef802008-03-09 20:39:42 -0400108</dl>
109
110<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400111<dl><dt><b><a name='l2h-48'><tt class='method'>set_notBefore</tt></a></b>(<var>when</var>)
Jean-Paul Calderone525ef802008-03-09 20:39:42 -0400112<dd>
113Change the time before which the certificate is not valid. <var>when</var> is a
114string formatted as an ASN1 GENERALIZEDTIME:
115<dl><dd><pre class="verbatim">
116 YYYYMMDDhhmmssZ
117 YYYYMMDDhhmmss+hhmm
118 YYYYMMDDhhmmss-hhmm
119</pre></dl>
120</dl>
121
122<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400123<dl><dt><b><a name='l2h-49'><tt class='method'>set_notAfter</tt></a></b>(<var>when</var>)
Jean-Paul Calderone525ef802008-03-09 20:39:42 -0400124<dd>
125Change the time after which the certificate is not valid. <var>when</var> is a
126string formatted as an ASN1 GENERALIZEDTIME:
127<dl><dd><pre class="verbatim">
128 YYYYMMDDhhmmssZ
129 YYYYMMDDhhmmss+hhmm
130 YYYYMMDDhhmmss-hhmm
131</pre></dl>
132</dl>
133
134<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400135<dl><dt><b><a name='l2h-50'><tt class='method'>gmtime_adj_notBefore</tt></a></b>(<var>time</var>)
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500136<dd>
137Adjust the timestamp (in GMT) when the certificate starts being valid.
138</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500139
140<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400141<dl><dt><b><a name='l2h-51'><tt class='method'>gmtime_adj_notAfter</tt></a></b>(<var>time</var>)
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500142<dd>
143Adjust the timestamp (in GMT) when the certificate stops being valid.
144</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500145
146<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400147<dl><dt><b><a name='l2h-52'><tt class='method'>has_expired</tt></a></b>()
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500148<dd>
149Checks the certificate's time stamp against current time. Returns true if the
150certificate has expired and false otherwise.
151</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500152
153<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400154<dl><dt><b><a name='l2h-53'><tt class='method'>set_issuer</tt></a></b>(<var>issuer</var>)
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500155<dd>
156Set the issuer of the certificate to <var>issuer</var>.
157</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500158
159<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400160<dl><dt><b><a name='l2h-54'><tt class='method'>set_pubkey</tt></a></b>(<var>pkey</var>)
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500161<dd>
162Set the public key of the certificate to <var>pkey</var>.
163</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500164
165<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400166<dl><dt><b><a name='l2h-55'><tt class='method'>set_serial_number</tt></a></b>(<var>serialno</var>)
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500167<dd>
168Set the serial number of the certificate to <var>serialno</var>.
169</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500170
171<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400172<dl><dt><b><a name='l2h-56'><tt class='method'>set_subject</tt></a></b>(<var>subject</var>)
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500173<dd>
174Set the subject of the certificate to <var>subject</var>.
175</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500176
177<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400178<dl><dt><b><a name='l2h-57'><tt class='method'>set_version</tt></a></b>(<var>version</var>)
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500179<dd>
180Set the certificate version to <var>version</var>.
181</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500182
183<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400184<dl><dt><b><a name='l2h-58'><tt class='method'>sign</tt></a></b>(<var>pkey, digest</var>)
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500185<dd>
186Sign the certificate, using the key <var>pkey</var> and the message digest algorithm
187identified by the string <var>digest</var>.
188</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500189
190<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400191<dl><dt><b><a name='l2h-59'><tt class='method'>subject_name_hash</tt></a></b>()
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500192<dd>
193Return the hash of the certificate subject.
194</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500195
196<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400197<dl><dt><b><a name='l2h-60'><tt class='method'>digest</tt></a></b>(<var>digest_name</var>)
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500198<dd>
199Return a digest of the certificate, using the <var>digest_name</var> method.
Jean-Paul Calderone6c1d4f92009-03-07 09:10:30 -0500200<var>digest_name</var> must be a string describing a digest algorithm supported
201by OpenSSL (by EVP_get_digestbyname, specifically). For example,
202<tt class="constant">"md5"</tt> or <tt class="constant">"sha1"</tt>.
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500203</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500204
205<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400206<dl><dt><b><a name='l2h-61'><tt class='method'>add_extensions</tt></a></b>(<var>extensions</var>)
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500207<dd>
208Add the extensions in the sequence <var>extensions</var> to the certificate.
209</dl>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500210
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500211<P>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400212<dl><dt><b><a name='l2h-62'><tt class='method'>get_extension_count</tt></a></b>()
213<dd>
214Return the number of extensions on this certificate.
215
216<span class='versionnote'>New in version 0.12.</span>
217
218</dl>
219
220<P>
221<dl><dt><b><a name='l2h-63'><tt class='method'>get_extension</tt></a></b>(<var>index</var>)
222<dd>
223Retrieve the extension on this certificate at the given index.
224
225<P>
226Extensions on a certificate are kept in order. The index parameter selects
227which extension will be returned. The returned object will be an X509Extension
228instance.
229
230<span class='versionnote'>New in version 0.12.</span>
231
232</dl>
233
234<P>
Jean-Paul Calderone2aa2b332008-03-06 21:43:14 -0500235
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500236<DIV CLASS="navigation">
237<p><hr>
238<table align="center" width="100%" cellpadding="0" cellspacing="2">
239<tr>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400240<td><A href="openssl-x509ext.html"><img src="previous.gif"
Jean-Paul Calderone215d51b2009-11-13 09:19:21 -0500241 border="0" height="32"
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500242 alt="Previous Page" width="32"></A></td>
243<td><A href="openssl-crypto.html"><img src="up.gif"
Jean-Paul Calderone215d51b2009-11-13 09:19:21 -0500244 border="0" height="32"
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500245 alt="Up One Level" width="32"></A></td>
246<td><A href="openssl-x509name.html"><img src="next.gif"
Jean-Paul Calderone215d51b2009-11-13 09:19:21 -0500247 border="0" height="32"
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500248 alt="Next Page" width="32"></A></td>
249<td align="center" width="100%">Python OpenSSL Manual</td>
250<td><A href="contents.html"><img src="contents.gif"
Jean-Paul Calderone215d51b2009-11-13 09:19:21 -0500251 border="0" height="32"
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500252 alt="Contents" width="32"></A></td>
253<td><img src="blank.gif"
254 border="0" height="32"
255 alt="" width="32"></td>
256<td><img src="blank.gif"
257 border="0" height="32"
258 alt="" width="32"></td>
259</tr></table>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400260<b class="navlabel">Previous:</b> <a class="sectref" href="openssl-x509ext.html">3.1.1 X509Extension objects</A>
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500261<b class="navlabel">Up:</b> <a class="sectref" href="openssl-crypto.html">3.1 crypto </A>
Jean-Paul Calderone78caacc2011-04-07 15:41:56 -0400262<b class="navlabel">Next:</b> <a class="sectref" href="openssl-x509name.html">3.1.3 X509Name objects</A>
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500263<hr>
Jean-Paul Calderone26ebc9e2011-04-11 19:57:10 -0400264<span class="release-info">Release 0.12.</span>
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500265</DIV>
266<!--End of Navigation Panel-->
267
268</BODY>
269</HTML>