AusweisApp2
CertificateChecker.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "asn1/CVCertificate.h"
11 
12 #include <QSet>
13 #include <QSslCertificate>
14 #include <QString>
15 
16 #include <functional>
17 
18 namespace governikus
19 {
20 
27 {
28  Q_GADGET
29 
30  public:
31  enum class CertificateStatus
32  {
33  Good,
36  };
37  Q_ENUM(CertificateStatus)
38 
39 
40 
45  static CertificateStatus checkAndSaveCertificate(const QSslCertificate& pCertificate,
46  const QUrl& pUrl,
47  const QSharedPointer<DIDAuthenticateEAC1>& pEAC1,
48  const QSharedPointer<const CVCertificate>& pDvCvc,
49  const std::function<void(const QUrl&, const QSslCertificate&)>& pSaveCertificateFunc);
50 };
51 
52 } // namespace governikus
governikus::CertificateChecker::checkAndSaveCertificate
static CertificateStatus checkAndSaveCertificate(const QSslCertificate &pCertificate, const QUrl &pUrl, const QSharedPointer< DIDAuthenticateEAC1 > &pEAC1, const QSharedPointer< const CVCertificate > &pDvCvc, const std::function< void(const QUrl &, const QSslCertificate &)> &pSaveCertificateFunc)
Checks certificate and, if OK, save it using a callback function.
Definition: CertificateChecker.cpp:20
TlsChecker.h
governikus::CertificateChecker
Utility class for checking various constraints on certificates.
Definition: CertificateChecker.h:27
governikus::CertificateChecker::CertificateStatus::Unsupported_Algorithm_Or_Length
@ Unsupported_Algorithm_Or_Length
AppSettings.h
governikus::CertificateChecker::CertificateStatus::Hash_Not_In_Description
@ Hash_Not_In_Description
governikus::TlsChecker::checkCertificate
static bool checkCertificate(const QSslCertificate &pCertificate, QCryptographicHash::Algorithm pAlgorithm, const QSet< QString > &pAcceptedCertificateHashes)
Checks, whether the certificate's hash is contained in a set of accepted certificate hashes.
Definition: TlsChecker.cpp:27
governikus::CVCertificate
struct cvcertificate_st { CVCertificateBody *mBody CVCertificate
Definition: CVCertificate.h:47
CertificateChecker.h
governikus::DIDAuthenticateEAC1
Definition: DidAuthenticateEac1.h:25
DidAuthenticateEac1.h
governikus
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15
governikus::CertificateChecker::CertificateStatus::Good
@ Good
governikus::TlsChecker::hasValidCertificateKeyLength
static bool hasValidCertificateKeyLength(const QSslCertificate &pCertificate)
Checks, whether the key length of the SSL certificate is of sufficient length.
Definition: TlsChecker.cpp:47
CVCertificate.h
governikus::CertificateChecker::CertificateStatus
CertificateStatus
Definition: CertificateChecker.h:32