The back-end implementation of a file-based TPM. More...
#include <back-end-file.hpp>


Classes | |
| class | Impl |
Public Member Functions | |
| BackEndFile (const std::string &location="") | |
| Create file-based TPM backend. More... | |
| ~BackEndFile () final | |
Public Member Functions inherited from ndn::security::tpm::BackEnd | |
| virtual | ~BackEnd () |
| bool | hasKey (const Name &keyName) const |
Check if the key with name keyName exists in the TPM. More... | |
| unique_ptr< KeyHandle > | getKeyHandle (const Name &keyName) const |
Get the handle of the key with name keyName. More... | |
| unique_ptr< KeyHandle > | createKey (const Name &identityName, const KeyParams ¶ms) |
Create a key for identityName according to params. More... | |
| void | deleteKey (const Name &keyName) |
Delete the key with name keyName. More... | |
| ConstBufferPtr | exportKey (const Name &keyName, const char *pw, size_t pwLen) |
Get the private key with name keyName in encrypted PKCS #8 format. More... | |
| 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... | |
| void | importKey (const Name &keyName, shared_ptr< transform::PrivateKey > key) |
| Import a private key. More... | |
| virtual bool | isTerminalMode () const |
| Check if the TPM is in terminal mode. More... | |
| virtual void | setTerminalMode (bool isTerminal) const |
| Set the terminal mode of the TPM. More... | |
| virtual bool | isTpmLocked () const |
| Check if the TPM is locked. More... | |
| virtual NDN_CXX_NODISCARD bool | unlockTpm (const char *pw, size_t pwLen) const |
| Unlock the TPM. More... | |
Static Public Member Functions | |
| static const std::string & | getScheme () |
Additional Inherited Members | |
Public Types inherited from ndn::security::tpm::BackEnd | |
| using | Error = Tpm::Error |
Protected Member Functions inherited from ndn::security::tpm::BackEnd | |
| Name | constructAsymmetricKeyName (const KeyHandle &key, const Name &identity, const KeyParams ¶ms) const |
Construct and return the name of a RSA or EC key, based on identity and params. More... | |
| Name | constructHmacKeyName (const transform::PrivateKey &key, const Name &identity, const KeyParams ¶ms) const |
Construct and return the name of a HMAC key, based on identity and params. More... | |
The back-end implementation of a 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 42 of file back-end-file.hpp.
|
explicit |
Create file-based TPM backend.
| location | Directory to store private keys. |
Definition at line 85 of file back-end-file.cpp.
|
finaldefault |
|
static |
Definition at line 93 of file back-end-file.cpp.