libcryptosec
CertificateRevocationList.h
Go to the documentation of this file.
1 #ifndef CERTIFICATEREVOCATIONLIST_H_
2 #define CERTIFICATEREVOCATIONLIST_H_
3 
4 #include <openssl/x509.h>
5 
6 #include <string>
7 #include <vector>
8 
10 #include <libcryptosec/Base64.h>
11 #include <libcryptosec/DateTime.h>
12 #include <libcryptosec/PublicKey.h>
13 
14 #include "Extension.h"
15 #include "KeyUsageExtension.h"
26 #include "CRLNumberExtension.h"
28 
29 #include "RDNSequence.h"
30 #include "RevokedCertificate.h"
31 
33 {
34 public:
35  CertificateRevocationList(X509_CRL *crl);
36  CertificateRevocationList(std::string pemEncoded)
37  throw (EncodeException);
39  throw (EncodeException);
42  std::string getXmlEncoded();
43  std::string getXmlEncoded(std::string tab);
44  std::string getPemEncoded() throw (EncodeException);
50  long getVersion() throw (CertificationException);
54  std::vector<RevokedCertificate> getRevokedCertificate();
55  bool verify(PublicKey &publicKey);
56  X509_CRL* getX509Crl() const;
58  std::vector<Extension*> getExtension(Extension::Name extensionName);
59  std::vector<Extension *> getExtensions();
60  std::vector<Extension *> getUnknownExtensions();
61 protected:
62  X509_CRL *crl;
63 };
64 
65 #endif /*CERTIFICATEREVOCATIONLIST_H_*/
Classe usada para representar números grandes. A limitação do tamanho do número depende da memória di...
Definition: BigInteger.h:23
Implementa a representação da data. É utilizada em certificados, LCRs. Utiliza o formato epoch (time_...
Definition: DateTime.h:27
Definition: PublicKey.h:19
X509_CRL * getX509Crl() const
Definition: CertificateRevocationList.cpp:338
Definition: RDNSequence.h:17
long getSerialNumber()
Definition: CertificateRevocationList.cpp:191
std::vector< RevokedCertificate > getRevokedCertificate()
Definition: CertificateRevocationList.cpp:316
std::string getPemEncoded()
Definition: CertificateRevocationList.cpp:129
BigInteger getSerialNumberBigInt()
Definition: CertificateRevocationList.cpp:217
Definition: CertificationException.h:6
long getVersion()
Definition: CertificateRevocationList.cpp:284
RDNSequence getIssuer()
Definition: CertificateRevocationList.cpp:301
Classe usada para transportar dados binários pelo sistema. Pode ser usada para conversão de texto em ...
Definition: ByteArray.h:24
CertificateRevocationList(X509_CRL *crl)
Definition: CertificateRevocationList.cpp:3
ByteArray getDerEncoded()
Definition: CertificateRevocationList.cpp:162
std::vector< Extension * > getUnknownExtensions()
Definition: CertificateRevocationList.cpp:473
DateTime getLastUpdate()
Definition: CertificateRevocationList.cpp:306
Definition: EncodeException.h:8
Definition: BigIntegerException.h:7
X509_CRL * crl
Definition: CertificateRevocationList.h:62
std::string getXmlEncoded()
Definition: CertificateRevocationList.cpp:64
Name
Definition: Extension.h:17
CertificateRevocationList & operator=(const CertificateRevocationList &value)
Definition: CertificateRevocationList.cpp:343
bool verify(PublicKey &publicKey)
Definition: CertificateRevocationList.cpp:331
BigInteger getBaseCRLNumberBigInt()
Definition: CertificateRevocationList.cpp:263
std::vector< Extension * > getExtension(Extension::Name extensionName)
Definition: CertificateRevocationList.cpp:353
long getBaseCRLNumber()
Definition: CertificateRevocationList.cpp:237
std::vector< Extension * > getExtensions()
Definition: CertificateRevocationList.cpp:416
Definition: CertificateRevocationList.h:32
virtual ~CertificateRevocationList()
Definition: CertificateRevocationList.cpp:59
DateTime getNextUpdate()
Definition: CertificateRevocationList.cpp:311