18 #include <hicn/transport/auth/common.h>
19 #include <hicn/transport/auth/crypto_hash.h>
20 #include <hicn/transport/auth/crypto_suite.h>
21 #include <hicn/transport/errors/errors.h>
22 #include <hicn/transport/utils/membuf.h>
25 #include <openssl/evp.h>
26 #include <openssl/hmac.h>
43 virtual void signPacket(
PacketPtr packet);
44 virtual void signBuffer(
const std::vector<uint8_t> &buffer);
48 std::vector<uint8_t> getSignature()
const;
51 virtual std::size_t getSignatureSize()
const;
56 virtual std::size_t getSignatureFieldSize()
const;
59 CryptoSuite getSuite()
const;
62 CryptoHashType getHashType()
const;
66 std::vector<uint8_t> signature_;
67 std::size_t signature_len_;
68 std::shared_ptr<EVP_PKEY> key_;
77 void signPacket(
PacketPtr packet)
override;
78 void signBuffer(
const std::vector<uint8_t> &buffer)
override;
89 std::shared_ptr<EVP_PKEY> pub_key);
91 std::size_t getSignatureFieldSize()
const override;