|
IBR-DTN
1.0.0
|
#include <SecurityKeyManager.h>


Classes | |
| class | PathNotFoundException |
Static Public Member Functions | |
| static SecurityKeyManager & | getInstance () |
Definition at line 37 of file SecurityKeyManager.h.
|
virtual |
Definition at line 52 of file SecurityKeyManager.cpp.
| dtn::security::SecurityKey dtn::security::SecurityKeyManager::get | ( | const dtn::data::EID & | ref, |
| const dtn::security::SecurityKey::KeyType | type = dtn::security::SecurityKey::KEY_UNSPEC |
||
| ) | const | ||
| throw | ( | SecurityKey::KeyNotFoundException | |
| ) | |||
Get a security key from the standard key path
Definition at line 165 of file SecurityKeyManager.cpp.
References dtn::security::SecurityKey::file, dtn::daemon::Configuration::Security::getBABDefaultKey(), dtn::daemon::Configuration::getInstance(), dtn::data::EID::getNode(), dtn::daemon::Configuration::getSecurity(), dtn::security::SecurityKey::KEY_SHARED, dtn::security::SecurityKey::reference, and dtn::security::SecurityKey::type.
Referenced by dtn::security::SecurityManager::auth(), dtn::security::QRCodeProtocol::begin(), dtn::security::NoneProtocol::begin(), dtn::security::HashProtocol::begin(), dtn::security::SecurityManager::decrypt(), dtn::security::SecurityManager::encrypt(), dtn::security::KeyExchanger::finish(), dtn::security::KeyExchangeSession::getKey(), dtn::daemon::NativeDaemon::getKeyInfo(), dtn::daemon::NativeDaemon::removeKey(), dtn::security::SecurityManager::sign(), dtn::security::NoneProtocol::step(), dtn::security::HashProtocol::step(), dtn::security::JPAKEProtocol::step(), dtn::security::DHProtocol::step(), dtn::security::SecurityManager::verifyAuthentication(), and dtn::security::SecurityManager::verifyIntegrity().

| dtn::security::SecurityKey dtn::security::SecurityKeyManager::get | ( | const std::string & | prefix, |
| const dtn::data::EID & | ref, | ||
| const dtn::security::SecurityKey::KeyType | type = dtn::security::SecurityKey::KEY_UNSPEC |
||
| ) | const | ||
| throw | ( | SecurityKey::KeyNotFoundException | |
| ) | |||
Get a security key from the prefixed path
Definition at line 152 of file SecurityKeyManager.cpp.
References dtn::security::SecurityKey::file, dtn::data::EID::getNode(), dtn::security::SecurityKey::reference, and dtn::security::SecurityKey::type.

