1#include <vanetza/security/v2/null_certificate_provider.hpp>
10VerificationKey create_null_verification_key()
12 Uncompressed coordinates;
13 coordinates.x.resize(32);
14 coordinates.y.resize(32);
15 EccPoint ecc_point = coordinates;
16 ecdsa_nistp256_with_sha256 ecdsa;
17 ecdsa.public_key = ecc_point;
18 VerificationKey verification_key;
19 verification_key.key = ecdsa;
20 return verification_key;
23EcdsaSignature create_null_signature()
25 EcdsaSignature signature;
26 X_Coordinate_Only coordinate;
27 coordinate.x.resize(32);
28 signature.R = std::move(coordinate);
29 signature.s.resize(32);
33Certificate create_null_certificate()
36 cert.signer_info = HashedId8 {};
37 cert.subject_info.subject_type = SubjectType::Authorization_Ticket;
38 cert.subject_attributes.push_back(SubjectAssurance(0x00));
39 cert.subject_attributes.push_back(create_null_verification_key());
40 cert.validity_restriction.push_back(StartAndEndValidity {});
41 cert.signature = create_null_signature();
45NullCertificateProvider::NullCertificateProvider() { }
54 return std::list<Certificate> {};
static const Certificate & null_certificate()
const Certificate & own_certificate() override
std::list< Certificate > own_chain() override
const ecdsa256::PrivateKey & own_private_key() override
described in TS 103 097 v1.2.1 (2015-06), section 6.1