Pages
API Documentation
On this page

SignOn::AbstractCryptoManager Class

Manages the credentials storage file system encryption. More...

  • Header: #include <SignOn/AbstractCryptoManager>
  • Inherits: QObject

List of all members, including inherited members

Public Functions

Signals

Protected Functions

Detailed Description

The API is modeled after a LUKS-based implementation.

Member Function Documentation

[explicit] AbstractCryptoManager::AbstractCryptoManager(QObject *parent = 0)

Constructs a AbstractCryptoManager object with the given parent.

[virtual noexcept] AbstractCryptoManager::~AbstractCryptoManager()

Destructor.

[virtual] bool AbstractCryptoManager::addEncryptionKey(const SignOn::Key &key, const SignOn::Key &existingKey)

Adds the encryption key to one of the available keyslots of the LUKS partition's header; existingKey is an already existing key.

Returns true if succeeded, false otherwise.

See also encryptionKeyInUse()

[virtual] QStringList AbstractCryptoManager::backupFiles() const

Returns the list of files which need to be backed up.

[virtual] bool AbstractCryptoManager::deleteFileSystem()

Deletes the encrypted file system. Returns true if successful, false otherwise.

Warning: Use this carefully, this will lead to data loss.

SignOn::Key AbstractCryptoManager::encryptionKey() const

Returns the encryption key in use.

See also setEncryptionKey()

[virtual] bool AbstractCryptoManager::encryptionKeyInUse(const SignOn::Key &key)

Returns whether key is occupying a keyslot in the encrypted file system.

Note: If the file system is not mounted and the encryption key can access it, this method will cause the file system to be mounted.

bool AbstractCryptoManager::fileSystemIsMounted() const

Returns true if the file system is mounted, false otherwise.

bool AbstractCryptoManager::fileSystemIsSetup() const

Returns true if the file system is setup, false otherwise.

[virtual] QString AbstractCryptoManager::fileSystemMountPath() const

Returns the path of the mounted file system.

[signal] void AbstractCryptoManager::fileSystemMounted()

The encrypted file system was mounted.

See also setFileSystemMounted()

[signal] void AbstractCryptoManager::fileSystemUnmounting()

The encrypted file system is about to be unmounted.

[virtual] bool AbstractCryptoManager::initialize(const QVariantMap &configuration)

* Initializes the object with the given configuration, a dictionary of * configuration options, dependent on the specific crypto-manager * implementation. * * Returns true if the configuration is valid.

[virtual] bool AbstractCryptoManager::mountFileSystem()

Mounts the encrypted file system. Returns true if successful, false otherwise.

[virtual] bool AbstractCryptoManager::removeEncryptionKey(const SignOn::Key &key, const SignOn::Key &remainingKey)

* Releases the keyslot key uses in the LUKS partition's header; * remainingKey is another valid key. * *

Note: The system cannot remain keyless. * * Returns true if succeeded, false otherwise.

void AbstractCryptoManager::setEncryptionKey(const SignOn::Key &key)

Sets the encryption key to key, the encrypted file system key.

See also encryptionKey()

[protected] void AbstractCryptoManager::setFileSystemMounted(bool isMounted)

Implementations record whether the file system isMounted.

See also fileSystemMounted()

[protected] void AbstractCryptoManager::setFileSystemSetup(bool isSetup)

Implementations record whether the file system isSetup.

[virtual] bool AbstractCryptoManager::setupFileSystem()

Sets up an encrypted file system. This method is to be called only at the file system creation/formatting. Use mountFileSystem() on subsequent uses. This method handles also the mounting so when using it, a call to mountFileSystem() is not necessary.

Returns true if successful, false otherwise.

Warning: This method might format the credentials file system, use carefully.

[virtual] bool AbstractCryptoManager::unmountFileSystem()

Unmounts the encrypted file system. Returns true if successful, false otherwise.

We use cookies to personalize content and to analyze our traffic. Please decide if you are willing to accept cookies from our website.