# GpgFrontend Project: src/core/function/KeyPackageOperator.h Source File

KeyPackageOperator.h
#ifndef GPGFRONTEND_KEYPACKAGEOPERATOR_H
#define GPGFRONTEND_KEYPACKAGEOPERATOR_H
#include "core/GpgFrontendCore.h"
#include "core/function/gpg/GpgKeyImportExporter.h"
namespace GpgFrontend {
class GPGFRONTEND_CORE_EXPORT KeyPackageOperator {
public:
static bool GeneratePassphrase(const std::filesystem::path &phrase_path,
std::string &phrase);
static std::string GenerateKeyPackageName();
static bool GenerateKeyPackage(const std::filesystem::path &key_package_path,
const std::string &key_package_name,
KeyIdArgsListPtr &key_ids, std::string &phrase,
bool secret);
static bool ImportKeyPackage(const std::filesystem::path &key_package_path,
const std::filesystem::path &phrase_path,
GpgFrontend::GpgImportInformation &import_info);
private:
static std::string generate_key_package_name() {
std::random_device rd_;
auto mt_ = std::mt19937(rd_());
std::uniform_int_distribution<int> dist(999, 99999);
auto file_string = boost::format("KeyPackage_%1%") % dist(mt_);
return file_string.str();
}
};
} // namespace GpgFrontend
#endif // GPGFRONTEND_KEYPACKAGEOPERATOR_H
GpgFrontend::GpgImportInformation
Definition: GpgKeyImportExporter.h:57
GpgFrontend::KeyPackageOperator
give the possibility to import or export a key package
Definition: KeyPackageOperator.h:41
GpgFrontend::KeyPackageOperator::generate_key_package_name
static std::string generate_key_package_name()
generate key package name
Definition: KeyPackageOperator.h:96
GpgFrontend
Definition: CoreCommonUtil.cpp:31