1#include <vanetza/common/its_aid.hpp>
2#include <vanetza/common/runtime.hpp>
3#include <vanetza/security/v2/basic_elements.hpp>
4#include <vanetza/security/backend.hpp>
5#include <vanetza/security/v3/hash.hpp>
6#include <vanetza/security/v3/sign_service.hpp>
7#include <vanetza/security/v3/secured_message.hpp>
17 m_certificates(provider), m_backend(backend), m_policy(policy), m_validator(validator)
27 secured_message.set_hash_id(hash_algo);
28 secured_message.set_payload(convert_to_payload(request.plain_message));
32 return SignConfirm::failure(SignConfirmError::No_Certificate);
35 ByteBuffer digest = calculate_message_hash(m_backend, hash_algo, secured_message.signing_payload(), signing_cert);
37 secured_message.set_signature(signature);
38 return SignConfirm::success(std::move(secured_message));
50 payload = convert_to_payload(request.plain_message);
51 secured_message.set_payload(payload);
52 secured_message.set_dummy_signature();
53 secured_message.set_its_aid(request.its_aid);
54 secured_message.set_generation_time(vanetza::security::v2::convert_time64(m_runtime
.now()));
55 secured_message->content->choice.signedData->signer.present = Vanetza_Security_SignerIdentifier_PR_self;
57 return SignConfirm::success(std::move(secured_message));
virtual Clock::time_point now() const =0
virtual const PrivateKey & own_private_key()=0
virtual const Certificate & own_certificate()=0
virtual Verdict valid_for_signing(const CertificateView &certificate, ItsAid app)=0
KeyType get_verification_key_type() const
DummySignService(const Runtime &rt)