NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.3: NDN, CCN, CCNx, content centric networks
API Documentation
ndn::security::tpm::BackEndFile Class Reference

The back-end implementation of file-based TPM. More...

#include <back-end-file.hpp>

Inheritance diagram for ndn::security::tpm::BackEndFile:
Collaboration diagram for ndn::security::tpm::BackEndFile:

Classes

class  Error
 
class  Impl
 

Public Member Functions

 BackEndFile (const std::string &location="")
 Create file-based TPM backend. More...
 
 ~BackEndFile () override
 
- Public Member Functions inherited from ndn::security::tpm::BackEnd
virtual ~BackEnd ()
 
bool hasKey (const Name &keyName) const
 
unique_ptr< KeyHandlegetKeyHandle (const Name &keyName) const
 
unique_ptr< KeyHandlecreateKey (const Name &identity, const KeyParams &params)
 Create key for identity according to params. More...
 
void deleteKey (const Name &keyName)
 Delete a key with name keyName. More...
 
ConstBufferPtr exportKey (const Name &keyName, const char *pw, size_t pwLen)
 
void importKey (const Name &keyName, const uint8_t *pkcs8, size_t pkcs8Len, const char *pw, size_t pwLen)
 Import a private key in encrypted PKCS #8 format. More...
 
virtual bool isTerminalMode () const
 Check if TPM is in terminal mode. More...
 
virtual void setTerminalMode (bool isTerminal) const
 Set the terminal mode of TPM. More...
 
virtual bool isTpmLocked () const
 
virtual bool unlockTpm (const char *pw, size_t pwLen) const
 Unlock TPM. More...
 

Static Public Member Functions

static const std::string & getScheme ()
 

Additional Inherited Members

- Static Protected Member Functions inherited from ndn::security::tpm::BackEnd
static void setKeyName (KeyHandle &keyHandle, const Name &identity, const KeyParams &params)
 Set the key name in keyHandle according to identity and params. More...
 

Detailed Description

The back-end implementation of file-based TPM.

In this TPM, each private key is stored in a separate file with permission 0400, i.e., owner read-only. The key is stored in PKCS #1 format in base64 encoding.

Definition at line 41 of file back-end-file.hpp.

Constructor & Destructor Documentation

ndn::security::tpm::BackEndFile::BackEndFile ( const std::string &  location = "")
explicit

Create file-based TPM backend.

Parameters
locationDirectory to store private keys

Definition at line 79 of file back-end-file.cpp.

References ~BackEndFile().

ndn::security::tpm::BackEndFile::~BackEndFile ( )
overridedefault

Referenced by BackEndFile().

Member Function Documentation

const std::string & ndn::security::tpm::BackEndFile::getScheme ( )
static

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