1#include <vanetza/security/hashed_id.hpp>
2#include <boost/functional/hash.hpp>
13HashedId3 truncate(
const HashedId8& in)
16 assert(out.size() <= in.size());
17 std::copy_n(in.rbegin(), out.size(), out.rbegin());
21HashedId8 create_hashed_id8(
const Sha256Digest& digest)
24 std::copy(digest.end() - 8, digest.end(), hashed.data());
28HashedId8 create_hashed_id8(
const Sha384Digest& digest)
31 std::copy(digest.end() - 8, digest.end(), hashed.data());
35std::string to_string(
const vanetza::security::HashedId3& digest)
38 ss << std::hex << std::setfill(
'0');
39 for (uint8_t octet : digest)
41 ss << std::setw(2) << static_cast<unsigned>(octet);
46std::string to_string(
const vanetza::security::HashedId8& digest)
49 ss << std::hex << std::setfill(
'0');
50 for (uint8_t octet : digest)
52 ss << std::setw(2) << static_cast<unsigned>(octet);
63size_t hash<vanetza::security::HashedId3>::operator()(
const vanetza::security::HashedId3& hid3)
const
66 for (uint8_t octet : hid3) {
67 boost::hash_combine(seed, octet);
72size_t hash<vanetza::security::HashedId8>::operator()(
const vanetza::security::HashedId8& hid8)
const
75 for (uint8_t octet : hid8) {
76 boost::hash_combine(seed, octet);