Namespaces | |
detail | |
pib | |
tpm | |
transform | |
v2 | |
validator_config | |
Classes | |
class | AdditionalDescription |
Represents an AdditionalDescription TLV element. More... | |
class | CertContainerInterface |
class | Certificate |
Represents an NDN certificate. More... | |
class | CertificateBundleFetcher |
Fetch certificate bundle from the network. More... | |
class | CertificateCache |
Represents a container for verified certificates. More... | |
class | CertificateFetcher |
Interface used by the validator to fetch missing certificates. More... | |
class | CertificateFetcherDirectFetch |
Extends CertificateFetcherFromNetwork to fetch certificates from the incoming face of the packet. More... | |
class | CertificateFetcherFromNetwork |
Fetch missing keys from the network. More... | |
class | CertificateFetcherOffline |
Certificate fetcher realization that does not fetch keys (always offline) More... | |
class | CertificateRequest |
Request for a certificate, associated with the number of attempts. More... | |
class | CertificateStorage |
Storage for trusted anchors, verified certificate cache, and unverified certificate cache. More... | |
class | DataValidationState |
Validation state for a data packet. More... | |
class | DynamicTrustAnchorGroup |
Dynamic trust anchor group. More... | |
class | InterestSigner |
Helper class to create signed Interests. More... | |
class | InterestValidationState |
Validation state for an interest packet. More... | |
class | KeyChain |
The main interface for signing key management. More... | |
struct | MakeCertificateOptions |
Options to KeyChain::makeCertificate() . More... | |
class | SafeBag |
A secured container for sensitive information (certificate, private key) More... | |
class | SigningInfo |
Signing parameters passed to KeyChain. More... | |
class | StaticTrustAnchorGroup |
Static trust anchor group. More... | |
class | TrustAnchorContainer |
A container for trust anchors. More... | |
class | TrustAnchorGroup |
A group of trust anchors. More... | |
class | ValidationError |
Validation error code and optional detailed error message. More... | |
class | ValidationPolicy |
Abstraction that implements a validation policy for Interest and Data packets. More... | |
class | ValidationPolicyAcceptAll |
A validator policy that accepts any signature of data and interest packets. More... | |
class | ValidationPolicyCommandInterest |
Validation policy for stop-and-wait command Interests. More... | |
class | ValidationPolicySignedInterest |
Validation policy for signed Interests. More... | |
class | ValidationPolicySimpleHierarchy |
Validation policy for a simple hierarchical trust model. More... | |
class | ValidationState |
Validation state. More... | |
class | Validator |
Interface for validating data and interest packets. More... | |
class | ValidatorConfig |
Helper for validator that uses SignedInterest + CommandInterest + Config policy and NetworkFetcher. More... | |
class | ValidatorNull |
Validator with "accept-all" policy and offline certificate fetcher. More... | |
class | ValidityPeriod |
Represents a ValidityPeriod TLV element. More... | |
Typedefs | |
using | DataValidationFailureCallback = std::function< void(const Data &, const ValidationError &)> |
Callback to report a failed Data validation. More... | |
using | DataValidationSuccessCallback = std::function< void(const Data &)> |
Callback to report a successful Data validation. More... | |
using | InterestValidationFailureCallback = std::function< void(const Interest &, const ValidationError &)> |
Callback to report a failed Interest validation. More... | |
using | InterestValidationSuccessCallback = std::function< void(const Interest &)> |
Callback to report a successful Interest validation. More... | |
using | SignedInterestFormatTag = SimpleTag< SignedInterestFormat, 1002 > |
Enumerations | |
enum class | SignedInterestFormat { V03 , V02 } |
Functions | |
template size_t | AdditionalDescription ::wireEncode<::ndn::encoding::EncoderTag > (::ndn::EncodingBuffer &) const |
template size_t | AdditionalDescription ::wireEncode<::ndn::encoding::EstimatorTag > (::ndn::EncodingEstimator &) const |
Name | constructKeyName (const Name &identity, const name::Component &keyId) |
Construct key name based on the appropriate naming conventions. More... | |
Name | extractIdentityFromCertName (const Name &certName) |
Extract identity namespace from the certificate name certName . More... | |
Name | extractIdentityFromKeyName (const Name &keyName) |
Extract identity namespace from the key name keyName . More... | |
Name | extractIdentityNameFromKeyLocator (const Name &keyLocator) |
Extract identity name from key, version-less certificate, or certificate name. More... | |
Name | extractKeyNameFromCertName (const Name &certName) |
Extract key name from the certificate name certName . More... | |
Validator & | getAcceptAllValidator () |
Name | getKeyLocatorName (const SignatureInfo &sigInfo, ValidationState &state) |
Extract the KeyLocator name from a SignatureInfo element. More... | |
SignatureInfo | getSignatureInfo (const Interest &interest, ValidationState &state) |
Extract SignatureInfo from a signed Interest. More... | |
bool | isValidKeyName (const Name &keyName) |
Check if keyName follow the naming conventions for the key name. More... | |
std::ostream & | operator<< (std::ostream &os, const AdditionalDescription &desc) |
std::ostream & | operator<< (std::ostream &os, const Certificate &cert) |
std::ostream & | operator<< (std::ostream &os, const SignedInterestFormat &format) |
std::ostream & | operator<< (std::ostream &os, const SigningInfo &si) |
std::ostream & | operator<< (std::ostream &os, const ValidityPeriod &period) |
std::ostream & | operator<< (std::ostream &os, ValidationError::Code code) |
template size_t | SafeBag ::wireEncode<::ndn::encoding::EncoderTag > (::ndn::EncodingBuffer &) const |
template size_t | SafeBag ::wireEncode<::ndn::encoding::EstimatorTag > (::ndn::EncodingEstimator &) const |
SigningInfo | signingByCertificate (const Certificate &cert) |
Return a SigningInfo for signing with a certificate. More... | |
SigningInfo | signingByCertificate (const Name &certName) |
Return a SigningInfo for signing with a certificate. More... | |
SigningInfo | signingByIdentity (const Identity &identity) |
Return a SigningInfo for signing with an identity. More... | |
SigningInfo | signingByIdentity (const Name &identityName) |
Return a SigningInfo for signing with an identity. More... | |
SigningInfo | signingByKey (const Key &key) |
Return a SigningInfo for signing with a key. More... | |
SigningInfo | signingByKey (const Name &keyName) |
Return a SigningInfo for signing with a key. More... | |
SigningInfo | signingWithSha256 () |
Return a SigningInfo for signing with a SHA-256 digest. More... | |
template size_t | ValidityPeriod ::wireEncode<::ndn::encoding::EncoderTag > (::ndn::EncodingBuffer &) const |
template size_t | ValidityPeriod ::wireEncode<::ndn::encoding::EstimatorTag > (::ndn::EncodingEstimator &) const |
bool | verifySignature (const Data &data, const optional< Certificate > &cert) |
Verify data using cert . More... | |
bool | verifySignature (const Data &data, const pib::Key &key) |
Verify data using key . More... | |
bool | verifySignature (const Data &data, const tpm::Tpm &tpm, const Name &keyName, DigestAlgorithm digestAlgorithm) |
Verify data using tpm and keyName with the digestAlgorithm . More... | |
bool | verifySignature (const Data &data, const transform::PublicKey &key) |
Verify data using key . More... | |
bool | verifySignature (const Data &data, span< const uint8_t > key) |
Verify data using key . More... | |
bool | verifySignature (const InputBuffers &blobs, span< const uint8_t > sig, const transform::PublicKey &key) |
Verify blobs using key against sig . More... | |
bool | verifySignature (const InputBuffers &blobs, span< const uint8_t > sig, span< const uint8_t > key) |
Verify blobs using key against sig . More... | |
bool | verifySignature (const Interest &interest, const optional< Certificate > &cert) |
Verify interest using cert . More... | |
bool | verifySignature (const Interest &interest, const pib::Key &key) |
Verify interest using key . More... | |
bool | verifySignature (const Interest &interest, const tpm::Tpm &tpm, const Name &keyName, DigestAlgorithm digestAlgorithm) |
Verify interest using tpm and keyName with the digestAlgorithm . More... | |
bool | verifySignature (const Interest &interest, const transform::PublicKey &key) |
Verify interest using key . More... | |
bool | verifySignature (const Interest &interest, span< const uint8_t > key) |
Verify interest using key . More... | |
Variables | |
const name::Component | SELF ("self") |
|
strong |
Enumerator | |
---|---|
V03 | Sign Interest using Packet Specification v0.3 semantics. |
V02 | Sign Interest using Packet Specification v0.2 semantics. |
Definition at line 39 of file signing-info.hpp.
std::ostream & ndn::security::operator<< | ( | std::ostream & | os, |
const SignedInterestFormat & | format | ||
) |
Definition at line 207 of file signing-info.cpp.
std::ostream & ndn::security::operator<< | ( | std::ostream & | os, |
const SigningInfo & | si | ||
) |
Definition at line 187 of file signing-info.cpp.
std::ostream & ndn::security::operator<< | ( | std::ostream & | os, |
const ValidityPeriod & | period | ||
) |
Definition at line 159 of file validity-period.cpp.
template size_t ndn::security::SafeBag ::wireEncode<::ndn::encoding::EncoderTag > | ( | ::ndn::EncodingBuffer & | ) | const |
template size_t ndn::security::SafeBag ::wireEncode<::ndn::encoding::EstimatorTag > | ( | ::ndn::EncodingEstimator & | ) | const |
SigningInfo ndn::security::signingByCertificate | ( | const Certificate & | cert | ) |
Return a SigningInfo for signing with a certificate.
Definition at line 58 of file signing-helpers.cpp.
SigningInfo ndn::security::signingByCertificate | ( | const Name & | certName | ) |
Return a SigningInfo for signing with a certificate.
Definition at line 52 of file signing-helpers.cpp.
SigningInfo ndn::security::signingByIdentity | ( | const Identity & | identity | ) |
Return a SigningInfo for signing with an identity.
Definition at line 34 of file signing-helpers.cpp.
SigningInfo ndn::security::signingByIdentity | ( | const Name & | identityName | ) |
Return a SigningInfo for signing with an identity.
Definition at line 28 of file signing-helpers.cpp.
SigningInfo ndn::security::signingByKey | ( | const Key & | key | ) |
Return a SigningInfo for signing with a key.
Definition at line 46 of file signing-helpers.cpp.
SigningInfo ndn::security::signingByKey | ( | const Name & | keyName | ) |
Return a SigningInfo for signing with a key.
Definition at line 40 of file signing-helpers.cpp.
SigningInfo ndn::security::signingWithSha256 | ( | ) |
Return a SigningInfo for signing with a SHA-256 digest.
Definition at line 64 of file signing-helpers.cpp.
template size_t ndn::security::ValidityPeriod ::wireEncode<::ndn::encoding::EncoderTag > | ( | ::ndn::EncodingBuffer & | ) | const |
template size_t ndn::security::ValidityPeriod ::wireEncode<::ndn::encoding::EstimatorTag > | ( | ::ndn::EncodingEstimator & | ) | const |
bool ndn::security::verifySignature | ( | const Data & | data, |
const optional< Certificate > & | cert | ||
) |
Verify data
using cert
.
If cert
is nullopt, data
assumed to be self-verifiable (with digest or attributes)
Definition at line 219 of file verification-helpers.cpp.
Verify data
using key
.
Definition at line 207 of file verification-helpers.cpp.
bool ndn::security::verifySignature | ( | const Data & | data, |
const tpm::Tpm & | tpm, | ||
const Name & | keyName, | ||
DigestAlgorithm | digestAlgorithm | ||
) |
Verify data
using tpm
and keyName
with the digestAlgorithm
.
Definition at line 251 of file verification-helpers.cpp.
bool ndn::security::verifySignature | ( | const Data & | data, |
const transform::PublicKey & | key | ||
) |
Verify data
using key
.
Definition at line 195 of file verification-helpers.cpp.
bool ndn::security::verifySignature | ( | const Data & | data, |
span< const uint8_t > | key | ||
) |
Verify data
using key
.
key
must be a public key in PKCS #8 format. Definition at line 183 of file verification-helpers.cpp.
bool ndn::security::verifySignature | ( | const InputBuffers & | blobs, |
span< const uint8_t > | sig, | ||
const transform::PublicKey & | key | ||
) |
Verify blobs
using key
against sig
.
Definition at line 65 of file verification-helpers.cpp.
bool ndn::security::verifySignature | ( | const InputBuffers & | blobs, |
span< const uint8_t > | sig, | ||
span< const uint8_t > | key | ||
) |
Verify blobs
using key
against sig
.
key
must be a public key in PKCS #8 format. Definition at line 81 of file verification-helpers.cpp.
bool ndn::security::verifySignature | ( | const Interest & | interest, |
const optional< Certificate > & | cert | ||
) |
Verify interest
using cert
.
If cert
is nullptr, interest
assumed to be self-verifiable (with digest or attributes)
Definition at line 235 of file verification-helpers.cpp.
Verify interest
using key
.
Definition at line 213 of file verification-helpers.cpp.
bool ndn::security::verifySignature | ( | const Interest & | interest, |
const tpm::Tpm & | tpm, | ||
const Name & | keyName, | ||
DigestAlgorithm | digestAlgorithm | ||
) |
Verify interest
using tpm
and keyName
with the digestAlgorithm
.
Definition at line 258 of file verification-helpers.cpp.
bool ndn::security::verifySignature | ( | const Interest & | interest, |
const transform::PublicKey & | key | ||
) |
Verify interest
using key
.
Definition at line 201 of file verification-helpers.cpp.
bool ndn::security::verifySignature | ( | const Interest & | interest, |
span< const uint8_t > | key | ||
) |
Verify interest
using key
.
key
must be a public key in PKCS #8 format. Definition at line 189 of file verification-helpers.cpp.