#include "detail/config.hpp"
#include <functional>
#include <stdexcept>
#include <ndn-cxx/data.hpp>
#include <ndn-cxx/encoding/buffer-stream.hpp>
#include <ndn-cxx/face.hpp>
#include <ndn-cxx/ims/in-memory-storage-persistent.hpp>
#include <ndn-cxx/interest.hpp>
#include <ndn-cxx/security/certificate.hpp>
#include <ndn-cxx/security/key-chain.hpp>
#include <ndn-cxx/security/signing-info.hpp>
#include <ndn-cxx/security/transform/public-key.hpp>
#include <ndn-cxx/security/validation-callback.hpp>
#include <ndn-cxx/security/validation-error.hpp>
#include <ndn-cxx/security/validator.hpp>
#include <boost/assert.hpp>
Go to the source code of this file.
Classes | |
class | ndn::nac::Error |
Namespaces | |
ndn | |
ndn::nac | |
ndn::nac::tlv | |
Macros | |
#define | NAC_PROTECTED_WITH_TESTS_ELSE_PRIVATE private |
#define | NAC_PUBLIC_WITH_TESTS_ELSE_PRIVATE private |
#define | NAC_PUBLIC_WITH_TESTS_ELSE_PROTECTED protected |
#define | NAC_VIRTUAL_WITH_TESTS |
Typedefs | |
using | ndn::nac::ErrorCallback = std::function< void(const ErrorCode &, const std::string &)> |
Enumerations | |
enum | { ndn::nac::tlv::EncryptedContent = 130 , ndn::nac::tlv::EncryptedPayload = 132 , ndn::nac::tlv::InitializationVector = 133 , ndn::nac::tlv::EncryptedPayloadKey = 134 } |
enum class | ndn::nac::ErrorCode { ndn::nac::KekRetrievalFailure = 1 , ndn::nac::KekRetrievalTimeout = 2 , ndn::nac::KekInvalidName = 3 , ndn::nac::KdkRetrievalFailure = 11 , ndn::nac::KdkRetrievalTimeout = 12 , ndn::nac::KdkInvalidName = 13 , ndn::nac::KdkDecryptionFailure = 14 , ndn::nac::CkRetrievalFailure = 21 , ndn::nac::CkRetrievalTimeout = 22 , ndn::nac::CkInvalidName = 23 , ndn::nac::MissingRequiredKeyLocator = 101 , ndn::nac::TpmKeyNotFound = 102 , ndn::nac::EncryptionFailure = 103 } |
Functions | |
Name | ndn::nac::convertKekNameToKdkPrefix (const Name &kekName, const ErrorCallback &onFailure) |
Convert KEK name to KDK prefix: More... | |
std::tuple< Name, Name, Name > | ndn::nac::extractKdkInfoFromCkName (const Name &ckDataName, const Name &ckName, const ErrorCallback &onFailure) |
Extract KDK information from name of CK data packet name. More... | |
Variables | |
constexpr size_t | ndn::nac::AES_IV_SIZE = 16 |
constexpr size_t | ndn::nac::AES_KEY_SIZE = 32 |
const name::Component | ndn::nac::CK {"CK"} |
constexpr time::seconds | ndn::nac::DEFAULT_CK_FRESHNESS_PERIOD = 1_h |
constexpr time::seconds | ndn::nac::DEFAULT_KDK_FRESHNESS_PERIOD = 1_h |
constexpr time::seconds | ndn::nac::DEFAULT_KEK_FRESHNESS_PERIOD = 1_h |
const name::Component | ndn::nac::ENCRYPTED_BY {"ENCRYPTED-BY"} |
const name::Component | ndn::nac::KDK {"KDK"} |
const name::Component | ndn::nac::KEK {"KEK"} |
const name::Component | ndn::nac::NAC {"NAC"} |
constexpr time::seconds | ndn::nac::RETRY_DELAY_AFTER_NACK = 1_s |
constexpr time::seconds | ndn::nac::RETRY_DELAY_KEK_RETRIEVAL = 60_s |
#define NAC_PROTECTED_WITH_TESTS_ELSE_PRIVATE private |
Definition at line 34 of file common.hpp.
#define NAC_PUBLIC_WITH_TESTS_ELSE_PRIVATE private |
Definition at line 33 of file common.hpp.
#define NAC_PUBLIC_WITH_TESTS_ELSE_PROTECTED protected |
Definition at line 32 of file common.hpp.
#define NAC_VIRTUAL_WITH_TESTS |
Definition at line 31 of file common.hpp.