Vanetza
 
Loading...
Searching...
No Matches
hashed_id.hpp
1#ifndef CE45A952_0EE7_4D20_82CB_D42BF87F5B15
2#define CE45A952_0EE7_4D20_82CB_D42BF87F5B15
3
4#include <vanetza/security/sha.hpp>
5#include <array>
6#include <cstdint>
7#include <functional>
8
9namespace vanetza
10{
11namespace security
12{
13
14using HashedId8 = std::array<uint8_t, 8>;
15using HashedId3 = std::array<uint8_t, 3>;
16
17HashedId3 truncate(const HashedId8&);
18
19HashedId8 create_hashed_id8(const Sha256Digest&);
20HashedId8 create_hashed_id8(const Sha384Digest&);
21
22} // namespace security
23} // namespace vanetza
24
25namespace std
26{
27/// std::hash specialization for HashedId8
28template<> struct hash<vanetza::security::HashedId8>
29{
30 size_t operator()(const vanetza::security::HashedId8&) const;
31};
32} // namespace std
33
34#endif /* CE45A952_0EE7_4D20_82CB_D42BF87F5B15 */
STL namespace.