Botan
1.10.9
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
src
cert
pkcs10
pkcs10.h
Go to the documentation of this file.
1
/*
2
* PKCS #10
3
* (C) 1999-2007 Jack Lloyd
4
*
5
* Distributed under the terms of the Botan license
6
*/
7
8
#ifndef BOTAN_PKCS10_H__
9
#define BOTAN_PKCS10_H__
10
11
#include <botan/x509_obj.h>
12
#include <botan/x509_dn.h>
13
#include <botan/pkcs8.h>
14
#include <botan/datastor.h>
15
#include <vector>
16
17
namespace
Botan
{
18
19
/**
20
* PKCS #10 Certificate Request.
21
*/
22
class
BOTAN_DLL
PKCS10_Request
:
public
X509_Object
23
{
24
public
:
25
/**
26
* Get the subject public key.
27
* @return subject public key
28
*/
29
Public_Key
* subject_public_key()
const
;
30
31
/**
32
* Get the raw DER encoded public key.
33
* @return raw DER encoded public key
34
*/
35
MemoryVector<byte>
raw_public_key()
const
;
36
37
/**
38
* Get the subject DN.
39
* @return subject DN
40
*/
41
X509_DN
subject_dn()
const
;
42
43
/**
44
* Get the subject alternative name.
45
* @return subject alternative name.
46
*/
47
AlternativeName
subject_alt_name()
const
;
48
49
/**
50
* Get the key constraints for the key associated with this
51
* PKCS#10 object.
52
* @return key constraints
53
*/
54
Key_Constraints
constraints()
const
;
55
56
/**
57
* Get the extendend key constraints (if any).
58
* @return extended key constraints
59
*/
60
std::vector<OID> ex_constraints()
const
;
61
62
/**
63
* Find out whether this is a CA request.
64
* @result true if it is a CA request, false otherwise.
65
*/
66
bool
is_CA()
const
;
67
68
/**
69
* Return the constraint on the path length defined
70
* in the BasicConstraints extension.
71
* @return path limit
72
*/
73
u32bit
path_limit()
const
;
74
75
/**
76
* Get the challenge password for this request
77
* @return challenge password for this request
78
*/
79
std::string challenge_password()
const
;
80
81
/**
82
* Create a PKCS#10 Request from a data source.
83
* @param source the data source providing the DER encoded request
84
*/
85
PKCS10_Request
(
DataSource
& source);
86
87
/**
88
* Create a PKCS#10 Request from a file.
89
* @param filename the name of the file containing the DER or PEM
90
* encoded request file
91
*/
92
PKCS10_Request
(
const
std::string& filename);
93
private
:
94
void
force_decode();
95
void
handle_attribute(
const
Attribute
&);
96
97
Data_Store
info;
98
};
99
100
}
101
102
#endif
Botan::DataSource
Definition:
data_src.h:20
Botan::X509_Object
Definition:
x509_obj.h:23
Botan::X509_DN
Definition:
x509_dn.h:21
Botan::PKCS10_Request
Definition:
pkcs10.h:22
Botan
Definition:
algo_base.h:14
Botan::MemoryVector< byte >
Botan::Public_Key
Definition:
pk_keys.h:21
Botan::Data_Store
Definition:
datastor.h:22
Botan::Key_Constraints
Key_Constraints
Definition:
pubkey_enums.h:18
Botan::Attribute
Definition:
asn1_obj.h:24
Botan::u32bit
unsigned int u32bit
Definition:
types.h:32
Botan::AlternativeName
Definition:
asn1_obj.h:68
Generated on Sat Aug 20 2016 08:18:46 for Botan by
1.8.9.1