Module on_disk_manager

Module on_disk_manager 

Source
Expand description

A key info manager storing key triple to key info mapping on files on disk

The path where the mappings should be stored is configurable. Because of possible data races, there should not be two instances of this manager pointing to the same mapping folder at a time. Methods modifying the mapping will also block until the modifications are done on disk to be ensured to not lose mappings. Because application and key names can contain any UTF-8 characters, those strings are converted to base64 strings so that they can be used as filenames. Because of filenames limitations, some very long UTF-8 names might not be able to be represented as a filename and will fail. For example, for operating systems having a limit of 255 characters for filenames (Unix systems), names will be limited to 188 bytes of UTF-8 characters. For security reasons, only the PARSEC service should have the ability to modify these files.

Structs§

ApplicationNameDeprecated
String wrapper for app names
KeyTripleDeprecated
Should only be used internally to map KeyTriple to the new KeyIdentity for the on_disk_manager KeyInfoManager. Structure corresponds to a unique identifier of the key. It is used internally by the Key ID manager to refer to a key.
OnDiskKeyInfoManager
A key info manager storing key triple to key info mapping on files on disk
OnDiskKeyInfoManagerBuilder
OnDiskKeyInfoManager builder

Constants§

DEFAULT_MAPPINGS_PATH
Default path where the mapping files will be stored on disk
DIR_PERMISSION
Permissions for all directories under database directory Should only be visible to parsec user
FILE_PERMISSION
Permissions for all files under database directory Should only be visible to parsec user