GpgFrontend Project
A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.
|
Public Member Functions | |
DataObjectOperator (int channel=SingletonFunctionObject::GetDefaultChannel()) | |
DataObjectOperator constructor. More... | |
std::string | SaveDataObj (const std::string &_key, const nlohmann::json &value) |
std::optional< nlohmann::json > | GetDataObject (const std::string &_key) |
std::optional< nlohmann::json > | GetDataObjectByRef (const std::string &_ref) |
Public Member Functions inherited from GpgFrontend::SingletonFunctionObject< DataObjectOperator > | |
int | GetChannel () const |
Get the Channel object. More... | |
SingletonFunctionObject (DataObjectOperator &&)=delete | |
Construct a new Singleton Function Object object. | |
SingletonFunctionObject (const DataObjectOperator &)=delete | |
Construct a new Singleton Function Object object. | |
void | operator= (const DataObjectOperator &)=delete |
Private Member Functions | |
void | init_app_secure_key () |
init the secure key of application data object More... | |
Private Attributes | |
GlobalSettingStation & | global_setting_station_ |
GlobalSettingStation. More... | |
std::filesystem::path | app_secure_path_ |
Where sensitive information is stored. More... | |
std::filesystem::path | app_secure_key_path_ |
Where the key of data object is stored. More... | |
std::filesystem::path | app_data_objs_path_ |
std::random_device | rd_ |
Random device. | |
std::mt19937 | mt_ = std::mt19937(rd_()) |
Mersenne twister. | |
QByteArray | hash_key_ |
Hash key. | |
Additional Inherited Members | |
Static Public Member Functions inherited from GpgFrontend::SingletonFunctionObject< DataObjectOperator > | |
static DataObjectOperator & | GetInstance (int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL) |
Get the Instance object. More... | |
static DataObjectOperator & | CreateInstance (int channel, std::function< std::unique_ptr< DataObjectOperator >(void)> factory) |
Create a Instance object. More... | |
static DataObjectOperator & | CreateInstance (int channel, std::unique_ptr< DataObjectOperator > p_obj=nullptr) |
Create a Instance object. More... | |
static DataObjectOperator & | ReleaseChannel (int channel) |
static int | GetDefaultChannel () |
Get the Default Channel object. More... | |
Protected Member Functions inherited from GpgFrontend::SingletonFunctionObject< DataObjectOperator > | |
SingletonFunctionObject ()=default | |
Construct a new Singleton Function Object object. | |
SingletonFunctionObject (int channel) | |
Construct a new Singleton Function Object object. More... | |
virtual | ~SingletonFunctionObject ()=default |
Destroy the Singleton Function Object object. | |
void | SetChannel (int channel) |
Set the Channel object. More... | |
|
explicit |
DataObjectOperator constructor.
channel | channel |
References app_data_objs_path_, app_secure_key_path_, app_secure_path_, hash_key_, init_app_secure_key(), and GpgFrontend::FileOperator::ReadFileStd().
|
private |
init the secure key of application data object
Copyright (C) 2021 Saturneric
This file is part of GpgFrontend.
GpgFrontend is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
GpgFrontend is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with GpgFrontend. If not, see https://www.gnu.org/licenses/.
The initial version of the source code is inherited from the gpg4usb project, which is under GPL-3.0-or-later.
All the source code of GpgFrontend was modified and released by Saturnericeric@.nosp@m.bktu.nosp@m.s.com starting on May 12, 2021.
SPDX-License-Identifier: GPL-3.0-or-later
References app_secure_key_path_, GpgFrontend::SingletonFunctionObject< PassphraseGenerator >::GetInstance(), and GpgFrontend::FileOperator::WriteFileStd().
Referenced by DataObjectOperator().
|
private |
Where data object is stored
Referenced by DataObjectOperator().
|
private |
Where the key of data object is stored.
Referenced by DataObjectOperator(), and init_app_secure_key().
|
private |
Where sensitive information is stored.
Referenced by DataObjectOperator().
|
private |