esp8266ndn
NDN Arduino library for ESP8266 and more
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
ndnph::HmacKey Class Reference

HMAC-SHA256 secret key. More...

#include <hmac.hpp>

Inherits ndnph::detail::NamedPublicKey< SigType::HmacWithSha256 >, and ndnph::detail::NamedPrivateKey< SigType::HmacWithSha256 >.

Public Member Functions

 operator bool () const
 Determine if this key is non-empty. More...
 
bool import (const uint8_t *key, size_t keyLen)
 Import raw secret key bits. More...
 
size_t getMaxSigLen () const final
 
ssize_t sign (std::initializer_list< tlv::Value > chunks, uint8_t *sig) const final
 Perform signing. More...
 
bool verify (std::initializer_list< tlv::Value > chunks, const uint8_t *sig, size_t sigLen) const final
 Perform verification. More...
 
- Public Member Functions inherited from ndnph::detail::NamedPublicKey< SigType::HmacWithSha256 >
bool matchSigInfo (const SigInfo &sigInfo) const override
 Determine whether packet was signed by corresponding private key. More...
 
- Public Member Functions inherited from ndnph::PublicKey
virtual ~PublicKey ()=default
 
- Public Member Functions inherited from ndnph::detail::NamedKey
const NamegetName () const
 Retrieve KeyLocator name. More...
 
void setName (const Name &v)
 Assign KeyLocator name. More...
 
- Public Member Functions inherited from ndnph::detail::NamedPrivateKey< SigType::HmacWithSha256 >
void updateSigInfo (SigInfo &sigInfo) const override
 Write SigType and KeyLocator. More...
 
- Public Member Functions inherited from ndnph::PrivateKey
virtual ~PrivateKey ()=default
 

Additional Inherited Members

- Protected Member Functions inherited from ndnph::detail::NamedKey
 ~NamedKey ()=default
 

Detailed Description

HMAC-SHA256 secret key.

Member Function Documentation

◆ getMaxSigLen()

size_t ndnph::HmacKey::getMaxSigLen ( ) const
inlinefinalvirtual

Implements ndnph::PrivateKey.

◆ import()

bool ndnph::HmacKey::import ( const uint8_t *  key,
size_t  keyLen 
)
inline

Import raw secret key bits.

Parameters
keyraw key bits; will be copied if necessary.
keyLenkey length in octets.
Returns
whether success.

◆ operator bool()

ndnph::HmacKey::operator bool ( ) const
inlineexplicit

Determine if this key is non-empty.

◆ sign()

ssize_t ndnph::HmacKey::sign ( std::initializer_list< tlv::Value chunks,
uint8_t *  sig 
) const
inlinefinalvirtual

Perform signing.

Parameters
chunkssigned portion.
[out]sigsignature buffer, with getMaxSigLen() room.
Returns
signature length, or -1 upon failure.

Implements ndnph::PrivateKey.

◆ verify()

bool ndnph::HmacKey::verify ( std::initializer_list< tlv::Value chunks,
const uint8_t *  sig,
size_t  sigLen 
) const
inlinefinalvirtual

Perform verification.

Return values
truesignature is correct.
falseerror or signature is incorrect.

Implements ndnph::PublicKey.


The documentation for this class was generated from the following file: