diff options
Diffstat (limited to 'libtransport/includes')
6 files changed, 21 insertions, 19 deletions
diff --git a/libtransport/includes/hicn/transport/auth/crypto_hash.h b/libtransport/includes/hicn/transport/auth/crypto_hash.h index 3c734fee3..29ea27114 100644 --- a/libtransport/includes/hicn/transport/auth/crypto_hash.h +++ b/libtransport/includes/hicn/transport/auth/crypto_hash.h @@ -62,7 +62,7 @@ class CryptoHash { void computeDigest(const utils::MemBuf *buffer); // Return the computed hash - std::vector<uint8_t> getDigest() const; + const utils::MemBuf::Ptr &getDigest() const; // Return the computed hash as a string std::string getStringDigest() const; @@ -94,7 +94,7 @@ class CryptoHash { private: CryptoHashType digest_type_; - std::vector<uint8_t> digest_; + utils::MemBuf::Ptr digest_; std::size_t digest_size_; }; diff --git a/libtransport/includes/hicn/transport/auth/signer.h b/libtransport/includes/hicn/transport/auth/signer.h index 5a7598991..e1b3cae5c 100644 --- a/libtransport/includes/hicn/transport/auth/signer.h +++ b/libtransport/includes/hicn/transport/auth/signer.h @@ -46,9 +46,9 @@ class Signer { virtual void signBuffer(const utils::MemBuf *buffer); // Return the signature. - std::vector<uint8_t> getSignature() const; + const utils::MemBuf::Ptr &getSignature() const; - // Return the signature as a string + // Return the signature as a string. std::string getStringSignature() const; // Return the signature size in bytes. @@ -65,12 +65,12 @@ class Signer { // Return the hash algorithm associated to the signer. CryptoHashType getHashType() const; - // Print signature to stdout + // Print signature to stdout. void display(); protected: CryptoSuite suite_; - std::vector<uint8_t> signature_; + utils::MemBuf::Ptr signature_; std::size_t signature_len_; std::shared_ptr<EVP_PKEY> key_; CryptoHash key_id_; diff --git a/libtransport/includes/hicn/transport/auth/verifier.h b/libtransport/includes/hicn/transport/auth/verifier.h index 677a1efe4..c89138339 100644 --- a/libtransport/includes/hicn/transport/auth/verifier.h +++ b/libtransport/includes/hicn/transport/auth/verifier.h @@ -55,10 +55,10 @@ class Verifier { // Verify a single packet or buffer. virtual bool verifyPacket(PacketPtr packet); virtual bool verifyBuffer(const std::vector<uint8_t> &buffer, - const std::vector<uint8_t> &signature, + const utils::MemBuf::Ptr &signature, CryptoHashType hash_type) = 0; virtual bool verifyBuffer(const utils::MemBuf *buffer, - const std::vector<uint8_t> &signature, + const utils::MemBuf::Ptr &signature, CryptoHashType hash_type) = 0; // Verify a batch of packets. Return a mapping from packet suffixes to their @@ -111,10 +111,10 @@ class VoidVerifier : public Verifier { public: bool verifyPacket(PacketPtr packet) override; bool verifyBuffer(const std::vector<uint8_t> &buffer, - const std::vector<uint8_t> &signature, + const utils::MemBuf::Ptr &signature, CryptoHashType hash_type) override; bool verifyBuffer(const utils::MemBuf *buffer, - const std::vector<uint8_t> &signature, + const utils::MemBuf::Ptr &signature, CryptoHashType hash_type) override; PolicyMap verifyPackets(const std::vector<PacketPtr> &packets) override; @@ -144,10 +144,10 @@ class AsymmetricVerifier : public Verifier { void useCertificate(std::shared_ptr<X509> cert); bool verifyBuffer(const std::vector<uint8_t> &buffer, - const std::vector<uint8_t> &signature, + const utils::MemBuf::Ptr &signature, CryptoHashType hash_type) override; bool verifyBuffer(const utils::MemBuf *buffer, - const std::vector<uint8_t> &signature, + const utils::MemBuf::Ptr &signature, CryptoHashType hash_type) override; private: @@ -167,10 +167,10 @@ class SymmetricVerifier : public Verifier { void setPassphrase(const std::string &passphrase); bool verifyBuffer(const std::vector<uint8_t> &buffer, - const std::vector<uint8_t> &signature, + const utils::MemBuf::Ptr &signature, CryptoHashType hash_type) override; bool verifyBuffer(const utils::MemBuf *buffer, - const std::vector<uint8_t> &signature, + const utils::MemBuf::Ptr &signature, CryptoHashType hash_type) override; protected: diff --git a/libtransport/includes/hicn/transport/core/packet.h b/libtransport/includes/hicn/transport/core/packet.h index 059430f1d..c1671d439 100644 --- a/libtransport/includes/hicn/transport/core/packet.h +++ b/libtransport/includes/hicn/transport/core/packet.h @@ -151,13 +151,13 @@ class Packet : public utils::MemBuf, // Authentication Header methods bool hasAH() const; - std::vector<uint8_t> getSignature() const; + utils::MemBuf::Ptr getSignature() const; std::size_t getSignatureFieldSize() const; std::size_t getSignatureSize() const; uint64_t getSignatureTimestamp() const; auth::KeyId getKeyId() const; auth::CryptoSuite getValidationAlgorithm() const; - void setSignature(const std::vector<uint8_t> &signature); + void setSignature(const utils::MemBuf::Ptr &signature); void setSignatureFieldSize(std::size_t size); void setSignatureSize(std::size_t size); void setSignatureTimestamp(const uint64_t ×tamp_ms); diff --git a/libtransport/includes/hicn/transport/interfaces/socket_options_default_values.h b/libtransport/includes/hicn/transport/interfaces/socket_options_default_values.h index 04454852b..0e19ae629 100644 --- a/libtransport/includes/hicn/transport/interfaces/socket_options_default_values.h +++ b/libtransport/includes/hicn/transport/interfaces/socket_options_default_values.h @@ -53,8 +53,9 @@ static constexpr uint32_t key_locator_size = 60; // bytes static constexpr uint32_t limit_guard = 80; // bytes static constexpr uint32_t digest_size = 34; // bytes static constexpr uint32_t max_out_of_order_segments = 3; // content object -static constexpr uint32_t max_unverified_delay = 2001; // milliseconds -static constexpr uint32_t manifest_capacity = 30; +static constexpr uint32_t unverified_interval = 60000; // milliseconds +static constexpr double unverified_ratio = 0.2; +static constexpr uint32_t manifest_capacity = 20; // RAAQM static constexpr int sample_number = 30; diff --git a/libtransport/includes/hicn/transport/interfaces/socket_options_keys.h b/libtransport/includes/hicn/transport/interfaces/socket_options_keys.h index 90f218770..6cba50d8b 100644 --- a/libtransport/includes/hicn/transport/interfaces/socket_options_keys.h +++ b/libtransport/includes/hicn/transport/interfaces/socket_options_keys.h @@ -58,7 +58,6 @@ typedef enum { INTEREST_LIFETIME = 107, CONTENT_OBJECT_EXPIRY_TIME = 108, MAX_SEGMENT_SIZE = 109, - MAX_UNVERIFIED_TIME = 110, MIN_WINDOW_SIZE = 111, MAX_WINDOW_SIZE = 112, CURRENT_WINDOW_SIZE = 113, @@ -70,6 +69,8 @@ typedef enum { HASH_ALGORITHM = 119, SIGNER = 121, VERIFIER = 122, + UNVERIFIED_INTERVAL = 123, + UNVERIFIED_RATIO = 124, STATS_INTERVAL = 125, SUFFIX_STRATEGY = 126, PACKET_FORMAT = 127, |