| const ibrcommon::File dtn::security::SecurityKeyManager::getFilePath | ( | const std::string & | keyword, |
| const std::string & | extension | ||
| ) | const |
Returns the path to a security related file based on the keyword.
Definition at line 294 of file SecurityKeyManager.cpp.
Referenced by dtn::security::DHProtocol::initialize().
|
static |
Definition at line 42 of file SecurityKeyManager.cpp.
Referenced by dtn::security::SecurityManager::auth(), dtn::security::NoneProtocol::begin(), dtn::security::QRCodeProtocol::begin(), dtn::security::HashProtocol::begin(), dtn::security::KeyExchangeSession::clearKeys(), dtn::security::SecurityManager::decrypt(), dtn::security::SecurityManager::encrypt(), dtn::security::KeyExchanger::finish(), dtn::security::KeyExchangeSession::getKey(), dtn::daemon::NativeDaemon::getKeyInfo(), dtn::security::DHProtocol::initialize(), dtn::security::KeyExchangeSession::putKey(), dtn::daemon::NativeDaemon::removeKey(), dtn::daemon::NativeDaemon::setConfigFile(), dtn::security::SecurityManager::sign(), dtn::security::NoneProtocol::step(), dtn::security::HashProtocol::step(), dtn::security::JPAKEProtocol::step(), dtn::security::DHProtocol::step(), dtn::security::SecurityManager::verifyAuthentication(), and dtn::security::SecurityManager::verifyIntegrity().
| const ibrcommon::File dtn::security::SecurityKeyManager::getKeyFile | ( | const std::string & | prefix, |
| const dtn::data::EID & | peer, | ||
| const dtn::security::SecurityKey::KeyType | type = dtn::security::SecurityKey::KEY_UNSPEC |
||
| ) | const |
Returns the prefixes path to the key of given type
Definition at line 276 of file SecurityKeyManager.cpp.
References dtn::security::SecurityKey::KEY_PRIVATE, dtn::security::SecurityKey::KEY_PUBLIC, and dtn::security::SecurityKey::KEY_SHARED.
| const ibrcommon::File dtn::security::SecurityKeyManager::getKeyFile | ( | const dtn::data::EID & | peer, |
| const dtn::security::SecurityKey::KeyType | type = dtn::security::SecurityKey::KEY_UNSPEC |
||
| ) | const |
Returns the path to the key of given type
Definition at line 258 of file SecurityKeyManager.cpp.
References dtn::security::SecurityKey::KEY_PRIVATE, dtn::security::SecurityKey::KEY_PUBLIC, and dtn::security::SecurityKey::KEY_SHARED.
| bool dtn::security::SecurityKeyManager::hasKey | ( | const dtn::data::EID & | ref, |
| const dtn::security::SecurityKey::KeyType | type = dtn::security::SecurityKey::KEY_UNSPEC |
||
| ) | const |
Checks if a security key exists
Definition at line 102 of file SecurityKeyManager.cpp.
References getKeyFile().

|
virtual | ||||||||||||||
Listen for changes of the configuration
Implements dtn::daemon::Configuration::OnChangeListener.
Definition at line 56 of file SecurityKeyManager.cpp.
References dtn::daemon::Configuration::Security::enabled(), dtn::daemon::Configuration::Security::getCertificate(), dtn::daemon::Configuration::Security::getKey(), dtn::daemon::Configuration::Security::getPath(), dtn::data::EID::getString(), dtn::security::SecurityKey::KEY_PUBLIC, and dtn::core::BundleCore::local.
Referenced by dtn::daemon::NativeDaemon::setConfigFile().

| void dtn::security::SecurityKeyManager::remove | ( | const SecurityKey & | key | ) |
Remove a security key
Definition at line 248 of file SecurityKeyManager.cpp.
References dtn::security::SecurityKey::file, and dtn::security::SecurityKey::getMetaFilename().
Referenced by dtn::security::KeyExchangeSession::clearKeys(), and dtn::daemon::NativeDaemon::removeKey().

| void dtn::security::SecurityKeyManager::store | ( | const dtn::security::SecurityKey & | key, |
| const std::string & | data | ||
| ) |
Store a security key in the standard key path
Definition at line 216 of file SecurityKeyManager.cpp.
References dtn::security::SecurityKey::file, getKeyFile(), dtn::security::SecurityKey::getMetaFilename(), dtn::security::SecurityKey::reference, and dtn::security::SecurityKey::type.
Referenced by dtn::security::KeyExchanger::finish(), dtn::security::KeyExchangeSession::putKey(), and store().

| void dtn::security::SecurityKeyManager::store | ( | const std::string & | prefix, |
| const dtn::security::SecurityKey & | key, | ||
| const std::string & | data | ||
| ) |
Store a security key in the prefixed path
Definition at line 232 of file SecurityKeyManager.cpp.
References dtn::security::SecurityKey::file, getKeyFile(), dtn::security::SecurityKey::getMetaFilename(), dtn::security::SecurityKey::reference, and dtn::security::SecurityKey::type.

| void dtn::security::SecurityKeyManager::store | ( | const dtn::security::SecurityKey & | key | ) |
Store a security key object in the standard key path
Definition at line 206 of file SecurityKeyManager.cpp.
References dtn::security::SecurityKey::file, and store().
