1#ifndef NAIVE_CERTIFICATE_PROVIDER_HPP_MTULFLKX
2#define NAIVE_CERTIFICATE_PROVIDER_HPP_MTULFLKX
6#include <vanetza/common/runtime.hpp>
7#include <vanetza/security/backend.hpp>
8#include <vanetza/security/v2/certificate.hpp>
9#include <vanetza/security/v2/certificate_provider.hpp>
19
20
21
22
23
24
25
29 NaiveCertificateProvider(
const Runtime&);
32
33
34
38
39
40
44
45
46
50
51
52
56
57
58
62
63
64
68
69
70
75
76
77
81
82
83
87
88
89
90
94
95
96
97
100 std::unique_ptr<Backend> m_crypto_backend;
102 const ecdsa256::
KeyPair m_own_key_pair;
A very simplistic certificate provider.
const Certificate & own_certificate() override
get own certificate for signing
Certificate generate_authorization_ticket()
generate an authorization ticket
const ecdsa256::KeyPair & aa_key_pair()
get root key (same for all instances)
void sign_authorization_ticket(Certificate &certificate)
sign an authorization ticket
std::list< Certificate > own_chain() override
const ecdsa256::KeyPair & root_key_pair()
get root key (same for all instances)
Certificate generate_aa_certificate(const std::string &subject_name)
generate a authorization authority certificate
const ecdsa256::PrivateKey & own_private_key() override
get own private key
const Certificate & aa_certificate()
get ticket signer certificate (same for all instances)
const Certificate & root_certificate()
get root certificate (same for all instances)
Certificate generate_root_certificate(const std::string &subject_name)
generate a root certificate
Uncompressed specified in TS 103 097 v1.2.1 in section 4.2.5.
described in TS 103 097 v1.2.1 (2015-06), section 6.1
void add_permission(ItsAid aid, const ByteBuffer &ssp)
void add_permission(ItsAid aid)
SubjectAssurance specified in TS 103 097 v1.2.1 in section 6.6 and 7.4.1.
VerificationKey specified in TS 103 097 v1.2.1, section 6.4.
ecdsa_nistp256_with_sha256 specified in TS 103 097 v1.2.1, section 4.2.4