esp8266ndn
NDN Arduino library for ESP8266 and more
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
null.hpp
Go to the documentation of this file.
1 #ifndef NDNPH_KEYCHAIN_NULL_HPP
2 #define NDNPH_KEYCHAIN_NULL_HPP
3 
4 #include "private-key.hpp"
5 #include "public-key.hpp"
6 
7 namespace ndnph {
8 
18 class NullKey
19  : public PrivateKey
20  , public PublicKey {
21 public:
22  static const NullKey& get() {
23  static NullKey instance;
24  return instance;
25  }
26 
27  size_t getMaxSigLen() const final {
28  return 0;
29  }
30 
31  void updateSigInfo(SigInfo& sigInfo) const final {
32  sigInfo.sigType = SigType::Null;
33  sigInfo.name = Name();
34  }
35 
36  ssize_t sign(std::initializer_list<tlv::Value>, uint8_t*) const final {
37  return 0;
38  }
39 
40  bool matchSigInfo(const SigInfo&) const final {
41  return true;
42  }
43 
44  bool verify(std::initializer_list<tlv::Value>, const uint8_t*, size_t) const final {
45  return true;
46  }
47 };
48 
49 } // namespace ndnph
50 
51 #endif // NDNPH_KEYCHAIN_NULL_HPP
Null signature: packet is not signed.
Definition: null.hpp:20
void updateSigInfo(SigInfo &sigInfo) const final
Write SigType and KeyLocator.
Definition: null.hpp:31
size_t getMaxSigLen() const final
Definition: null.hpp:27
bool verify(std::initializer_list< tlv::Value >, const uint8_t *, size_t) const final
Perform verification.
Definition: null.hpp:44
static const NullKey & get()
Definition: null.hpp:22
bool matchSigInfo(const SigInfo &) const final
Determine whether packet was signed by corresponding private key.
Definition: null.hpp:40
ssize_t sign(std::initializer_list< tlv::Value >, uint8_t *) const final
Perform signing.
Definition: null.hpp:36
Private key.
Definition: private-key.hpp:9
Public key.
Definition: public-key.hpp:9
SignatureInfo.
Definition: sig-info.hpp:12
@ Null
Definition: an.hpp:81
@ Name
Definition: an.hpp:19
Definition: fs.hpp:33